Skip to content

Commit cb5bdfe

Browse files
Build script for windows
1 parent 2367dca commit cb5bdfe

16 files changed

+59751
-12353
lines changed

Makefile.in

Lines changed: 40 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: Makefile.in,v 1.325 2011/08/05 20:15:18 djm Exp $
1+
# $Id: Makefile.in,v 1.365 2014/08/30 06:23:07 djm Exp $
22

33
# uncomment if you run a non bourne compatable shell. Ie. csh
44
#SHELL = @SH@
@@ -44,7 +44,7 @@ CC=@CC@
4444
LD=@LD@
4545
CFLAGS=@CFLAGS@
4646
CPPFLAGS=-I. -I$(srcdir) @CPPFLAGS@ $(PATHS) @DEFS@
47-
LIBS=@LIBS@ -lbcrypt
47+
LIBS=@LIBS@
4848
K5LIBS=@K5LIBS@
4949
GSSLIBS=@GSSLIBS@
5050
SSHLIBS=@SSHLIBS@
@@ -58,11 +58,11 @@ PERL=@PERL@
5858
SED=@SED@
5959
ENT=@ENT@
6060
XAUTH_PATH=@XAUTH_PATH@
61-
LDFLAGS=-L. -Lopenbsd-compat/ -Lcontrib/win32/win32compat @LDFLAGS@ -L/lib/w32api
61+
LDFLAGS=-L. -Lopenbsd-compat/ @LDFLAGS@
6262
EXEEXT=@EXEEXT@
6363
MANFMT=@MANFMT@
6464

65-
TARGETS=ssh$(EXEEXT) sshd$(EXEEXT) ssh-add$(EXEEXT) ssh-keygen$(EXEEXT) ssh-keyscan${EXEEXT} ssh-keysign${EXEEXT} ssh-pkcs11-helper$(EXEEXT) ssh-agent$(EXEEXT) sftp-server$(EXEEXT) sftp$(EXEEXT)
65+
TARGETS=ssh$(EXEEXT) sshd$(EXEEXT) ssh-add$(EXEEXT) ssh-keygen$(EXEEXT) ssh-keyscan${EXEEXT} ssh-keysign${EXEEXT} ssh-pkcs11-helper$(EXEEXT) ssh-agent$(EXEEXT) scp$(EXEEXT) sftp-server$(EXEEXT) sftp$(EXEEXT)
6666

6767
LIBOPENSSH_OBJS=\
6868
ssh_api.o \
@@ -87,12 +87,11 @@ LIBSSH_OBJS=${LIBOPENSSH_OBJS} \
8787
msg.o progressmeter.o dns.o entropy.o gss-genr.o umac.o umac128.o \
8888
ssh-pkcs11.o smult_curve25519_ref.o \
8989
poly1305.o chacha.o cipher-chachapoly.o \
90-
ssh-ed25519.o digest-libc.o hmac.o \
90+
ssh-ed25519.o digest-openssl.o digest-libc.o hmac.o \
9191
sc25519.o ge25519.o fe25519.o ed25519.o verify.o hash.o blocks.o \
9292
kex.o kexdh.o kexgex.o kexecdh.o kexc25519.o \
9393
kexdhc.o kexgexc.o kexecdhc.o kexc25519c.o \
94-
kexdhs.o kexgexs.o kexecdhs.o kexc25519s.o \
95-
kerberos-sspi.o schnorr.o jpake.o
94+
kexdhs.o kexgexs.o kexecdhs.o kexc25519s.o
9695

9796
SSHOBJS= ssh.o readconf.o clientloop.o sshtty.o \
9897
sshconnect.o sshconnect1.o sshconnect2.o mux.o \
@@ -111,8 +110,7 @@ SSHDOBJS=sshd.o auth-rhosts.o auth-passwd.o auth-rsa.o auth-rh-rsa.o \
111110
sftp-server.o sftp-common.o \
112111
roaming_common.o roaming_serv.o \
113112
sandbox-null.o sandbox-rlimit.o sandbox-systrace.o sandbox-darwin.o \
114-
sandbox-seccomp-filter.o sandbox-capsicum.o \
115-
pam.o kexdhs.o kexgexs.o kexecdhs.o
113+
sandbox-seccomp-filter.o sandbox-capsicum.o
116114

117115
MANPAGES = moduli.5.out scp.1.out ssh-add.1.out ssh-agent.1.out ssh-keygen.1.out ssh-keyscan.1.out ssh.1.out sshd.8.out sftp-server.8.out sftp.1.out ssh-keysign.8.out ssh-pkcs11-helper.8.out sshd_config.5.out ssh_config.5.out
118116
MANPAGES_IN = moduli.5 scp.1 ssh-add.1 ssh-agent.1 ssh-keygen.1 ssh-keyscan.1 ssh.1 sshd.8 sftp-server.8 sftp.1 ssh-keysign.8 ssh-pkcs11-helper.8 sshd_config.5 ssh_config.5
@@ -153,10 +151,6 @@ $(SSHDOBJS): Makefile.in config.h
153151
.c.o:
154152
$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
155153

156-
LIBWIN32COMPAT=contrib/win32/win32compat/@LIBWIN32COMPAT@
157-
$(LIBWIN32COMPAT): always
158-
(cd contrib/win32/win32compat && $(MAKE))
159-
160154
LIBCOMPAT=openbsd-compat/libopenbsd-compat.a
161155
$(LIBCOMPAT): always
162156
(cd openbsd-compat && $(MAKE))
@@ -166,39 +160,42 @@ libssh.a: $(LIBSSH_OBJS)
166160
$(AR) rv $@ $(LIBSSH_OBJS)
167161
$(RANLIB) $@
168162

169-
ssh$(EXEEXT): $(LIBCOMPAT) libssh.a @LIBWIN32COMPATDEPEND@ $(SSHOBJS)
170-
$(LD) -o $@ $(SSHOBJS) $(LDFLAGS) ./libssh.a -lopenbsd-compat $(SSHLIBS) @LINKWIN32COMPAT@ $(LIBS)
163+
ssh$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHOBJS)
164+
$(LD) -o $@ $(SSHOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHLIBS) $(LIBS) $(GSSLIBS)
165+
166+
sshd$(EXEEXT): libssh.a $(LIBCOMPAT) $(SSHDOBJS)
167+
$(LD) -o $@ $(SSHDOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHDLIBS) $(LIBS) $(GSSLIBS) $(K5LIBS)
171168

172-
sshd$(EXEEXT): libssh.a @LIBWIN32COMPATDEPEND@ $(LIBCOMPAT) $(SSHDOBJS)
173-
$(LD) -o $@ $(SSHDOBJS) $(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(SSHDLIBS) $(LIBS)
169+
scp$(EXEEXT): $(LIBCOMPAT) libssh.a scp.o progressmeter.o
170+
$(LD) -o $@ scp.o progressmeter.o bufaux.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS)
174171

175-
ssh-add$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-add.o @LIBWIN32COMPATDEPEND@
176-
$(LD) -o $@ ssh-add.o $(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
172+
ssh-add$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-add.o
173+
$(LD) -o $@ ssh-add.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS)
177174

178-
ssh-agent$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-agent.o ssh-pkcs11-client.o @LIBWIN32COMPATDEPEND@
179-
$(LD) -o $@ ssh-agent.o ssh-pkcs11-client.o $(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
175+
ssh-agent$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-agent.o ssh-pkcs11-client.o
176+
$(LD) -o $@ ssh-agent.o ssh-pkcs11-client.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS)
180177

181-
ssh-keygen$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keygen.o @LIBWIN32COMPATDEPEND@
182-
$(LD) -o $@ ssh-keygen.o $(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
178+
ssh-keygen$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keygen.o
179+
$(LD) -o $@ ssh-keygen.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS)
183180

184-
ssh-keysign$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keysign.o roaming_dummy.o readconf.o @LIBWIN32COMPATDEPEND@
185-
$(LD) -o $@ ssh-keysign.o readconf.o roaming_dummy.o $(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
181+
ssh-keysign$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keysign.o roaming_dummy.o readconf.o
182+
$(LD) -o $@ ssh-keysign.o readconf.o roaming_dummy.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS)
186183

187-
ssh-pkcs11-helper$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-pkcs11-helper.o ssh-pkcs11.o @LIBWIN32COMPATDEPEND@
188-
$(LD) -o $@ ssh-pkcs11-helper.o ssh-pkcs11.o $(LDFLAGS) ./libssh.a -lopenbsd-compat -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
184+
ssh-pkcs11-helper$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-pkcs11-helper.o ssh-pkcs11.o
185+
$(LD) -o $@ ssh-pkcs11-helper.o ssh-pkcs11.o $(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS)
189186

190-
ssh-keyscan$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keyscan.o roaming_dummy.o @LIBWIN32COMPATDEPEND@
191-
$(LD) -o $@ ssh-keyscan.o roaming_dummy.o $(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
187+
ssh-keyscan$(EXEEXT): $(LIBCOMPAT) libssh.a ssh-keyscan.o roaming_dummy.o
188+
$(LD) -o $@ ssh-keyscan.o roaming_dummy.o $(LDFLAGS) -lssh -lopenbsd-compat -lssh $(LIBS)
192189

193-
sftp-server$(EXEEXT): $(LIBCOMPAT) libssh.a sftp.o sftp-common.o sftp-server.o sftp-server-main.o @LIBWIN32COMPATDEPEND@
194-
$(LD) -o $@ sftp-server.o sftp-common.o sftp-server-main.o $(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
190+
sftp-server$(EXEEXT): $(LIBCOMPAT) libssh.a sftp.o sftp-common.o sftp-server.o sftp-server-main.o
191+
$(LD) -o $@ sftp-server.o sftp-common.o sftp-server-main.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS)
195192

196-
sftp$(EXEEXT): $(LIBCOMPAT) libssh.a sftp.o sftp-client.o sftp-common.o sftp-glob.o progressmeter.o @LIBWIN32COMPATDEPEND@
197-
$(LD) -o $@ progressmeter.o sftp.o sftp-client.o sftp-common.o sftp-glob.o $(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS) $(LIBEDIT)
193+
sftp$(EXEEXT): $(LIBCOMPAT) libssh.a sftp.o sftp-client.o sftp-common.o sftp-glob.o progressmeter.o
194+
$(LD) -o $@ progressmeter.o sftp.o sftp-client.o sftp-common.o sftp-glob.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) $(LIBEDIT)
198195

199196
# test driver for the loginrec code - not built by default
200-
logintest: logintest.o $(LIBCOMPAT) libssh.a loginrec.o @LIBWIN32COMPATDEPEND@
201-
$(LD) -o $@ logintest.o $(LDFLAGS) loginrec.o -lopenbsd-compat ./libssh.a @LINKWIN32COMPAT@ $(LIBS)
197+
logintest: logintest.o $(LIBCOMPAT) libssh.a loginrec.o
198+
$(LD) -o $@ logintest.o $(LDFLAGS) loginrec.o -lopenbsd-compat -lssh $(LIBS)
202199

203200
$(MANPAGES): $(MANPAGES_IN)
204201
if test "$(MANTYPE)" = "cat"; then \
@@ -244,9 +241,6 @@ clean: regressclean
244241
rm -f regress/unittests/kex/*.o
245242
rm -f regress/unittests/kex/test_kex
246243
(cd openbsd-compat && $(MAKE) clean)
247-
if test -f contrib/win32/win32compat/Makefile ; then \
248-
(cd contrib/win32/win32compat && $(MAKE) clean) \
249-
fi
250244

251245
distclean: regressclean
252246
rm -f *.o *.a $(TARGETS) logintest config.cache config.log
@@ -267,9 +261,6 @@ distclean: regressclean
267261
rm -f regress/unittests/kex/*.o
268262
rm -f regress/unittests/kex/test_kex
269263
(cd openbsd-compat && $(MAKE) distclean)
270-
if test -f contrib/win32/win32compat/Makefile ; then \
271-
(cd contrib/win32/win32compat && $(MAKE) distclean) \
272-
fi
273264
if test -d pkg ; then \
274265
rm -fr pkg ; \
275266
fi
@@ -461,15 +452,15 @@ regress-prep:
461452

462453
regress/modpipe$(EXEEXT): $(srcdir)/regress/modpipe.c
463454
$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $? \
464-
$(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
455+
$(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS)
465456

466457
regress/setuid-allowed$(EXEEXT): $(srcdir)/regress/setuid-allowed.c
467458
$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $? \
468-
$(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
459+
$(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS)
469460

470461
regress/netcat$(EXEEXT): $(srcdir)/regress/netcat.c
471462
$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $? \
472-
$(LDFLAGS) ./libssh.a -lopenbsd-compat @LINKWIN32COMPAT@ $(LIBS)
463+
$(LDFLAGS) -lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS)
473464

474465
UNITTESTS_TEST_HELPER_OBJS=\
475466
regress/unittests/test_helper/test_helper.o \
@@ -493,7 +484,7 @@ regress/unittests/sshbuf/test_sshbuf$(EXEEXT): ${UNITTESTS_TEST_SSHBUF_OBJS} \
493484
regress/unittests/test_helper/libtest_helper.a libssh.a
494485
$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_SSHBUF_OBJS) \
495486
regress/unittests/test_helper/libtest_helper.a \
496-
./libssh.a -lopenbsd-compat -lwin32compat $(LIBS)
487+
-lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS)
497488

498489
UNITTESTS_TEST_SSHKEY_OBJS=\
499490
regress/unittests/sshkey/test_fuzz.o \
@@ -506,7 +497,7 @@ regress/unittests/sshkey/test_sshkey$(EXEEXT): ${UNITTESTS_TEST_SSHKEY_OBJS} \
506497
regress/unittests/test_helper/libtest_helper.a libssh.a
507498
$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_SSHKEY_OBJS) \
508499
regress/unittests/test_helper/libtest_helper.a \
509-
./libssh.a -lopenbsd-compat -lwin32compat $(LIBS)
500+
-lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS)
510501

511502
UNITTESTS_TEST_BITMAP_OBJS=\
512503
regress/unittests/bitmap/tests.o
@@ -515,7 +506,7 @@ regress/unittests/bitmap/test_bitmap$(EXEEXT): ${UNITTESTS_TEST_BITMAP_OBJS} \
515506
regress/unittests/test_helper/libtest_helper.a libssh.a
516507
$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_BITMAP_OBJS) \
517508
regress/unittests/test_helper/libtest_helper.a \
518-
./libssh.a -lopenbsd-compat -lwin32compat $(LIBS)
509+
-lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS)
519510

520511
UNITTESTS_TEST_KEX_OBJS=\
521512
regress/unittests/kex/tests.o \
@@ -526,7 +517,7 @@ regress/unittests/kex/test_kex$(EXEEXT): ${UNITTESTS_TEST_KEX_OBJS} \
526517
regress/unittests/test_helper/libtest_helper.a libssh.a
527518
$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_KEX_OBJS) \
528519
regress/unittests/test_helper/libtest_helper.a \
529-
./libssh.a -lopenbsd-compat -lwin32compat $(LIBS)
520+
-lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS)
530521

531522
UNITTESTS_TEST_HOSTKEYS_OBJS=\
532523
regress/unittests/hostkeys/tests.o \
@@ -537,7 +528,7 @@ regress/unittests/hostkeys/test_hostkeys$(EXEEXT): \
537528
regress/unittests/test_helper/libtest_helper.a libssh.a
538529
$(LD) -o $@ $(LDFLAGS) $(UNITTESTS_TEST_HOSTKEYS_OBJS) \
539530
regress/unittests/test_helper/libtest_helper.a \
540-
./libssh.a -lopenbsd-compat -lwin32compat $(LIBS)
531+
-lssh -lopenbsd-compat -lssh -lopenbsd-compat $(LIBS)
541532

542533
REGRESS_BINARIES=\
543534
regress/modpipe$(EXEEXT) \

0 commit comments

Comments
 (0)