1#-----------------------------------------------------------------------------
2#
3# NcFTP makefile for the platform @OS@, on the host @host@.
4#
5#-----------------------------------------------------------------------------
6
7VER=@NCFTP_VERSION@
8@SET_MAKE@
9CC=@CC@
10CFLAGS=@CFLAGS@@NDEFS@
11#CC=gcc
12#CFLAGS=-O2 -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wshadow -Wbad-function-cast -Wwrite-strings -Wconversion
13STRIPFLAG=@SFLAG@
14STRIP=@STRIP@
15prefix=@prefix@
16exec_prefix=@exec_prefix@
17BINDIR=@bindir@
18SYSCONFDIR=@sysconfdir@
19mandir=@mandir@
20INSTALL=@INSTALL@
21INSTALL_PROGRAM=@INSTALL_PROGRAM@
22INSTALL_DATA=@INSTALL_DATA@
23SHELL=/bin/sh
24
25all: progs
26	-@/bin/ls -l bin
27	-@echo 'Done.'
28	-@echo
29	-@echo '** Please report any problems to http://www.NcFTP.com/contact/ **'
30
31libs:
32	@( cd ./Strn ; $(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)" )
33	@( cd ./sio ; $(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)" )
34	@( cd ./libncftp ; $(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)" )
35
36progs: libs
37	@test -d bin  || mkdir bin
38	@( cd ./ncftp ; $(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)" "STRIP=$(STRIP)" )
39	@( cd ./sh_util ; $(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)" "STRIP=$(STRIP)" )
40	@( cd ./vis ; $(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)" "STRIP=$(STRIP)" )
41
42install:
43	@( cd ./ncftp ; $(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)" )
44	@( cd ./sh_util ; $(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)" )
45	@( cd ./vis ; $(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)" )
46	-@test -z "$(DESTDIR)" || mkdir -p "$(DESTDIR)" 2>/dev/null
47	-mkdir -p "$(DESTDIR)$(prefix)" "$(DESTDIR)$(BINDIR)" "$(DESTDIR)$(SYSCONFDIR)" "$(DESTDIR)$(mandir)" "$(DESTDIR)$(mandir)/man1" 2>/dev/null
48	-@echo '..... Installing the programs .....'
49	$(INSTALL_PROGRAM) bin/ncftp@EXEEXT@ "$(DESTDIR)$(BINDIR)/ncftp@EXEEXT@"
50	$(INSTALL_PROGRAM) bin/ncftpget@EXEEXT@ "$(DESTDIR)$(BINDIR)/ncftpget@EXEEXT@"
51	$(INSTALL_PROGRAM) bin/ncftpput@EXEEXT@ "$(DESTDIR)$(BINDIR)/ncftpput@EXEEXT@"
52	$(INSTALL_PROGRAM) bin/ncftpls@EXEEXT@ "$(DESTDIR)$(BINDIR)/ncftpls@EXEEXT@"
53	$(INSTALL_PROGRAM) bin/ncftpbatch@EXEEXT@ "$(DESTDIR)$(BINDIR)/ncftpbatch@EXEEXT@"
54	-@test -f "$(DESTDIR)$(BINDIR)/ncftpspooler@EXEEXT@" && echo /bin/rm "$(DESTDIR)$(BINDIR)/ncftpspooler@EXEEXT@" && /bin/rm "$(DESTDIR)$(BINDIR)/ncftpspooler@EXEEXT@"
55	ln "$(DESTDIR)$(BINDIR)/ncftpbatch@EXEEXT@" "$(DESTDIR)$(BINDIR)/ncftpspooler@EXEEXT@"
56#
57# The visual programs are only built if a working Curses was found.
58#
59	-test -f bin/ncftpbookmarks@EXEEXT@ && $(INSTALL_PROGRAM) bin/ncftpbookmarks@EXEEXT@ "$(DESTDIR)$(BINDIR)/ncftpbookmarks@EXEEXT@"
60	-@echo '..... Installing the manual pages .....'
61	$(INSTALL_DATA) doc/man/ncftp.1 "$(DESTDIR)$(mandir)/man1/ncftp.1"
62	$(INSTALL_DATA) doc/man/ncftpget.1 "$(DESTDIR)$(mandir)/man1/ncftpget.1"
63	$(INSTALL_DATA) doc/man/ncftpput.1 "$(DESTDIR)$(mandir)/man1/ncftpput.1"
64	$(INSTALL_DATA) doc/man/ncftpbatch.1 "$(DESTDIR)$(mandir)/man1/ncftpbatch.1"
65	$(INSTALL_DATA) doc/man/ncftpspooler.1 "$(DESTDIR)$(mandir)/man1/ncftpspooler.1"
66	$(INSTALL_DATA) doc/man/ncftpls.1 "$(DESTDIR)$(mandir)/man1/ncftpls.1"
67	-@echo '..... Finishing up .....'
68	-@( cd "$(DESTDIR)$(BINDIR)" ; echo ""; echo "$(DESTDIR)$(BINDIR):" ; /bin/ls -l "ncftp@EXEEXT@" "ncftpget@EXEEXT@" "ncftpput@EXEEXT@" "ncftpls@EXEEXT@" "ncftpbatch@EXEEXT@" "ncftpspooler@EXEEXT@" "ncftpbookmarks@EXEEXT@" 2>/dev/null | sed 's/^/  /;' ; echo "" )
69	-@echo 'Done installing NcFTP.'
70
71clean:
72	/bin/rm -rf ncftp_all.ncb ncftp_all.opt ncftp_all.plg *.pch SunWS_cache
73	@( cd ./Strn ; $(MAKE) clean )
74	@( cd ./sio ; $(MAKE) clean )
75	@( cd ./libncftp ; $(MAKE) clean )
76	@( cd ./ncftp ; $(MAKE) clean )
77	@( cd ./sh_util ; $(MAKE) clean )
78	@( cd ./vis ; $(MAKE) clean )
79
80distclean: clean
81	/bin/rm -f config.cache config.h config.log config.status libncftp/Makefile libncftp/config.h ncftp/Makefile sh_util/Makefile vis/Makefile Makefile.bin Strn/Makefile Strn/config.h Strn/Strn.version sio/Makefile sio/config.h sio/sio.version Makefile ccdv
82	/bin/rm -rf bin
83	@echo "Warning: configure may have automatically patched libncftp/ncftp.h"
84
85TMPDIR=/tmp
86TARDIR=ncftp-$(VER)
87STGZFILE=$(TARDIR)-src.tar.gz
88DTARFILE=$(TARDIR)-@OS@-export.tar
89DTGZFILE=$(TARDIR)-@OS@-export.tar.gz
90DBGZFILE=$(TARDIR)-@OS@-export.tar.bz2
91
92dtar:
93	-@mkdir $(TMPDIR)/TAR
94	-@mkdir $(TMPDIR)/TAR/$(TARDIR)
95	cp -p Makefile.bin $(TMPDIR)/TAR/$(TARDIR)/Makefile
96	-@mkdir $(TMPDIR)/TAR/$(TARDIR)/bin $(TMPDIR)/TAR/$(TARDIR)/doc
97	cp -p -r bin $(TMPDIR)/TAR/$(TARDIR)
98	chmod 755 $(TMPDIR)/TAR/$(TARDIR)/bin/*
99	-@rm -f "$(TMPDIR)/TAR/$(TARDIR)/bin/ncftpspooler@EXEEXT@"
100	-@ln "$(TMPDIR)/TAR/$(TARDIR)/bin/ncftpbatch@EXEEXT@" "$(TMPDIR)/TAR/$(TARDIR)/bin/ncftpspooler@EXEEXT@"
101	cp -p DONATE.txt $(TMPDIR)/TAR/$(TARDIR)
102	for f in CHANGELOG.txt FIREWALLS_AND_PROXIES.txt LICENSE.txt ; do \
103		cp -p doc/$$f $(TMPDIR)/TAR/$(TARDIR)/doc/$$f ; \
104	done
105	cp -p -r doc/man doc/html $(TMPDIR)/TAR/$(TARDIR)/doc
106	find $(TMPDIR)/TAR/$(TARDIR) -type d -exec chmod a+rx {} \;
107	find $(TMPDIR)/TAR/$(TARDIR) -type f -exec chmod a+r {} \;
108	( cd $(TMPDIR)/TAR ; @TAR@ @TARFLAGS@ $(TMPDIR)/TAR/$(DTARFILE) $(TARDIR) )
109	-@cp -p $(TMPDIR)/TAR/$(DTARFILE) .
110	-@chmod 644 $(DTARFILE)
111	-@rm -rf $(TMPDIR)/TAR
112	-@/bin/ls -l $(DTARFILE)
113
114dgz: dtar
115	gzip $(DTARFILE)
116	-@chmod 644 $(DTGZFILE)
117	-@/bin/ls -l $(DTGZFILE)
118
119dbz: dtar
120	bzip2 $(DTARFILE)
121	-@chmod 644 $(DTBZFILE)
122	-@/bin/ls -l $(DTBZFILE)
123
124sgz gz:
125	./sh/mksrctar.sh $(TARDIR) $(STGZFILE) '@TAR@' '@TARFLAGS@'
126