common Makefile. install_easy : compile if bins not found

This commit is contained in:
bolvan 2019-05-22 10:08:51 +03:00
parent eaf0edde3f
commit 90454f386b
4 changed files with 31 additions and 4 deletions

17
Makefile Normal file
View File

@ -0,0 +1,17 @@
DIRS := nfq tpws ip2net mdig
TGT := binaries/my
all: clean
mkdir -p "$(@D)/$(TGT)"; \
for dir in $(DIRS); do \
$(MAKE) -C "$(@D)/$$dir" || exit 1; \
done ; \
for exe in $$(find ${DIRS} -type f -executable); do \
mv -f "$(@D)/$$exe" "$(@D)/${TGT}" ; \
ln -fs "../${TGT}/$$(basename "$$exe")" "$$exe" ; \
done \
clean:
for dir in $(DIRS); do \
$(MAKE) -C "$(@D)/$$dir" clean; \
done

View File

@ -377,7 +377,7 @@ IFACE_WAN=eth1
Запустить автоинсталятор бинариков. Он сам определит рабочую архитектуру и настроит все бинарики. Запустить автоинсталятор бинариков. Он сам определит рабочую архитектуру и настроит все бинарики.
/opt/zapret/install_bin.sh /opt/zapret/install_bin.sh
АЛЬТЕРНАТИВА : зайти в tpws,nfq,ip2net,mdig, в каждом выполнить make. Получите динамические бинарики под вашу ось. АЛЬТЕРНАТИВА : make -C /opt/zapret. Получите динамические бинарики под вашу ось.
Для сборки требуются dev пакеты : zlib1g-dev libcap-dev libnetfilter-queue-dev Для сборки требуются dev пакеты : zlib1g-dev libcap-dev libnetfilter-queue-dev
Настроить параметры согласно разделу "Выбор параметров". Настроить параметры согласно разделу "Выбор параметров".

View File

@ -20,11 +20,12 @@ ccp()
#cp -f "$BINDIR/$1" "$EXEDIR/$2" && echo copying : "$BINDIR/$1" =\> "$EXEDIR/$2" #cp -f "$BINDIR/$1" "$EXEDIR/$2" && echo copying : "$BINDIR/$1" =\> "$EXEDIR/$2"
} }
ARCHLIST="aarch64 armhf mips64r2-msb mips32r1-lsb mips32r1-msb ppc x86_64 x86" ARCHLIST="my aarch64 armhf mips64r2-msb mips32r1-lsb mips32r1-msb ppc x86_64 x86"
if [ "$1" = "getarch" ]; then if [ "$1" = "getarch" ]; then
for arch in $ARCHLIST for arch in $ARCHLIST
do do
[ -d "$BINDIR/$arch" ] || continue
if check_dir $arch; then if check_dir $arch; then
echo $arch echo $arch
exit 0 exit 0
@ -33,6 +34,7 @@ if [ "$1" = "getarch" ]; then
else else
for arch in $ARCHLIST for arch in $ARCHLIST
do do
[ -d "$BINDIR/$arch" ] || continue
if check_dir $arch; then if check_dir $arch; then
echo $arch is OK echo $arch is OK
echo installing binaries ... echo installing binaries ...
@ -47,4 +49,4 @@ else
done done
fi fi
false exit 1

View File

@ -87,8 +87,16 @@ call_install_bin()
{ {
"$EXEDIR/install_bin.sh" $1 || { "$EXEDIR/install_bin.sh" $1 || {
echo binaries compatible with your system not found echo binaries compatible with your system not found
if exists make; then
echo trying to compile
make -C "$EXEDIR" || {
echo could not compile
exitp 8 exitp 8
} }
else
exitp 8
fi
}
} }
get_bin_arch() get_bin_arch()
{ {