mirror of
https://github.com/clearml/dropbear
synced 2025-06-14 10:18:53 +00:00
do the symlinks for multi-binary compiles
--HG-- extra : convert_revision : 1a0ab43c58435f03b261ef322d24fbb5c91e8abd
This commit is contained in:
parent
eb1f647c9c
commit
6ec8183750
55
Makefile.in
55
Makefile.in
@ -3,11 +3,10 @@
|
|||||||
# invocation:
|
# invocation:
|
||||||
# make PROGRAMS="dropbear dbclient scp" MULTI=1 STATIC=1 SCPPROGRESS=1
|
# make PROGRAMS="dropbear dbclient scp" MULTI=1 STATIC=1 SCPPROGRESS=1
|
||||||
#
|
#
|
||||||
# to make a single multiple statically linked binary "staticdropbearmulti",
|
# to make a multiple-program statically linked binary "staticdropbearmulti".
|
||||||
# which includes dropbear, scp and dbclient functionality, and includes the
|
# This example will include dropbear, scp, dropbearkey, dropbearconvert, and
|
||||||
# progress-bar functionality in scp. Hopefully that seems intuitive.
|
# dbclient functionality, and includes the progress-bar functionality in scp.
|
||||||
|
# Hopefully that seems intuitive.
|
||||||
# This makefile is quite evil.
|
|
||||||
|
|
||||||
ifndef PROGRAMS
|
ifndef PROGRAMS
|
||||||
PROGRAMS=dropbear dbclient dropbearkey dropbearconvert
|
PROGRAMS=dropbear dbclient dropbearkey dropbearconvert
|
||||||
@ -20,7 +19,7 @@ COMMONOBJS=dbutil.o buffer.o \
|
|||||||
dss.o bignum.o \
|
dss.o bignum.o \
|
||||||
signkey.o rsa.o random.o \
|
signkey.o rsa.o random.o \
|
||||||
queue.o \
|
queue.o \
|
||||||
atomicio.o compat.o
|
atomicio.o compat.o fake-rfc2553.o
|
||||||
|
|
||||||
SVROBJS=svr-kex.o svr-algo.o svr-auth.o sshpty.o \
|
SVROBJS=svr-kex.o svr-algo.o svr-auth.o sshpty.o \
|
||||||
svr-authpasswd.o svr-authpubkey.o svr-session.o svr-service.o \
|
svr-authpasswd.o svr-authpubkey.o svr-session.o svr-service.o \
|
||||||
@ -34,7 +33,7 @@ CLIOBJS=cli-algo.o cli-main.o cli-auth.o cli-authpasswd.o cli-kex.o \
|
|||||||
CLISVROBJS=common-session.o packet.o common-algo.o common-kex.o \
|
CLISVROBJS=common-session.o packet.o common-algo.o common-kex.o \
|
||||||
common-channel.o common-chansession.o termcodes.o loginrec.o \
|
common-channel.o common-chansession.o termcodes.o loginrec.o \
|
||||||
tcp-accept.o listener.o process-packet.o \
|
tcp-accept.o listener.o process-packet.o \
|
||||||
common-runopts.o fake-rfc2553.o
|
common-runopts.o
|
||||||
|
|
||||||
KEYOBJS=dropbearkey.o gendss.o genrsa.o
|
KEYOBJS=dropbearkey.o gendss.o genrsa.o
|
||||||
|
|
||||||
@ -115,25 +114,36 @@ all: $(TARGETS)
|
|||||||
strip: $(TARGETS)
|
strip: $(TARGETS)
|
||||||
$(STRIP) $(addsuffix $(EXEEXT), $(addprefix $(SPREFIX), $(TARGETS)))
|
$(STRIP) $(addsuffix $(EXEEXT), $(addprefix $(SPREFIX), $(TARGETS)))
|
||||||
|
|
||||||
install: $(addprefix install, $(TARGETS))
|
install: $(addprefix inst, $(TARGETS))
|
||||||
|
|
||||||
|
installdropbearmulti: insdbmulti $(addprefix insmulti, $(PROGRAMS))
|
||||||
|
|
||||||
|
insdbmulti: dropbearmulti
|
||||||
|
$(INSTALL) -d -m 755 $(DESTDIR)$(bindir)
|
||||||
|
$(INSTALL) -m 755 $(SPREFIX)dropbearmulti$(EXEEXT) $(DESTDIR)$(bindir)
|
||||||
|
-chown root $(DESTDIR)$(bindir)/$(SPREFIX)dropbearmulti$(EXEEXT)
|
||||||
|
-chgrp 0 $(DESTDIR)$(bindir)/$(SPREFIX)dropbearmulti$(EXEEXT)
|
||||||
|
|
||||||
|
insmultidropbear: dropbearmulti
|
||||||
|
-rm -f $(DESTDIR)$(sbindir)/$(SPREFIX)dropbear$(EXEEXT)
|
||||||
|
-ln -s $(DESTDIR)$(bindir)/$(SPREFIX)dropbearmulti$(EXEEXT) $(DESTDIR)$(sbindir)/$(SPREFIX)dropbear$(EXEEXT)
|
||||||
|
|
||||||
|
insmulti%: dropbearmulti
|
||||||
|
-rm -f $(DESTDIR)$(bindir)/$(SPREFIX)$*$(EXEEXT)
|
||||||
|
-ln -s $(DESTDIR)$(bindir)/$(SPREFIX)dropbearmulti$(EXEEXT) $(DESTDIR)$(bindir)/$(SPREFIX)$*$(EXEEXT)
|
||||||
|
|
||||||
# dropbear should go in sbin, so it needs a seperate rule
|
# dropbear should go in sbin, so it needs a seperate rule
|
||||||
installdropbear: dropbear
|
instdropbear: dropbear
|
||||||
$(INSTALL) -d -m 755 $(DESTDIR)$(sbindir)
|
$(INSTALL) -d -m 755 $(DESTDIR)$(sbindir)
|
||||||
$(INSTALL) -m 755 $(SPREFIX)dropbear$(EXEEXT) $(DESTDIR)$(sbindir)
|
$(INSTALL) -m 755 $(SPREFIX)dropbear$(EXEEXT) $(DESTDIR)$(sbindir)
|
||||||
-chown root $(DESTDIR)$(sbindir)/$(SPREFIX)dropbear$(EXEEXT)
|
-chown root $(DESTDIR)$(sbindir)/$(SPREFIX)dropbear$(EXEEXT)
|
||||||
-chgrp 0 $(DESTDIR)$(sbindir)/$(SPREFIX)dropbear$(EXEEXT)
|
-chgrp 0 $(DESTDIR)$(sbindir)/$(SPREFIX)dropbear$(EXEEXT)
|
||||||
|
|
||||||
install%: $*
|
inst%: $*
|
||||||
$(INSTALL) -d -m 755 $(DESTDIR)$(bindir)
|
$(INSTALL) -d -m 755 $(DESTDIR)$(bindir)
|
||||||
$(INSTALL) -m 755 $(SPREFIX)$*$(EXEEXT) $(DESTDIR)$(bindir)
|
$(INSTALL) -m 755 $(SPREFIX)$*$(EXEEXT) $(DESTDIR)$(bindir)
|
||||||
-chown root $(DESTDIR)$(bindir)/$(SPREFIX)$*$(EXEEXT)
|
-chown root $(DESTDIR)$(bindir)/$(SPREFIX)$*$(EXEEXT)
|
||||||
-chgrp 0 $(DESTDIR)$(bindir)/$(SPREFIX)$*$(EXEEXT)
|
-chgrp 0 $(DESTDIR)$(bindir)/$(SPREFIX)$*$(EXEEXT)
|
||||||
ifeq ($(MULTI), 1)
|
|
||||||
@echo
|
|
||||||
@echo "You must manually create links for $*"
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# for some reason the rule further down doesn't like $($@objs) as a prereq.
|
# for some reason the rule further down doesn't like $($@objs) as a prereq.
|
||||||
@ -158,11 +168,16 @@ ifeq ($(MULTI),1)
|
|||||||
CFLAGS+=$(addprefix -DDBMULTI_, $(PROGRAMS)) -DDROPBEAR_MULTI
|
CFLAGS+=$(addprefix -DDBMULTI_, $(PROGRAMS)) -DDROPBEAR_MULTI
|
||||||
endif
|
endif
|
||||||
|
|
||||||
dropbearmulti: $(HEADERS) $(MULTIOBJS) $(LTC) $(LTM) Makefile
|
dropbearmulti: multilink
|
||||||
$(LD) $(LDFLAGS) -o $(SPREFIX)$@$(EXEEXT) $(MULTIOBJS) $(LIBS)
|
|
||||||
@echo
|
multibinary: $(HEADERS) $(MULTIOBJS) $(LTC) $(LTM) Makefile
|
||||||
@echo "You should now create symlinks to the programs you have included"
|
$(LD) $(LDFLAGS) -o $(SPREFIX)dropbearmulti$(EXEEXT) $(MULTIOBJS) $(LIBS)
|
||||||
@echo "ie 'ln -s dropbearmulti dropbear'"
|
|
||||||
|
multilink: multibinary $(addprefix link, $(PROGRAMS))
|
||||||
|
|
||||||
|
link%:
|
||||||
|
-rm -f $(SPREFIX)$*$(EXEEXT)
|
||||||
|
-ln -s $(SPREFIX)dropbearmulti$(EXEEXT) $(SPREFIX)$*$(EXEEXT)
|
||||||
|
|
||||||
$(LTC): options.h
|
$(LTC): options.h
|
||||||
cd libtomcrypt && $(MAKE) clean && $(MAKE)
|
cd libtomcrypt && $(MAKE) clean && $(MAKE)
|
||||||
|
Loading…
Reference in New Issue
Block a user