1include ../common.mak
2
3# Makefile for systems with GNU tools
4
5#CC 	=	gcc
6#INSTALL	=	install
7IFLAGS  = -idirafter dummyinc
8#CFLAGS = -g
9CFLAGS	+= -O2 -Wall $(EXTRACFLAGS) -ffunction-sections -fdata-sections -W -Wshadow #-pedantic -Werror -Wconversion
10CFLAGS  += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE=1 -D_LARGEFILE64_SOURCE=1 -D_LARGE_FILES=1
11LDFLAGS = -ffunction-sections -fdata-sections -Wl,--gc-sections
12
13#LIBS	=	`./vsf_findlibs.sh`
14#LINK	=	-Wl,-s
15LIBS	=	-lcrypt -lnsl
16LINK	=	
17
18CFLAGS	+=	-I../shared
19ifeq ($(RTCONFIG_FTP_SSL),y)
20LIBS	=	-lnsl
21OPENSSLDIR = ../openssl
22OPENSSLINC = $(OPENSSLDIR)/include
23LIBS	+=	-L$(OPENSSLDIR)/ -lssl -lcrypto
24CFLAGS	+=	-I$(OPENSSLINC)
25endif
26
27CFLAGS  += 	-I$(SRCBASE)/include -I$(TOP)/shared -I$(TOP)/libdisk
28LDFLAGS  +=	-L$(TOP)/nvram${BCMEX} -lnvram -L$(TOP)/shared -lshared -L$(TOP)/libdisk -ldisk
29ifeq ($(RTCONFIG_BCMARM),y)
30CFLAGS += -I$(SRCBASE)/common/include
31LDFLAGS += -lgcc_s
32endif
33
34ifeq ($(RTCONFIG_QTN),y)
35LDFLAGS += -L$(TOP)/libqcsapi_client -lqcsapi_client
36endif
37
38OBJS	=	main.o utility.o prelogin.o ftpcmdio.o postlogin.o privsock.o \
39		tunables.o ftpdataio.o secbuf.o ls.o \
40		postprivparent.o logging.o str.o netstr.o sysstr.o strlist.o \
41    banner.o filestr.o parseconf.o secutil.o \
42    ascii.o oneprocess.o twoprocess.o privops.o standalone.o hash.o \
43    tcpwrap.o ipaddrparse.o access.o features.o readwrite.o opts.o \
44    ssl.o sysutil.o sysdeputil.o
45
46
47.c.o:
48	$(CC) -c $*.c $(CFLAGS) $(IFLAGS)
49
50vsftpd: $(OBJS) 
51	$(CC) -o vsftpd $(OBJS) $(LINK) $(LIBS) $(LDFLAGS)
52
53install:
54	if [ -x /usr/local/sbin ]; then \
55		$(INSTALL) -m 755 vsftpd /usr/local/sbin/vsftpd; \
56	else \
57		$(INSTALL) -m 755 vsftpd /usr/sbin/vsftpd; fi
58	if [ -x /usr/local/man ]; then \
59		$(INSTALL) -m 644 vsftpd.8 /usr/local/man/man8/vsftpd.8; \
60		$(INSTALL) -m 644 vsftpd.conf.5 /usr/local/man/man5/vsftpd.conf.5; \
61	elif [ -x /usr/share/man ]; then \
62		$(INSTALL) -m 644 vsftpd.8 /usr/share/man/man8/vsftpd.8; \
63		$(INSTALL) -m 644 vsftpd.conf.5 /usr/share/man/man5/vsftpd.conf.5; \
64	else \
65		$(INSTALL) -m 644 vsftpd.8 /usr/man/man8/vsftpd.8; \
66		$(INSTALL) -m 644 vsftpd.conf.5 /usr/man/man5/vsftpd.conf.5; fi
67	if [ -x /etc/xinetd.d ]; then \
68		$(INSTALL) -m 644 xinetd.d/vsftpd /etc/xinetd.d/vsftpd; fi
69
70clean:
71	rm -f *.o *.swp vsftpd
72
73