# YOU DO NOT NEED TO CONFIGURE ANYTHING IN THIS FILE.
#
# RUN THE SHELL SCRIPT ./build.MudOS to generate the Makefiles, and follow
# its instructions.
#
############################################################################
#
# **** TARGETS AND THEIR CORRECT USAGE ****
#
# COMPILATION TARGETS:
#
# all: compile all the files
#
# install: make all, then move the files to the correct directories
#
# remake: remove the object files and generated files, and recompile
# NO reconfiguration is done, etc.
#
# depend: automatically create dependency info
#
# Makefiles: update Makefile.in and GNUmakefile.in from Makefile.master
# (only necessary after making changes to Makefile.master)
#
# 'CLEAN' TARGETS:
#
# neat: remove object files and generated files (used by remake)
#
# clean: in addition to neat, also remove .orig and .rej files,
# cores, lint files, emacs backups, tag files, yacc debug
# files, generated Makefiles, generated binaries, and
# generated dependency info
#
# spotless: make clean, then remove ALL CONFIGURATION AND CUSTOMIZATION
# useful for creating distributions
#
# ---- REALLY COMPLEX OPTIONS YOU PROBABLY DON'T WANT TO TOUCH -----
#
# NeXT: link with MallocDebug if you have a NeXT with NeXTOS 2.1 or later and
# you wish to search for memory leaks (see /NextDeveloper/Apps/MallocDebug).
# Note: linking with MallocDebug will cause the virtual size of the
# driver process to reach appoximately 40MB however the amount of real memory
# used will remain close to normal.
#EXTRALIBS=-lMallocDebug -lsys_s
#
# ---- DO NOT EDIT ANYTHING BELOW HERE UNLESS YOU KNOW ALOT ABOUT HOW
# MUDOS WORKS INTERNALLY ----
OVERRIDES=$(MAKEOVERRIDES)
# **************************************************************************
# **** NOTE: If you add something here, also add it to the OBJ= rule below,
# **** or non-GNU makes will die
# **************************************************************************
%ifdef NMAKE
SRC=grammar$(TAB_EXT).c lex.c main.c rc.c interpret.c simulate.c file.c object.c \
backend.c array.c mapping.c comm.c ed.c regexp.c swap.c buffer.c crc32.c \
malloc.c mallocwrapper.c class.c efuns_main.c efuns_port.c \
call_out.c otable.c dumpstat.c stralloc.c hash.c \
port.c reclaim.c parse.c simul_efun.c sprintf.c program.c \
compiler.c avltree.c icode.c trees.c generate.c scratchpad.c \
socket_efuns.c socket_ctrl.c qsort.c eoperators.c socket_err.c md.c \
disassembler.c binaries.c $(STRFUNCS) \
replace_program.c ccode.c cfuns.c compile_file.c master.c function.c \
debug.c crypt.c applies_table.c add_action.c
all: utils cc.h files main_build
main_build: $(DRIVER_BIN) addr_server
%else
SRC=grammar.tab.c lex.c main.c rc.c interpret.c simulate.c file.c object.c \
backend.c array.c mapping.c comm.c ed.c regexp.c swap.c buffer.c crc32.c \
malloc.c mallocwrapper.c class.c efuns_main.c efuns_port.c \
call_out.c otable.c dumpstat.c stralloc.c hash.c \
port.c reclaim.c parse.c simul_efun.c sprintf.c program.c \
compiler.c avltree.c icode.c trees.c generate.c scratchpad.c \
socket_efuns.c socket_ctrl.c qsort.c eoperators.c socket_err.c md.c \
disassembler.c binaries.c ualarm.c $(STRFUNCS) \
replace_program.c ccode.c cfuns.c compile_file.c master.c function.c \
debug.c crypt.c applies_table.c add_action.c
%ifdef GNU
all: $(OBJDIR) cc.h files main_build
%else
all: cc.h files main_build
%endif
main_build: $(DRIVER_BIN) addr_server portbind
%endif
%ifndef NMAKE
parallel:
$(MAKE) -k -l -j 6 cc.h files
$(MAKE) -k -l -j 6 main_build
%endif
%ifdef GNU
VPATH = $(OBJDIR)
OBJ=$(addprefix $(OBJDIR)/,$(subst .c,.o,$(SRC)))
$(OBJDIR)/%.o: %.c
$(CC) $(CFLAGS) $(OPTIMIZE) -o $@ -c $<
$(OBJDIR)/lex.o: lex.c preprocess.c cc.h grammar.tab.c
$(OBJDIR)/grammar.tab.o: grammar.tab.c opcodes.h
$(OBJDIR):
mkdir -p $(OBJDIR)
which_makefile:
echo MakeIsGNU
%else
%ifdef NMAKE
OBJ=$(OBJDIR)\grammar$(TAB_EXT).obj $(OBJDIR)\lex.obj $(OBJDIR)\main.obj $(OBJDIR)\rc.obj $(OBJDIR)\interpret.obj \
$(OBJDIR)\simulate.obj $(OBJDIR)\file.obj $(OBJDIR)\object.obj $(OBJDIR)\backend.obj $(OBJDIR)\array.obj \
$(OBJDIR)\mapping.obj $(OBJDIR)\comm.obj $(OBJDIR)\ed.obj $(OBJDIR)\regexp.obj $(OBJDIR)\swap.obj \
$(OBJDIR)\buffer.obj $(OBJDIR)\crc32.obj $(OBJDIR)\malloc.obj $(OBJDIR)\mallocwrapper.obj \
$(OBJDIR)\class.obj $(OBJDIR)\efuns_main.obj $(OBJDIR)\efuns_port.obj $(OBJDIR)\call_out.obj \
$(OBJDIR)\otable.obj $(OBJDIR)\dumpstat.obj $(OBJDIR)\stralloc.obj $(OBJDIR)\hash.obj $(OBJDIR)\port.obj \
$(OBJDIR)\reclaim.obj $(OBJDIR)\parse.obj $(OBJDIR)\simul_efun.obj $(OBJDIR)\sprintf.obj \
$(OBJDIR)\program.obj $(OBJDIR)\compiler.obj $(OBJDIR)\avltree.obj $(OBJDIR)\icode.obj $(OBJDIR)\trees.obj \
$(OBJDIR)\generate.obj $(OBJDIR)\scratchpad.obj $(OBJDIR)\socket_efuns.obj $(OBJDIR)\socket_ctrl.obj \
$(OBJDIR)\qsort.obj $(OBJDIR)\eoperators.obj $(OBJDIR)\socket_err.obj $(OBJDIR)\md.obj \
$(OBJDIR)\disassembler.obj $(OBJDIR)\binaries.obj $(OBJDIR)\add_action.obj \
$(OBJDIR)\replace_program.obj $(OBJDIR)\ccode.obj $(OBJDIR)\cfuns.obj $(OBJDIR)\compile_file.obj \
$(OBJDIR)\crypt.obj $(OBJDIR)\debug.obj $(OBJDIR)\master.obj $(OBJDIR)\function.obj $(OBJDIR)\applies_table.obj
.c{$(OBJDIR)/}.obj:
$(CC) $(CFLAGS) $(OPTIMIZE) -Fo$(OBJDIR)\ -c $<
$(OBJDIR)/lex.obj: lex.c preprocess.c cc.h grammar$(TAB_EXT).c
$(OBJDIR)/grammar$(TAB_EXT).obj: grammar$(TAB_EXT).c opcodes.h
which_makefile:
echo MakeIsNmake
%else
OBJ=grammar.tab.o lex.o main.o rc.o interpret.o simulate.o file.o object.o \
backend.o array.o mapping.o comm.o ed.o regexp.o swap.o buffer.o crc32.o \
malloc.o mallocwrapper.o class.o efuns_main.o efuns_port.o \
call_out.o otable.o dumpstat.o stralloc.o hash.o \
port.o reclaim.o parse.o simul_efun.o sprintf.o program.o \
compiler.o avltree.o icode.o trees.o generate.o scratchpad.o \
socket_efuns.o socket_ctrl.o qsort.o eoperators.o socket_err.o md.o \
disassembler.o binaries.o ualarm.o $(STRFUNCS) \
replace_program.o ccode.o cfuns.o compile_file.o master.o function.o \
debug.o crypt.o applies_table.o add_action.o
.c.o:
$(CC) $(CFLAGS) $(OPTIMIZE) -c $*.c
# Some OS's can't deal with these being created during the make process?
malloc.o: malloc.c
mallocwrapper.o: mallocwrapper.c
lex.o: lex.c preprocess.c cc.h grammar.tab.c
grammar.tab.o: grammar.tab.c opcodes.h
which_makefile:
echo MakeIsMake
%endif
%endif
%ifdef NMAKE
grammar$(TAB_EXT).c: grammar.y
$(YACC) grammar.y
-rm -f grammar$(TAB_EXT).*
sed "s/y$(TAB_EXT).c/grammar$(TAB_EXT).c/g" y$(TAB_EXT).c > grammar$(TAB_EXT).c
-mv y$(TAB_EXT).h grammar$(TAB_EXT).h
%else
grammar.tab.c: grammar.y
$(YACC) grammar.y
-rm -f grammar.tab.*
sed "s/y.tab.c/grammar.tab.c/g" y.tab.c > grammar.tab.c
-mv y.tab.h grammar.tab.h
%endif
%ifdef GNU
packages/packages.a: packages/parser.c packages/contrib.c
$(MAKE) -C packages 'CC=$(CC)' 'CFLAGS=$(CFLAGS) $(OPTIMIZE)' 'OBJDIR=../$(OBJDIR)' 'RANLIB=$(RANLIB)' 'A=$(A)' 'O=$(O)'
mudlib/mudlib.a:
$(MAKE) -C mudlib 'CC=$(CC)' 'CFLAGS=$(CFLAGS) $(OPTIMIZE)' 'OBJDIR=../$(OBJDIR)' 'RANLIB=$(RANLIB)' 'A=$(A)' 'O=$(O)'
%else
%ifdef NMAKE
packages/packages.lib: packages/parser.c packages/contrib.c
cd packages
$(MAKE) /nologo "CC=$(CC)" "CFLAGS=$(CFLAGS) $(OPTIMIZE)" "OBJDIR=../$(OBJDIR)" \
"RANLIB=$(RANLIB)" "O=$(O)" "A=$(A)"
cd ..
mudlib/mudlib.lib:
cd mudlib
$(MAKE) /nologo "CC=$(CC)" "CFLAGS=$(CFLAGS) $(OPTIMIZE)" "OBJDIR=../$(OBJDIR)" \
"RANLIB=$(RANLIB)" "O=$(O)" "A=$(A)"
cd ..
%else
packages/packages.a: packages/parser.c packages/contrib.c
(cd packages; $(MAKE) 'CC=$(CC)' 'CFLAGS=$(CFLAGS) $(OPTIMIZE)' 'RANLIB=$(RANLIB)' 'A=$(A)' 'O=$(O)')
mudlib/mudlib.a:
(cd mudlib; $(MAKE) 'CC=$(CC)' 'CFLAGS=$(CFLAGS) $(OPTIMIZE)' 'RANLIB=$(RANLIB)' 'A=$(A)' 'O=$(O)')
%endif
%endif
%ifdef NMAKE
$(DRIVER_BIN): $(DRIVER_BIN).exe
$(DRIVER_BIN).exe: packages/packages.lib mudlib/mudlib.lib $(OBJ)
-mv -f $(DRIVER_BIN).exe $(DRIVER_BIN).old
$(CC) $(CFLAGS) $(OPTIMIZE) $(OBJ) -Fe$(DRIVER_BIN).exe packages/packages.lib mudlib/mudlib.lib \
$(EXTRALIBS) @system_libs
%else
$(DRIVER_BIN): packages/packages.a mudlib/mudlib.a $(OBJ)
-mv -f $(DRIVER_BIN) $(DRIVER_BIN).old
$(PROOF) $(CC) $(CFLAGS) $(OPTIMIZE) $(OBJ) -o $(DRIVER_BIN) packages/packages.a mudlib/mudlib.a $(EXTRALIBS) `cat system_libs`
%endif
%ifdef GNU
addr_server: files $(OBJDIR)/addr_server.o $(OBJDIR)/socket_ctrl.o $(OBJDIR)/port.o addr_server.h
$(CC) $(CFLAGS) $(OPTIMIZE) $(OBJDIR)/socket_ctrl.o $(OBJDIR)/addr_server.o $(OBJDIR)/port.o \
-o addr_server `cat system_libs`
portbind: $(OBJDIR)/portbind.o
$(CC) $(CFLAGS) $(OPTIMIZE) $(OBJDIR)/portbind.o -o portbind `cat system_libs`
%else
%ifdef NMAKE
addr_server: addr_server.exe
addr_server.exe: $(OBJDIR)/addr_server.obj $(OBJDIR)/socket_ctrl.obj $(OBJDIR)/port.obj addr_server.h
$(CC) $(CFLAGS) $(OPTIMIZE) $(OBJDIR)/socket_ctrl.obj $(OBJDIR)/addr_server.obj $(OBJDIR)/port.obj \
-Feaddr_server.exe @system_libs
%else
addr_server: files addr_server.o socket_ctrl.o port.o addr_server.h
$(CC) $(CFLAGS) $(OPTIMIZE) socket_ctrl.o addr_server.o port.o \
-o addr_server `cat system_libs`
portbind: portbind.o
$(CC) $(CFLAGS) $(OPTIMIZE) portbind.o -o portbind `cat system_libs`
%endif
%endif
remake: neat all
%ifdef NMAKE
customize: cp.bat
-cp ..\local_options .
-cp ..\system_libs .
-cp ..\configure.h .
%else
customize:
-cp ../local_options .
-cp ../system_libs .
-cp ../configure.h .
%endif
%ifndef NMAKE
depend: opcodes.h grammar.tab.c cc.h efunctions.h efun_defs.c configure.h
%ifdef GNU
-rm tmpdepend
for i in *.c; do $(CC) -MM -DDEPEND $$i >>tmpdepend; done
sed -e "s!^[^ ]!$(OBJDIR)/&!" <tmpdepend >Dependencies
-rm tmpdepend
%else
makedepend *.c
%endif
%endif
%ifdef GNU
cc.h: GNUmakefile
%else
cc.h: Makefile
%endif
%ifdef NMAKE
rm -f cc.h
echo /* this file automatically generated by the Makefile */ > cc.h
echo #define COMPILER "$(CC)" >> cc.h
echo #define OPTIMIZE "$(OPTIMIZE)" >> cc.h
echo #define CFLAGS "$(CFLAGS) $(OPTIMIZE)" >> cc.h
echo #define OBJDIR "$(OBJDIR)" >> cc.h
%else
rm -f cc.h
echo "/* this file automatically generated by the Makefile */" > cc.h
echo '#define COMPILER "$(CC)"' >> cc.h
echo '#define OPTIMIZE "$(OPTIMIZE)"' >> cc.h
echo '#define CFLAGS "$(CFLAGS) $(OPTIMIZE)"' >> cc.h
echo '#define OBJDIR "$(OBJDIR)"' >> cc.h
%endif
# the touches here are necessary to fix the modification times; link(2) does
# 'modify' a file
files: edit_source sysmalloc.c smalloc.c bsdmalloc.c debugmalloc.c wrappedmalloc.c options.h op_spec.c func_spec.c mudlib/Makefile.pre mudlib/GNUmakefile.pre packages/Makefile.pre packages/GNUmakefile.pre configure.h grammar.y.pre
%ifdef NMAKE
.\edit_source -options -malloc -build_func_spec "$(CPP) $(CFLAGS)" \
-process grammar.y.pre
.\edit_source -process packages/Makefile.pre
.\edit_source -process packages/GNUmakefile.pre
.\edit_source -process mudlib/Makefile.pre
.\edit_source -process mudlib/GNUmakefile.pre
.\edit_source -build_efuns -build_applies
%else
./edit_source -options -malloc -build_func_spec '$(CPP) $(CFLAGS)' \
-process grammar.y.pre
./edit_source -process packages/Makefile.pre
./edit_source -process packages/GNUmakefile.pre
./edit_source -process mudlib/Makefile.pre
./edit_source -process mudlib/GNUmakefile.pre
./edit_source -build_efuns -build_applies
%endif
touch mallocwrapper.c
touch malloc.c
touch files
%ifdef NMAKE
make_func$(TAB_EXT).c: make_func.y cc.h
$(YACC) $(YFLAGS) make_func.y
-rm -f make_func$(TAB_EXT).c
mv y$(TAB_EXT).c make_func$(TAB_EXT).c
%else
make_func.tab.c: make_func.y cc.h
$(YACC) $(YFLAGS) make_func.y
-rm -f make_func.tab.c
mv y.tab.c make_func.tab.c
%endif
%ifdef NMAKE
configure.h: edit_source.exe build.MudOS
if not exist configure.h rm -f configuration
touch configuration
.\edit_source -configure
%else
configure.h: edit_source build.MudOS
-if test \( ! -r configure.h \) -o \( ! -r configuration \); then \
rm -f configuration; \
touch configuration; \
fi
if test "Machine `uname -a` Configure version 5" = "`cat configuration`"; then \
echo "Skipping configuration ..."; \
else \
./edit_source -configure; \
echo "Machine `uname -a` Configure version 5" > configuration; \
fi
%endif
%ifdef NMAKE
build.MudOS: buildMudOS.bat
$(OBJDIR)/crypt.obj: ./amiga/crypt.c
$(CC) $(CFLAGS) $(OPTIMIZE) -Fo$(OBJDIR)\ -c .\amiga\crypt.c
utils: touch.exe mudlib/ar.exe packages/ar.exe mv.bat rm.bat packages/rm.bat mudlib/rm.bat cp.bat
rm.bat: Win32/rm.bat
copy Win32\rm.bat .
packages/rm.bat: Win32/rm.bat
copy Win32\rm.bat packages
mudlib/rm.bat: Win32/rm.bat
copy Win32\rm.bat mudlib
mv.bat: Win32/mv.bat
copy Win32\mv.bat .
cp.bat: Win32/cp.bat
copy Win32\cp.bat .
touch.exe: Win32/touch.c
$(CC) Win32/touch.c
packages/ar.exe: mudlib/ar.exe
copy mudlib\ar.exe packages
mudlib/ar.exe: Win32/ar.c
$(CC) -Femudlib/ Win32/ar.c
%endif
%ifdef GNU
$(OBJDIR)/edit_source.o: edit_source.c preprocess.c cc.h
edit_source: $(OBJDIR)/edit_source.o $(OBJDIR)/hash.o $(OBJDIR)/make_func.tab.o
$(CC) $(CFLAGS) $(OBJDIR)/edit_source.o $(OBJDIR)/hash.o $(OBJDIR)/make_func.tab.o -o edit_source
# don't optimize these two
$(OBJDIR)/edit_source.o: edit_source.c
$(CC) $(CFLAGS) -o $@ -c $<
$(OBJDIR)/make_func.tab.o: make_func.tab.c
$(CC) $(CFLAGS) -o $@ -c $<
tags: $(SRC)
ctags $(SRC)
TAGS: $(SRC)
etags $(SRC)
%else
%ifdef NMAKE
$(OBJDIR)/edit_source.obj: edit_source.c preprocess.c cc.h
edit_source: edit_source.exe
edit_source.exe: $(OBJDIR)/edit_source.obj $(OBJDIR)/hash.obj $(OBJDIR)/make_func$(TAB_EXT).obj
$(CC) $(CFLAGS) $(OBJDIR)\edit_source.obj $(OBJDIR)\hash.obj $(OBJDIR)\make_func$(TAB_EXT).obj -Feedit_source.exe
# don't optimize these two
$(OBJDIR)/edit_source.obj: edit_source.c
$(CC) $(CFLAGS) -Fo$(OBJDIR)\ -c edit_source.c
$(OBJDIR)/make_func$(TAB_EXT).obj: make_func$(TAB_EXT).c
$(CC) $(CFLAGS) -Fo$(OBJDIR)\ -c make_func$(TAB_EXT).c
%else
edit_source.o: edit_source.c preprocess.c cc.h
edit_source: edit_source.o hash.o make_func.tab.o
$(CC) $(CFLAGS) edit_source.o hash.o make_func.tab.o -o edit_source
edit_source.o: edit_source.c
$(CC) $(CFLAGS) -c $*.c
make_func.tab.o: make_func.tab.c
$(CC) $(CFLAGS) -c $*.c
hash.o: hash.c
$(CC) $(CFLAGS) $(OPTIMIZE) -c $*.c
tags: force
ctags *.c *.y
TAGS: force
etags *.c *.y
force:
%endif
%endif
install: all
-mkdir $(INSTALL_DIR)
%ifdef NMAKE
$(INSTALL) $(DRIVER_BIN).exe $(INSTALL_DIR)
$(INSTALL) addr_server.exe $(INSTALL_DIR)
%else
$(INSTALL) $(DRIVER_BIN) $(INSTALL_DIR)
$(INSTALL) addr_server $(INSTALL_DIR)
$(INSTALL) portbind $(INSTALL_DIR)
%endif
%ifdef NMAKE
Makefiles: utils Makefile.in GNUmakefile.in NMakefile.in
%else
Makefiles: Makefile.in GNUmakefile.in NMakefile.in
%endif
%ifdef NMAKE
Makefile.in: edit_source.exe Makefile.in.pre Makefile.master
.\edit_source -process Makefile.in.pre
%else
Makefile.in: edit_source Makefile.in.pre Makefile.master
./edit_source -process Makefile.in.pre
%endif
%ifdef NMAKE
GNUmakefile.in: edit_source.exe GNUmakefile.in.pre Makefile.master
.\edit_source -process GNUmakefile.in.pre
%else
GNUmakefile.in: edit_source GNUmakefile.in.pre Makefile.master
./edit_source -process GNUmakefile.in.pre
%endif
%ifdef NMAKE
NMakefile.in: edit_source.exe NMakefile.in.pre Makefile.master
.\edit_source -process NMakefile.in.pre
%else
NMakefile.in: edit_source NMakefile.in.pre Makefile.master
./edit_source -process NMakefile.in.pre
%endif
nothing:
# remove local configuration
spotless: clean
-rm -f configure.h local_options system_libs configuration
-rm -f options_incl.h
-rm -f *.diffs
-find . -name "*~" -print | xargs rm
%ifdef NMAKE
-rm -f touch.exe mudlib\ar.exe packages\ar.exe mv.bat packages\rm.bat mudlib\rm.bat cp.bat
del rm.bat
%endif
# get ready for recompile
%ifdef NMAKE
neat: rm.bat packages/rm.bat mudlib/rm.bat
-cd packages
-$(MAKE) /nologo "O=$(O)" "A=$(A)" clean
-cd..
-cd mudlib
-$(MAKE) /nologo "O=$(O)" "A=$(A)" clean
-cd..
-deltree /y $(OBJDIR)
-rm *.obj *$(TAB_EXT).c *$(TAB_EXT).h trash_me.bat *.ilk *.pdb
%else
neat:
-(cd packages; $(MAKE) "A=$(A)" "O=$(O)" clean)
-(cd mudlib; $(MAKE) "A=$(A)" "O=$(O)" clean)
-rm -rf $(OBJDIR) *.$(O) *.tab.c *.tab.h
%endif
-rm -f efun_defs.c option_defs.c
-rm -f opcodes.h efunctions.h opc.h efun_protos.h
-rm -f malloc.c mallocwrapper.c
-rm -f func_spec.cpp applies.h applies_table.c files
-rm -f grammar.y comptest* a.out
%ifdef NMAKE
-rm packages\Makefile packages\GNUmakefile packages\packages
-rm packages\*.pdb mudlib\*.pdb
%else
-rm -f packages/Makefile packages/GNUmakefile packages/packages
%endif
# remove everything except configuration
clean: neat
%ifdef NMAKE
-rm -f cc.h edit_source.exe
-rm core y.output testsuite\core testsuite\single\swapfile.*
-rm testsuite\OPCPROF.* testsuite\opc.*
-echo y | del testsuite\tmp\*
-deltree /y testsuite\binaries
-rm testsuite\OBJ_DUMP* testsuite\test_file testsuite\testfile
-rm testsuite\tmp_eval_file.c testsuite\sf.o testsuite\ed_test
-rm testsuite\log\log testsuite\log\debug.log testsuite\log\compile
-rm -f $(DRIVER_BIN).exe $(DRIVER_BIN).old addr_server.exe
%else
-rm -f Makefile.MudOS GNUmakefile.MudOS
-rm -f cc.h edit_source
-rm -f core y.output testsuite/core testsuite/tmp/*
-rm -f testsuite/OPCPROF.* testsuite/opc.*
-rm -rf testsuite/binaries testsuite/single/swapfile.*
-rm -f testsuite/OBJ_DUMP* testsuite/test_file testsuite/testfile
-rm -f testsuite/tmp_eval_file.c testsuite/sf.o testsuite/ed_test
-rm -f testsuite/log/log testsuite/log/debug.log testsuite/log/compile
-find . -name "*~" -print | xargs rm
-find . -name "*.orig" -print | xargs rm
-find . -name "*.rej" -print | xargs rm
-rm -f *.ln tags TAGS
-rm -f $(DRIVER_BIN) $(DRIVER_BIN).old addr_server portbind
%endif
%ifdef GNU
-rm -f Dependencies tmpdepend
-touch Dependencies
include Dependencies
%else
# DO NOT DELETE THIS LINE -- make depend depends on it.
%endif