# BRCM_VERSION=3
[bcm963xx.git] / userapps / opensource / ftpd / Makefile
1 # Makefile file for bftpd
2 #
3 # License:  GNU General Public License, Version 2.
4 #
5 CFLAGS= -Wall -s -Os -fomit-frame-pointer \
6         -I. -I$(INC_BRCMCFM_PATH) \
7         -I$(INC_BRCMDRIVER_PUB_PATH)/$(BRCM_BOARD) -I$(INC_BRCMDRIVER_PRIV_PATH)/$(BRCM_BOARD) \
8         -I$(BROADCOM_CFM_DIR)/inc -I$(BROADCOM_CFM_DIR)/util/psi
9         
10 LDFLAGS=-Wl,-allow-shlib-undefined
11 ifeq ($(strip $(BUILD_FTPD)), static)
12 CFLAGS += -DBUILD_STATIC
13 endif
14
15 all: bftpd
16
17 LIBS= -lcrypt
18
19 HEADERS=commands.h list.h login.h main.h mystring.h fwsyscall.h 
20 OBJS=commands.o list.o login.o main.o mystring.o fwsyscall.o
21 SRCS=commands.c list.c login.c main.c mystring.c fwsyscall.c 
22 BOARD_API_SRC=$(BROADCOM_CFM_DIR)/util/psi/board_api.c
23 BOARD_API_OBJ=board_api.o
24 SYSCALL_SRC=$(BROADCOM_CFM_DIR)/util/system/syscall.c
25 SYSCALL_OBJ=syscall.o
26
27 install:
28         install -m 755 bftpd $(INSTALL_DIR)/bin
29         $(STRIP) $(INSTALL_DIR)/bin/bftpd
30
31 dynamic: bftpd install
32
33 static: bftpd.a
34
35 $(BOARD_API_OBJ):       $(INC_BRCMCFM_PATH)/board_api.h
36         $(CC) $(CFLAGS) -c $(BOARD_API_SRC)
37
38 $(SYSCALL_OBJ): $(INC_BRCMCFM_PATH)/syscall.h 
39         $(CC) $(CFLAGS) -I$(INC_KERNEL_PATH) -I$(INC_KERNEL_PATH2) -c $(SYSCALL_SRC)
40                 
41 bftpd: $(HEADERS) $(OBJS) $(BOARD_API_OBJ) $(SYSCALL_OBJ)
42         $(CC) $(LDFLAGS) $(OBJS) $(BOARD_API_OBJ) $(SYSCALL_OBJ) $(LIBS) -o bftpd
43
44 bftpd.a: $(HEADERS) $(OBJS) $(BOARD_API_OBJ) $(SYSCALL_OBJ)
45         $(CC) $(CFLAGS) -c -o $(OBJS)
46         $(AR) rcs bftpd.a $(OBJS) $(BOARD_API_OBJ) $(SYSCALL_OBJ) $(LIBS)
47
48 clean:
49         -rm -f bftpd $(OBJS) $(BOARD_API_OBJ) $(SYSCALL_OBJ) bftpd.a
50
51