5 PROGDATE:=November\ 2003
9 #CFLAGS:=-Wall -Wunused
10 CFLAGS:=-Wall -Wunused -Os -s
11 ifeq ($(strip $(BUILD_EBTABLES)), static)
12 CFLAGS += -DBUILD_STATIC
17 ifeq ($(shell uname -m),sparc64)
18 CFLAGS+=-DEBT_MIN_ALIGN=8 -DKERNEL_64_USERSPACE_32
21 include extensions/Makefile
23 OBJECTS:=getethertype.o ebtables.o communication.o $(EXT_OBJS)
25 #KERNEL_INCLUDES?=include/
26 KERNEL_INCLUDES?=$(KERNEL_DIR)/include
30 ETHERTYPESPATH?=$(INSTALL_DIR)/etc
31 ETHERTYPESFILE:=$(ETHERTYPESPATH)/ethertypes
34 BINPATH?=$(INSTALL_DIR)/bin/
35 BINFILE:=$(BINPATH)ebtables
39 PROGSPECS:=-DPROGVERSION=\"$(PROGVERSION)\" \
40 -DPROGNAME=\"$(PROGNAME)\" \
41 -DPROGDATE=\"$(PROGDATE)\"
43 # -D_PATH_ETHERTYPES=\"$(ETHERTYPESFILE)\"
49 communication.o: communication.c include/ebtables_u.h
50 $(CC) $(CFLAGS) $(PROGSPECS) -c -o $@ $< -I$(KERNEL_INCLUDES)
52 getethertype.o: getethertype.c include/ethernetdb.h
53 $(CC) $(CFLAGS) $(PROGSPECS) -c -o $@ $< -Iinclude/
55 ebtables.o: ebtables.c include/ebtables_u.h
56 $(CC) $(CFLAGS) $(PROGSPECS) -c -o $@ $< -I$(KERNEL_INCLUDES)
59 ether_addr.o: ether_addr.c
60 $(CC) $(CFLAGS) $(PROGSPECS) -c -o $@ $< -I$(KERNEL_INCLUDES)
64 $(CC) $(CFLAGS) -o $@ $^ -I$(KERNEL_INCLUDES)
66 $(MANDIR)/man8/ebtables.8: ebtables.8
69 #install -m 0644 -o root -g root $< $@
73 $(ETHERTYPESFILE): ethertypes
76 #install -m 0644 -o root -g root $< $@
86 ebtables.a: $(OBJECTS)
87 $(AR) rcs ebtables.a $(OBJECTS)
93 #install -m 0755 -o root -g root $< $(BINFILE)
94 install -m 0755 $< $(BINFILE)
99 #install: $(MANDIR)/man8/ebtables.8 $(ETHERTYPESFILE) exec
100 install: $(ETHERTYPESFILE) exec
107 rm -f extensions/*.o extensions/*.c~
109 DIR:=$(PROGNAME)-v$(PROGVERSION)
110 # This is used to make a new userspace release
113 mkdir -p include/linux/netfilter_bridge
114 install -m 0644 -o root -g root \
115 $(KERNEL_INCLUDES)/linux/netfilter_bridge.h include/linux/
116 # To keep possible compile error complaints about undefined ETH_P_8021Q
118 install -m 0644 -o root -g root \
119 $(KERNEL_INCLUDES)/linux/if_ether.h include/linux/
120 install -m 0644 -o root -g root \
121 $(KERNEL_INCLUDES)/linux/netfilter_bridge/*.h \
122 include/linux/netfilter_bridge/
123 install -m 0644 -o root -g root \
124 include/ebtables.h include/linux/netfilter_bridge/
129 touch include/linux/*
130 touch include/linux/netfilter_bridge/*
131 cd ..;tar -c $(DIR) | gzip >$(DIR).tar.gz