Index: Makefile =================================================================== RCS file: /home/wensong/cvsroot/ipvs/Makefile,v retrieving revision 1.13 diff -u -r1.13 Makefile --- Makefile 2002/03/25 12:44:35 1.13 +++ Makefile 2002/06/09 14:31:33 @@ -1,29 +1,51 @@ # ipvs: IP Virtual Server Module for NetFilter framework # uncomment the following line on an SMP system -#SMPFLAGS= -D__SMP__ +#SMPFLAGS = -D__SMP__ # uncomment the following line for DEBUG -DEBUGFLAGS= -DCONFIG_IP_VS_DEBUG -g +DEBUGFLAGS = -DCONFIG_IP_VS_DEBUG -g +KERNELRELEASE = $(shell uname -r) +# As per the Linux Kernel's Makefile: +# INSTALL_MOD_PATH specifies a prefix to MODLIB for module directory +# relocations required by build roots. This is not defined in the +# makefile but the arguement can be passed to make if needed. + +MODLIB = $(INSTALL_MOD_PATH)/lib/modules/$(KERNELRELEASE)/kernel/net/ipv4/ipvs/ + + +SCHEDULERS = ip_vs_lc.o ip_vs_rr.o ip_vs_wlc.o ip_vs_wrr.o \ + ip_vs_lblc.o ip_vs_lblcr.o ip_vs_dh.o ip_vs_sh.o ip_vs_ftp.o +CORE = ip_vs.o +CORE_OBJS = ip_vs_conn.o ip_vs_core.o ip_vs_ctl.o ip_vs_sched.o \ + ip_vs_timer.o ip_vs_app.o ip_vs_sync.o ip_vs_est.o + CC=gcc CFLAGS= -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB -DMODVERSIONS \ $(SMPFLAGS) $(DEBUGFLAGS) -O2 -Wall \ -Wstrict-prototypes -I/usr/src/linux/include \ -include /usr/src/linux/include/linux/modversions.h -all: ip_vs.o ip_vs_lc.o ip_vs_rr.o ip_vs_wlc.o ip_vs_wrr.o \ - ip_vs_lblc.o ip_vs_lblcr.o ip_vs_dh.o ip_vs_sh.o ip_vs_ftp.o +all: $(CORE) $(SCHEDULERS) -ip_vs.o: ip_vs_conn.o ip_vs_core.o ip_vs_ctl.o ip_vs_sched.o \ - ip_vs_timer.o ip_vs_app.o ip_vs_sync.o ip_vs_est.o +ip_vs.o: $(CORE_OBJS) $(LD) -r $^ -o $@ install: ip_vs.o -rmmod ip_vs insmod ip_vs.o lsmod + +modules_install: + if [ ! -d "$(MODLIB)" ]; then mkdir -p "$(MODLIB)"; fi + install -m 600 -c $(CORE) $(SCHEDULERS) "$(MODLIB)" + depmod -a + +modules_uninstall: + (cd "$(MODLIB)"; rm -f $(CORE) $(SCHEDULERS)) + rmdir "$(MODLIB)" clean: rm -f *.o *~ *.bak *.orig *.rej