LINUX.ORG.RU

История изменений

Исправление pavlick, (текущая версия) :

По поводу совпадений: чисто для личного использования написал небольшой скрипт:

#!/bin/bash
# instcol
path1=$(cd $1; pwd)
path2=$(cd $2; pwd)
echo -e "path1 = ${path1}\npath2 = ${path2}"
pushd ${path1}
find -L -true | sort > /tmp/instcol_1
pushd ${path2}
find -L -true | sort > /tmp/instcol_2
popd && popd
echo "NAME COLLISIONS"
comm -12 /tmp/instcol_1 /tmp/instcol_2

Ну и пример:
#Makefile
main: ${objects}
libm.a: ${objects}
install : main libm.a
        ${INSTALL_PROGRAM} -t ${DESTDIR}${bindir} main
        ${INSTALL_DATA} -t ${DESTDIR}${libdir} libm.a

# в /usr/local ешё ничего не ставили
$ make DESTDIR=./temp install
$ instcol ./temp/usr/local/ /usr/local/
path1 = /home/pavlick/ud/test/q/build/temp/usr/local
path2 = /usr/local
~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
/usr/local ~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
~/ud/test/q/build
NAME COLLISIONS
.
./bin
./lib

$ sudo make install
$ instcol ./temp/usr/local/ /usr/local/
path1 = /home/pavlick/ud/test/q/build/temp/usr/local
path2 = /usr/local
~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
/usr/local ~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
~/ud/test/q/build
NAME COLLISIONS
.
./bin
./bin/main
./lib
./lib/libm.a
А кто не хочет/не может отслеживать совпадения имён, то выход наверное один - ставить в /opt

Исходная версия pavlick, :

По поводу совпадений: чисто для личного использования написал небольшой скрипт:

#!/bin/bash
# instcol
path1=$(cd $1; pwd)
path2=$(cd $2; pwd)
echo -e "path1 = ${path1}\npath2 = ${path2}"
pushd ${path1}
find -L -true | sort > /tmp/instcol_1
pushd ${path2}
find -L -true | sort > /tmp/instcol_2
popd && popd
echo "NAME COLLISIONS"
comm -12 /tmp/instcol_1 /tmp/instcol_2

Ну и пример:
#Makefile
main: ${objects}
libm.a: ${objects}
install : main libm.a
        ${INSTALL_PROGRAM} -t ${DESTDIR}${bindir} main
        ${INSTALL_DATA} -t ${DESTDIR}${libdir} libm.a

# в /bin/local ешё ничего не ставили
$ make DESTDIR=./temp install
$ instcol ./temp/usr/local/ /usr/local/
path1 = /home/pavlick/ud/test/q/build/temp/usr/local
path2 = /usr/local
~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
/usr/local ~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
~/ud/test/q/build
NAME COLLISIONS
.
./bin
./lib

$ sudo make install
$ instcol ./temp/usr/local/ /usr/local/
path1 = /home/pavlick/ud/test/q/build/temp/usr/local
path2 = /usr/local
~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
/usr/local ~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
~/ud/test/q/build/temp/usr/local ~/ud/test/q/build
~/ud/test/q/build
NAME COLLISIONS
.
./bin
./bin/main
./lib
./lib/libm.a
А кто не хочет/не может отслеживать совпадения имён, то выход наверное один - ставить в /opt