diff options
| author | grischka <grischka> | 2009-04-18 14:31:35 +0200 |
|---|---|---|
| committer | grischka <grischka> | 2009-04-18 15:08:03 +0200 |
| commit | 5829791ffaca0178fbbd4111fbdf8c7cbd6de27f (patch) | |
| tree | d41bf8392e3059cc21c58b5193b5f81fb083ed71 /Makefile | |
| parent | ea5e81bd6a3376232bf4747b2fa2e0a91c19b337 (diff) | |
| download | tinycc-5829791ffaca0178fbbd4111fbdf8c7cbd6de27f.tar.gz tinycc-5829791ffaca0178fbbd4111fbdf8c7cbd6de27f.tar.bz2 | |
fix makefiles etc for subdirs
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 391 |
1 files changed, 145 insertions, 246 deletions
@@ -1,7 +1,9 @@ # # Tiny C Compiler Makefile # -include config.mak + +TOP ?= . +include $(TOP)/config.mak TARGET= CFLAGS+=-g -Wall @@ -33,312 +35,195 @@ CFLAGS+=-m386 -malign-functions=0 else CFLAGS+=-march=i386 -falign-functions=0 ifneq ($(GCC_MAJOR),3) -CFLAGS+=-Wno-pointer-sign -Wno-sign-compare +CFLAGS+=-Wno-pointer-sign -Wno-sign-compare -D_FORTIFY_SOURCE=0 endif endif endif -DISAS=objdump -d -INSTALL=install +ifeq ($(TOP),.) -ifdef CONFIG_WIN32 PROGS=tcc$(EXESUF) -ifdef CONFIG_CROSS -PROGS+=c67-tcc$(EXESUF) arm-tcc-fpa$(EXESUF) arm-tcc-fpa-ld$(EXESUF) arm-tcc-vfp$(EXESUF) arm-tcc-vfp-eabi$(EXESUF) -endif + +ARM_CROSS = arm-tcc-fpa$(EXESUF) arm-tcc-fpa-ld$(EXESUF) arm-tcc-vfp$(EXESUF) arm-tcc-vfp-eabi$(EXESUF) +I386_CROSS = i386-tcc$(EXESUF) +WIN32_CROSS = i386-win32-tcc$(EXESUF) +C67_CROSS = c67-tcc$(EXESUF) +X64_CROSS = x86_64-tcc$(EXESUF) + +ifdef CONFIG_WIN32 PROGS+=tiny_impdef$(EXESUF) tiny_libmaker$(EXESUF) -else -ifeq ($(ARCH),i386) -PROGS=tcc$(EXESUF) -ifdef CONFIG_CROSS -PROGS+=arm-tcc-fpa$(EXESUF) arm-tcc-fpa-ld$(EXESUF) arm-tcc-vfp$(EXESUF) arm-tcc-vfp-eabi$(EXESUF) -endif -endif -ifeq ($(ARCH),arm) -PROGS=tcc$(EXESUF) -ifdef CONFIG_CROSS -PROGS+=i386-tcc$(EXESUF) -endif +PROGS_CROSS=$(I386_CROSS) $(X64_CROSS) $(ARM_CROSS) $(C67_CROSS) + +else ifeq ($(ARCH),i386) +PROGS_CROSS=$(X64_CROSS) $(WIN32_CROSS) $(ARM_CROSS) $(C67_CROSS) + +else ifeq ($(ARCH),arm) +PROGS_CROSS=$(I386_CROSS) $(X64_CROSS) $(WIN32_CROSS) $(C67_CROSS) + +else ifeq ($(ARCH),x86-64) +PROGS_CROSS=$(I386_CROSS) $(WIN32_CROSS) $(ARM_CROSS) $(C67_CROSS) endif + ifdef CONFIG_CROSS -PROGS+=c67-tcc$(EXESUF) i386-win32-tcc$(EXESUF) -endif -endif -ifeq ($(ARCH),x86-64) -PROGS=tcc$(EXESUF) +PROGS+=$(PROGS_CROSS) endif -ifdef CONFIG_USE_LIBGCC -LIBTCC1= -else +ifndef CONFIG_USE_LIBGCC LIBTCC1=libtcc1.a endif -# run local version of tcc with local libraries and includes -TCC=./tcc -B. -I. - -all: $(PROGS) \ - $(LIBTCC1) $(BCHECK_O) tcc-doc.html tcc.1 libtcc.a \ - libtcc_test$(EXESUF) - -Makefile: config.mak +all: $(PROGS) $(LIBTCC1) $(BCHECK_O) libtcc.a tcc-doc.html tcc.1 libtcc_test$(EXESUF) -# auto test +TCC_CORE_FILES = tcc.c tccelf.c tccasm.c tcctok.h libtcc.h config.h -test: test.ref test.out - @if diff -u test.ref test.out ; then echo "Auto Test OK"; fi - -tcctest.ref: tcctest.c - $(CC) $(CFLAGS) -w -I. -o $@ $< +# Host Tiny C Compiler +ifdef CONFIG_WIN32 +tcc$(EXESUF): $(TCC_CORE_FILES) i386-gen.c i386-asm.c i386-asm.h tccpe.c + $(CC) -o $@ $< -DTCC_TARGET_PE $(CFLAGS) $(LIBS) -test.ref: tcctest.ref - ./tcctest.ref > $@ +else ifeq ($(ARCH),i386) +tcc$(EXESUF): $(TCC_CORE_FILES) i386-gen.c i386-asm.c i386-asm.h + $(CC) -o $@ $< $(CFLAGS) $(LIBS) -test.out: tcc tcctest.c - $(TCC) -run tcctest.c > $@ +else ifeq ($(ARCH),x86-64) +tcc$(EXESUF): $(TCC_CORE_FILES) x86_64-gen.c + $(CC) -o $@ $< -DTCC_TARGET_X86_64 $(CFLAGS) $(LIBS) -run: tcc tcctest.c - $(TCC) -run tcctest.c +else ifeq ($(ARCH),arm) +ARMFLAGS = $(if $(wildcard /lib/ld-linux.so.3),-DTCC_ARM_EABI) +ARMFLAGS += $(if $(shell grep -l "^Features.* \(vfp\|iwmmxt\) " /proc/cpuinfo),-DTCC_ARM_VFP) +tcc$(EXESUF): $(TCC_CORE_FILES) arm-gen.c + $(CC) -o $@ $< -DTCC_TARGET_ARM $(ARMFLAGS) $(CFLAGS) $(LIBS) +endif -# iterated test2 (compile tcc then compile tcctest.c !) -test2: tcc tcc.c tcctest.c test.ref - $(TCC) -run $(TARGET) tcc.c -B. -I. -run tcctest.c > test.out2 - @if diff -u test.ref test.out2 ; then echo "Auto Test2 OK"; fi +# Cross Tiny C Compilers +i386-tcc$(EXESUF): $(TCC_CORE_FILES) i386-gen.c i386-asm.c i386-asm.h + $(CC) -o $@ $< $(CFLAGS) $(LIBS) -# iterated test3 (compile tcc then compile tcc then compile tcctest.c !) -test3: tcc tcc.c tcctest.c test.ref - $(TCC) -run $(TARGET) tcc.c -B. -I. -run $(TARGET) tcc.c -B. -I. -run tcctest.c > test.out3 - @if diff -u test.ref test.out3 ; then echo "Auto Test3 OK"; fi +i386-win32-tcc$(EXESUF): $(TCC_CORE_FILES) i386-gen.c i386-asm.c i386-asm.h tccpe.c + $(CC) -o $@ $< -DTCC_TARGET_PE $(CFLAGS) $(LIBS) -# binary output test -test4: tcc test.ref -# dynamic output - $(TCC) -o tcctest1 tcctest.c - ./tcctest1 > test1.out - @if diff -u test.ref test1.out ; then echo "Dynamic Auto Test OK"; fi -# static output - $(TCC) -static -o tcctest2 tcctest.c - ./tcctest2 > test2.out - @if diff -u test.ref test2.out ; then echo "Static Auto Test OK"; fi -# object + link output - $(TCC) -c -o tcctest3.o tcctest.c - $(TCC) -o tcctest3 tcctest3.o - ./tcctest3 > test3.out - @if diff -u test.ref test3.out ; then echo "Object Auto Test OK"; fi -# dynamic output + bound check - $(TCC) -b -o tcctest4 tcctest.c - ./tcctest4 > test4.out - @if diff -u test.ref test4.out ; then echo "BCheck Auto Test OK"; fi +x86_64-tcc$(EXESUF): $(TCC_CORE_FILES) x86_64-gen.c i386-asm.c i386-asm.h + $(CC) -o $@ $< -DTCC_TARGET_X86_64 $(CFLAGS) $(LIBS) -# memory and bound check auto test -BOUNDS_OK = 1 4 8 10 -BOUNDS_FAIL= 2 5 7 9 11 12 13 +c67-tcc$(EXESUF): $(TCC_CORE_FILES) c67-gen.c tcccoff.c + $(CC) -o $@ $< -DTCC_TARGET_C67 $(CFLAGS) $(LIBS) -btest: boundtest.c tcc - @for i in $(BOUNDS_OK); do \ - if $(TCC) -b -run boundtest.c $$i ; then \ - /bin/true ; \ - else\ - echo Failed positive test $$i ; exit 1 ; \ - fi ;\ - done ;\ - for i in $(BOUNDS_FAIL); do \ - if $(TCC) -b -run boundtest.c $$i ; then \ - echo Failed negative test $$i ; exit 1 ;\ - else\ - /bin/true ; \ - fi\ - done ;\ - echo Bound test OK +arm-tcc-fpa$(EXESUF): $(TCC_CORE_FILES) arm-gen.c + $(CC) -o $@ $< -DTCC_TARGET_ARM $(CFLAGS) $(LIBS) -# speed test -speed: tcc ex2 ex3 - time ./ex2 1238 2 3 4 10 13 4 - time ./tcc -I. ./ex2.c 1238 2 3 4 10 13 4 - time ./ex3 35 - time ./tcc -I. ./ex3.c 35 +arm-tcc-fpa-ld$(EXESUF): $(TCC_CORE_FILES) arm-gen.c + $(CC) -o $@ $< -DTCC_TARGET_ARM -DLDOUBLE_SIZE=12 $(CFLAGS) $(LIBS) -ex2: ex2.c - $(CC) $(CFLAGS) -o $@ $< +arm-tcc-vfp$(EXESUF): $(TCC_CORE_FILES) arm-gen.c + $(CC) -o $@ $< -DTCC_TARGET_ARM -DTCC_ARM_VFP $(CFLAGS) $(LIBS) -ex3: ex3.c - $(CC) $(CFLAGS) -o $@ $< +arm-tcc-vfp-eabi$(EXESUF): $(TCC_CORE_FILES) arm-gen.c + $(CC) -o $@ $< -DTCC_TARGET_ARM -DTCC_ARM_EABI $(CFLAGS) $(LIBS) -# Host Tiny C Compiler +# libtcc generation and test +libtcc.o: tcc.c i386-gen.c ifdef CONFIG_WIN32 -tcc$(EXESUF): tcc.c i386-gen.c tccelf.c tccasm.c i386-asm.c tcctok.h libtcc.h i386-asm.h tccpe.c - $(CC) $(CFLAGS) -DTCC_TARGET_PE -o $@ $< $(LIBS) + $(CC) -o $@ -c $< -DTCC_TARGET_PE -DLIBTCC $(CFLAGS) else -ifeq ($(ARCH),i386) -tcc$(EXESUF): tcc.c i386-gen.c tccelf.c tccasm.c i386-asm.c tcctok.h libtcc.h i386-asm.h - $(CC) $(CFLAGS) -o $@ $< $(LIBS) + $(CC) -o $@ -c $< $(TARGET) -DLIBTCC $(CFLAGS) endif -ifeq ($(ARCH),arm) -ARMFLAGS = $(if $(wildcard /lib/ld-linux.so.3),-DTCC_ARM_EABI) -ARMFLAGS += $(if $(shell grep -l "^Features.* \(vfp\|iwmmxt\) " /proc/cpuinfo),-DTCC_ARM_VFP) -tcc$(EXESUF): tcc.c arm-gen.c tccelf.c tccasm.c tcctok.h libtcc.h - $(CC) $(CFLAGS) -DTCC_TARGET_ARM $(ARMFLAGS) -o $@ $< $(LIBS) -endif -ifeq ($(ARCH),x86-64) -tcc$(EXESUF): tcc.c tccelf.c tccasm.c tcctok.h libtcc.h x86_64-gen.c - $(CC) $(CFLAGS) -DTCC_TARGET_X86_64 -o $@ $< $(LIBS) -endif -endif - -# Cross Tiny C Compilers -i386-tcc$(EXESUF): tcc.c i386-gen.c tccelf.c tccasm.c i386-asm.c tcctok.h libtcc.h i386-asm.h - $(CC) $(CFLAGS) -o $@ $< $(LIBS) - -c67-tcc$(EXESUF): tcc.c c67-gen.c tccelf.c tccasm.c tcctok.h libtcc.h tcccoff.c - $(CC) $(CFLAGS) -DTCC_TARGET_C67 -o $@ $< $(LIBS) - -arm-tcc-fpa$(EXESUF): tcc.c arm-gen.c tccelf.c tccasm.c tcctok.h libtcc.h - $(CC) $(CFLAGS) -DTCC_TARGET_ARM -o $@ $< $(LIBS) - -arm-tcc-fpa-ld$(EXESUF): tcc.c arm-gen.c tccelf.c tccasm.c tcctok.h libtcc.h - $(CC) $(CFLAGS) -DTCC_TARGET_ARM -DLDOUBLE_SIZE=12 -o $@ $< $(LIBS) +libtcc.a: libtcc.o + $(AR) rcs $@ $^ -arm-tcc-vfp$(EXESUF): tcc.c arm-gen.c tccelf.c tccasm.c tcctok.h libtcc.h - $(CC) $(CFLAGS) -DTCC_TARGET_ARM -DTCC_ARM_VFP -o $@ $< $(LIBS) +libtcc_test$(EXESUF): tests/libtcc_test.c libtcc.a + $(CC) -o $@ $^ -I. $(CFLAGS) $(LIBS) -arm-tcc-vfp-eabi$(EXESUF): tcc.c arm-gen.c tccelf.c tccasm.c tcctok.h libtcc.h - $(CC) $(CFLAGS) -DTCC_TARGET_ARM -DTCC_ARM_EABI -o $@ $< $(LIBS) +libtest: libtcc_test$(EXESUF) $(LIBTCC1) + ./libtcc_test$(EXESUF) lib_path=. -i386-win32-tcc$(EXESUF): tcc.c i386-gen.c tccelf.c tccasm.c i386-asm.c tcctok.h libtcc.h i386-asm.h tccpe.c - $(CC) $(CFLAGS) -DTCC_TARGET_PE -o $@ $< $(LIBS) +# profiling version +tcc_p: tcc.c + $(CC) -o $@ $< $(CFLAGS_P) $(LIBS_P) # windows utilities tiny_impdef$(EXESUF): win32/tools/tiny_impdef.c - $(CC) $(CFLAGS) -o $@ $< -lkernel32 + $(CC) -o $@ $< $(CFLAGS) tiny_libmaker$(EXESUF): win32/tools/tiny_libmaker.c - $(CC) $(CFLAGS) -o $@ $< -lkernel32 + $(CC) -o $@ $< $(CFLAGS) # TinyCC runtime libraries +LIBTCC1_OBJS=libtcc1.o +LIBTCC1_CC=$(CC) +VPATH+=lib ifdef CONFIG_WIN32 # for windows, we must use TCC because we generate ELF objects -LIBTCC1_OBJS=$(addprefix win32/lib/, crt1.o wincrt1.o dllcrt1.o dllmain.o chkstk.o) libtcc1.o +LIBTCC1_OBJS+=crt1.o wincrt1.o dllcrt1.o dllmain.o chkstk.o LIBTCC1_CC=./tcc.exe -Bwin32 -DTCC_TARGET_PE -else -LIBTCC1_OBJS=libtcc1.o -LIBTCC1_CC=$(CC) +VPATH+=win32/lib endif ifeq ($(ARCH),i386) LIBTCC1_OBJS+=alloca86.o alloca86-bt.o endif %.o: %.c - $(LIBTCC1_CC) -O2 -Wall -c -o $@ $< + $(LIBTCC1_CC) -o $@ -c $< -O2 -Wall %.o: %.S - $(LIBTCC1_CC) -c -o $@ $< + $(LIBTCC1_CC) -o $@ -c $< libtcc1.a: $(LIBTCC1_OBJS) $(AR) rcs $@ $^ bcheck.o: bcheck.c - $(CC) -O2 -Wall -c -o $@ $< + $(CC) -o $@ -c $< -O2 -Wall -install: tcc_install libinstall +# install +TCC_INCLUDES = stdarg.h stddef.h stdbool.h float.h varargs.h tcclib.h +INSTALL=install -tcc_install: $(PROGS) tcc.1 $(LIBTCC1) $(BCHECK_O) tcc-doc.html - mkdir -p "$(DESTDIR)$(bindir)" - $(INSTALL) -s -m755 $(PROGS) "$(DESTDIR)$(bindir)" ifndef CONFIG_WIN32 - mkdir -p "$(DESTDIR)$(mandir)/man1" - $(INSTALL) tcc.1 "$(DESTDIR)$(mandir)/man1" +install: $(PROGS) $(LIBTCC1) $(BCHECK_O) libtcc.a tcc.1 tcc-doc.html + mkdir -p "$(bindir)" + $(INSTALL) -s -m755 $(PROGS) "$(bindir)" + mkdir -p "$(mandir)/man1" + $(INSTALL) tcc.1 "$(mandir)/man1" + mkdir -p "$(tccdir)" + mkdir -p "$(tccdir)/include" +ifneq ($(LIBTCC1),) + $(INSTALL) -m644 $(LIBTCC1) "$(tccdir)" endif - mkdir -p "$(DESTDIR)$(tccdir)" - mkdir -p "$(DESTDIR)$(tccdir)/include" -ifdef CONFIG_WIN32 - mkdir -p "$(DESTDIR)$(tccdir)/lib" - $(INSTALL) -m644 $(LIBTCC1) win32/lib/*.def "$(DESTDIR)$(tccdir)/lib" - cp -r win32/include/. "$(DESTDIR)$(tccdir)/include" - cp -r win32/examples/. "$(DESTDIR)$(tccdir)/examples" -else -ifndef CONFIG_USE_LIBGCC - $(INSTALL) -m644 libtcc1.a "$(DESTDIR)$(tccdir)" -endif -ifneq ($(ARCH),x86-64) - $(INSTALL) -m644 $(BCHECK_O) "$(DESTDIR)$(tccdir)" -endif - $(INSTALL) -m644 stdarg.h stddef.h stdbool.h float.h varargs.h \ - tcclib.h "$(DESTDIR)$(tccdir)/include" +ifneq ($(BCHECK_O),) + $(INSTALL) -m644 $(BCHECK_O) "$(tccdir)" endif - mkdir -p "$(DESTDIR)$(docdir)" - $(INSTALL) -m644 tcc-doc.html "$(DESTDIR)$(docdir)" -ifdef CONFIG_WIN32 - $(INSTALL) -m644 win32/tcc-win32.txt "$(DESTDIR)$(docdir)" -endif - -clean: - rm -f *~ *.o *.a tcc tcct tcc_g tcctest.ref *.bin *.i ex2 \ - core gmon.out test.out test.ref a.out tcc_p \ - *.exe *.lib tcc.pod libtcc_test \ - tcctest[1234] test[1234].out $(PROGS) win32/lib/*.o + $(INSTALL) -m644 $(addprefix include/,$(TCC_INCLUDES)) "$(tccdir)/include" + mkdir -p "$(docdir)" + $(INSTALL) -m644 tcc-doc.html "$(docdir)" + mkdir -p "$(libdir)" + $(INSTALL) -m644 libtcc.a "$(libdir)" + mkdir -p "$(includedir)" + $(INSTALL) -m644 libtcc.h "$(includedir)" -distclean: clean - rm -f config.h config.mak config.texi - -# profiling version -tcc_p: tcc.c Makefile - $(CC) $(CFLAGS_P) -o $@ $< $(LIBS_P) +uninstall: + rm -fv $(foreach P,$(PROGS),"$(bindir)/$P") + rm -fv $(foreach P,$(LIBTCC1) $(BCHECK_O),"$(tccdir)/$P") + rm -fv $(foreach P,$(TCC_INCLUDES),"$(tccdir)/include/$P") + rm -fv "$(docdir)/tcc-doc.html" "$(mandir)/man1/tcc.1" + rm -fv "$(libdir)/libtcc.a" "$(includedir)/libtcc.h" -# libtcc generation and example -libinstall: libtcc.a - mkdir -p "$(DESTDIR)$(libdir)" - $(INSTALL) -m644 libtcc.a "$(DESTDIR)$(libdir)" - mkdir -p "$(DESTDIR)$(includedir)" - $(INSTALL) -m644 libtcc.h "$(DESTDIR)$(includedir)" - -libtcc.o: tcc.c i386-gen.c Makefile -ifdef CONFIG_WIN32 - $(CC) $(CFLAGS) -DTCC_TARGET_PE -DLIBTCC -c -o $@ $< else - $(CC) $(CFLAGS) $(TARGET) -DLIBTCC -c -o $@ $< +install: $(PROGS) $(LIBTCC1) libtcc.a tcc-doc.html + mkdir -p "$(tccdir)" + mkdir -p "$(tccdir)/lib" + mkdir -p "$(tccdir)/include" + mkdir -p "$(tccdir)/examples" + mkdir -p "$(tccdir)/doc" + mkdir -p "$(tccdir)/libtcc" + $(INSTALL) -s -m755 $(PROGS) "$(tccdir)" + $(INSTALL) -m644 $(LIBTCC1) win32/lib/*.def "$(tccdir)/lib" + cp -r win32/include/. "$(tccdir)/include" + cp -r win32/examples/. "$(tccdir)/examples" + $(INSTALL) -m644 $(addprefix include/,$(TCC_INCLUDES)) "$(tccdir)/include" + $(INSTALL) -m644 tcc-doc.html win32/tcc-win32.txt"$(tccdir)/doc" + $(INSTALL) -m644 libtcc.a libtcc.h "$(tccdir)/libtcc" endif -libtcc.a: libtcc.o - $(AR) rcs $@ $^ - -libtcc_test$(EXESUF): libtcc_test.c libtcc.a - $(CC) $(CFLAGS) -o $@ $< libtcc.a $(LIBS) - -libtest: libtcc_test - ./libtcc_test lib_path=. - -# targets for development - -%.bin: %.c tcc - $(TCC) -g -o $@ $< - $(DISAS) $@ - -instr: instr.o - objdump -d instr.o - -# tiny assembler testing - -asmtest.ref: asmtest.S - $(CC) -c -o asmtest.ref.o asmtest.S - objdump -D asmtest.ref.o > $@ - -# XXX: we compute tcc.c to go faster during development ! -asmtest.out: asmtest.S tcc -# ./tcc tcc.c -c asmtest.S -#asmtest.out: asmtest.S tcc - ./tcc -c asmtest.S - objdump -D asmtest.o > $@ - -asmtest: asmtest.out asmtest.ref - @if diff -u --ignore-matching-lines="file format" asmtest.ref asmtest.out ; then echo "ASM Auto Test OK"; fi - -instr.o: instr.S - $(CC) -O2 -Wall -g -c -o $@ $< - -cache: tcc_g - cachegrind ./tcc_g -o /tmp/linpack -lm bench/linpack.c - vg_annotate tcc.c > /tmp/linpack.cache.log - # documentation and man page tcc-doc.html: tcc-doc.texi -texi2html -monolithic -number $< @@ -347,11 +232,25 @@ tcc.1: tcc-doc.texi -./texi2pod.pl $< tcc.pod -pod2man --section=1 --center=" " --release=" " tcc.pod > $@ -FILE=tcc-$(shell cat VERSION) - # tar release (use 'make -k tar' on a checkouted tree) +TCC-VERSION=tcc-$(shell cat VERSION) tar: - rm -rf /tmp/$(FILE) - cp -r . /tmp/$(FILE) - ( cd /tmp ; tar zcvf ~/$(FILE).tar.gz $(FILE) --exclude CVS ) - rm -rf /tmp/$(FILE) + rm -rf /tmp/$(TCC-VERSION) + cp -r . /tmp/$(TCC-VERSION) + ( cd /tmp ; tar zcvf ~/$(TCC-VERSION).tar.gz $(TCC-VERSION) --exclude CVS ) + rm -rf /tmp/$(TCC-VERSION) + +# in tests subdir +test clean : + $(MAKE) -C tests $@ + +# clean +clean: local_clean +local_clean: + rm -vf $(PROGS) tcc_p tcc.pod *~ *.o *.a *.out libtcc_test$(EXESUF) + +distclean: clean + rm -vf config.h config.mak config.texi tcc.1 tcc-doc.html + +endif +# ifeq ($(TOP),.) |
