1#----------------------------------------------------------------------------- 2# 3# LibNcFTP makefile for the platform @OS@, on the host @host@. 4# 5#----------------------------------------------------------------------------- 6PKGNAME=libncftp 7VERSION=3.0.1 8PREFIX=@prefix@ 9 10CC=@CC@ 11CFLAGS=@CFLAGS@ 12#CC=gcc 13#CFLAGS=-g -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wshadow -Wbad-function-cast -Wwrite-strings -Wconversion 14VPATH=@srcdir@ 15CPPFLAGS=-I. -I../Strn -I../sio @CPPFLAGS@ 16 17LIB=libncftp.a 18LIBSO=libncftp.so.2 19LIBSOS=libncftp.so 20 21# Any -D definitions: 22DEFS=@DEFS@@NDEFS@ 23 24CFILES=open.c cmds.c util.c rcmd.c ftp.c io.c errno.c linelist.c glob.c 25OBJS=open.o cmds.o util.o rcmd.o ftp.o io.o errno.o linelist.o glob.o 26SOBJS=open.so cmds.so util.so rcmd.so ftp.so io.so errno.so linelist.so glob.so 27 28# LIBSET=@LIBSET@ 29LIBSET=$(LIB) 30 31SHELL=/bin/sh 32.SUFFIXES: .c .o .so 33 34all: $(LIBSET) 35 ( cd ../sio ; $(MAKE) ) 36 ( cd ../Strn ; $(MAKE) ) 37 -[ -d ./samples/minincftp ] && cd ./samples/minincftp && $(MAKE) 38 -[ -d ./samples/misc ] && cd ./samples/misc && $(MAKE) 39 -[ -d ./samples/monkey ] && cd ./samples/monkey && $(MAKE) 40 -[ -d ./samples/ncftpget ] && cd ./samples/ncftpget && $(MAKE) 41 -[ -d ./samples/ncftpls ] && cd ./samples/ncftpls && $(MAKE) 42 -[ -d ./samples/ncftpput ] && cd ./samples/ncftpput && $(MAKE) 43 -[ -d ./samples/ncftpsyncput ] && cd ./samples/ncftpsyncput && $(MAKE) 44 @echo 'Done.' 45 46$(LIB): $(OBJS) 47 -@/bin/rm -f $(LIB) 48 ar rv $(LIB) $(OBJS) 49 -@chmod 644 $(LIB) 50 -@@RANLIB@ $(LIB) 51 @/bin/ls -l $(LIB) 52 53shared: $(LIBSO) 54 55so: $(LIBSO) 56 57$(LIBSO): $(SOBJS) 58 /bin/rm -f $(LIBSO) $(LIBSOS) 59 gcc -shared -Wl,-soname,$(LIBSO) -o $(LIBSO) $(SOBJS) 60 /bin/ln -s $(LIBSO) $(LIBSOS) 61 -@/bin/ls -l $(LIBSOS) $(LIBSO) 62 63soinstall: $(LIBSO) 64 [ -d "$(PREFIX)/lib" ] || mkdir -m 755 "$(PREFIX)/lib" 65 [ -d "$(PREFIX)/include" ] || mkdir -m 755 "$(PREFIX)/include" 66 cp $(LIBSO) $(PREFIX)/lib/$(LIBSO) 67 ( cd $(PREFIX)/lib ; /bin/rm -f $(LIBSOS) ; /bin/ln -s $(LIBSO) $(LIBSOS) ) 68 cp ncftp.h ncftp_errno.h $(PREFIX)/include 69 -chmod a+r $(PREFIX)/lib/$(LIBSO) $(PREFIX)/include/ncftp.h $(PREFIX)/include/ncftp_errno.h 70 71install: $(LIB) 72 [ -d "$(PREFIX)/lib" ] || mkdir -m 755 "$(PREFIX)/lib" 73 [ -d "$(PREFIX)/include" ] || mkdir -m 755 "$(PREFIX)/include" 74 cp $(LIB) $(PREFIX)/lib/$(LIB) 75 cp ncftp.h ncftp_errno.h $(PREFIX)/include 76 -chmod a+r $(LIB) $(PREFIX)/lib/$(LIB) $(PREFIX)/include/ncftp.h $(PREFIX)/include/ncftp_errno.h 77 ( cd ../sio ; $(MAKE) "PREFIX=$(PREFIX)" install ) 78 ( cd ../Strn ; $(MAKE) "PREFIX=$(PREFIX)" install ) 79 80install_samples: 81 ( cd ./samples ; $(MAKE) install ) 82 83.c.o: 84 $(CC) $(CFLAGS) $(DEFS) $(CPPFLAGS) $< -c 85 86.c.so: 87 $(CC) -fpic $(CFLAGS) $(CPPFLAGS) $(DEFS) $*.c -c -o $*.so 88 89test: test.c $(OBJS) 90 $(CC) $(CFLAGS) $(DEFS) $(CPPFLAGS) test.c $(OBJS) -o test $(LDFLAGS) $(LIBS) 91 92### Archiving ################################################################# 93 94TARDIR=libncftp-$(VERSION) 95TMPDIR=/tmp 96STGZFILE=libncftp-$(VERSION)-src.tar.gz 97 98gz sgz: $(PACKAGE) 99 ./mksrctar.sh $(TARDIR) $(STGZFILE) 100 101### Cleaning supplies ######################################################## 102 103clean: 104 -/bin/rm -f $(OBJS) $(SOBJS) core $(LIB) $(LIBSO) $(LIBSOS) 105 -[ -d ./samples/minincftp ] && cd ./samples/minincftp && $(MAKE) clean 106 -[ -d ./samples/monkey ] && cd ./samples/monkey && $(MAKE) clean 107 -[ -d ./samples/ncftpget ] && cd ./samples/ncftpget && $(MAKE) clean 108 -[ -d ./samples/ncftpls ] && cd ./samples/ncftpls && $(MAKE) clean 109 -[ -d ./samples/ncftpput ] && cd ./samples/ncftpput && $(MAKE) clean 110 -[ -d ./samples/ncftpsyncput ] && cd ./samples/ncftpsyncput && $(MAKE) clean 111 ( sleep 2 ; cd ../sio ; $(MAKE) clean ) 112 ( sleep 2 ; cd ../Strn ; $(MAKE) clean ) 113 114### Dependencies ############################################################# 115 116dep: 117 gcc -MM $(CPPFLAGS) $(CFILES) 118 119open.o: open.c syshdrs.h ncftp.h ncftp_errno.h util.h ftp.h 120open.so: open.c syshdrs.h ncftp.h ncftp_errno.h util.h ftp.h 121 122cmds.o: cmds.c syshdrs.h ncftp.h ncftp_errno.h util.h ftp.h 123cmds.so: cmds.c syshdrs.h ncftp.h ncftp_errno.h util.h ftp.h 124 125util.o: util.c syshdrs.h ncftp.h ncftp_errno.h util.h 126util.so: util.c syshdrs.h ncftp.h ncftp_errno.h util.h 127 128rcmd.o: rcmd.c syshdrs.h ncftp.h ncftp_errno.h util.h ftp.h 129rcmd.so: rcmd.c syshdrs.h ncftp.h ncftp_errno.h util.h ftp.h 130 131ftp.o: ftp.c syshdrs.h ncftp.h ncftp_errno.h ftp.h util.h 132ftp.so: ftp.c syshdrs.h ncftp.h ncftp_errno.h ftp.h util.h 133 134io.o: io.c syshdrs.h ncftp.h ncftp_errno.h util.h ftp.h 135io.so: io.c syshdrs.h ncftp.h ncftp_errno.h util.h ftp.h 136 137errno.o: errno.c syshdrs.h ncftp.h ncftp_errno.h 138errno.so: errno.c syshdrs.h ncftp.h ncftp_errno.h 139 140linelist.o: linelist.c syshdrs.h ncftp.h ncftp_errno.h util.h 141linelist.so: linelist.c syshdrs.h ncftp.h ncftp_errno.h util.h 142 143glob.o: glob.c syshdrs.h ncftp.h ncftp_errno.h util.h 144glob.so: glob.c syshdrs.h ncftp.h ncftp_errno.h util.h 145