Search
lxdream.org :: lxdream/test/Makefile.in
lxdream 0.9.1
released Jun 29
Download Now
filename test/Makefile.in
changeset 1024:c67f2d61ab97
prev1018:5942a162e5ef
next1065:bc1cc0c54917
author nkeynes
date Sat Jun 13 00:50:48 2009 +0000 (13 years ago)
permissions -rw-r--r--
last change Build drivers with library dependencies as shared objects (ie plugins)
view annotate diff log raw
     1 srcdir = @srcdir@
     2 top_srcdir = @top_srcdir@
     3 VPATH = @srcdir@
     4 mkdir_p = @mkdir_p@
     6 # host compiler and flags
     7 HOSTCC		= @CC@
     8 HOSTCFLAGS	= @CFLAGS@
    10 SH4CC		= @SHCC@
    11 SH4INC          = -I$(srcdir)/include
    12 SH4CFLAGS	= $(SH4INC) -D_arch_dreamcast -D_arch_sub_pristine \
    13                   -O2 -fno-builtin -fno-strict-aliasing -ml -m4-single-only \
    14                   -fno-optimize-sibling-calls
    15 SH4LD		= @SHLD@
    16 SH4LDFLAGS      = -fno-builtin -fno-strict-aliasing  -ml -m4-single-only \
    17                   -Wl,-T$(srcdir)/dc.x -nostartfiles -nostdlib -L$(srcdir)/lib
    18 SH4LIBS         = -Wl,--start-group -lc -lgcc -lm -Wl,--end-group
    19 SH4OBJCOPY      = @SHOBJCOPY@ -O binary
    21 SHARED_OBJECTS = dmac.so asic.so lib.so timer.so testdata.so interrupt.so
    23 ARMCC		= @ARMCC@
    24 ARMCFLAGS	= -O2 -fno-builtin -fno-strict-aliasing -mlittle-endian
    25 ARMLD		= @ARMLD@
    26 ARMLDFLAGS      = -Wl,-T$(srcdir)/aica.x -nostartfiles -mlittle-endian \
    27                   -nostdlib -L$(srcdir)/lib-arm
    28 ARMLIBS         = -Wl,--start-group -lc -lgcc -lm -Wl,--end-group
    29 ARMOBJCOPY	= @ARMOBJCOPY@ -O binary
    31 RUNTEST		= ../src/lxdream -c $(srcdir)/lxdream.rc -puH -A null
    32 RUNTESTX	= ../src/lxdream -c $(srcdir)/lxdream.rc -xpuH -A null
    34 BUILD_SYSTEST_FALSE = @BUILD_SYSTEST_FALSE@
    35 BUILD_SYSTEST_TRUE = @BUILD_SYSTEST_TRUE@
    37 %.ao: %.c
    38 	$(ARMCC) $(ARMCFLAGS) -o $@ -c $< 
    40 %.ao: %.s
    41 	$(ARMCC) $(ARMCFLAGS) -o $@ -c $< 
    43 %.so: %.c
    44 	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< 
    46 %.so: %.ac
    47 	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< 
    49 %.so: %.s
    50 	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< -Wa,-I$(srcdir)
    52 %.so: %.S
    53 	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< 
    55 %.o: %.c
    56 	$(HOSTCC) $(HOSTCFLAGS) -o $@ -c $<
    58 %.arm: %.ao arm_crt0.ao
    59 	$(ARMCC) -Wl,-Ttext,0x00000000 -nostartfiles -nostdlib -e reset -o $@ arm_crt0.ao $< -lgcc
    62 %.bin: %.arm
    63 	$(ARMOBJCOPY) -O binary $< $@
    65 %.aso: %.bin bin2c
    66 	./bin2c $< $<.c
    67 	$(SH4CC) $(SH4CFLAGS) -o $@ -c $<.c
    69 all:
    71 @BUILD_SYSTEST_TRUE@check: build-tests
    72 @BUILD_SYSTEST_TRUE@	$(RUNTEST) testsh4
    73 @BUILD_SYSTEST_TRUE@	$(RUNTESTX) testsh4
    74 @BUILD_SYSTEST_TRUE@	$(RUNTEST) testmmu
    75 @BUILD_SYSTEST_TRUE@	$(RUNTEST) testregs
    76 @BUILD_SYSTEST_TRUE@	cat $(srcdir)/testta.data $(srcdir)/testta2.data $(srcdir)/testta3.data $(srcdir)/testta4.data $(srcdir)/testta5.data | $(RUNTEST) testta
    77 @BUILD_SYSTEST_TRUE@	cat $(srcdir)/testsort.data | $(RUNTEST) testta
    78 #	$(RUNTEST) testide -d ../disc/test.nrg
    81 build-tests: testsh4 testmmu testmath testide testta testregs testrend testdisp testspu testmmu
    83 lib/crt0.so: lib/crt0.s
    84 	$(mkdir_p) lib
    85 	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< 
    87 lib-arm/crt0.ao: lib-arm/crt0.s
    88 	$(mkdir_p) lib-arm
    89 	$(ARMCC) $(ARMCFLAGS) -o $@ -c $< 
    92 testsh4: lib/crt0.so sh4/testsh4.so timer.so interrupt.so \
    93 	 sh4/add.so sh4/addc.so sh4/addv.so sh4/and.so sh4/andi.so \
    94 	 sh4/bf.so sh4/bsr.so sh4/bt.so sh4/cmp.so sh4/cmpstr.so \
    95 	 sh4/div0.so sh4/div1.so sh4/float.so sh4/fmov.so sh4/ftrc.so \
    96 	 sh4/ldc.so sh4/mac.so \
    97 	 sh4/rot.so sh4/shl.so sh4/shld.so sh4/sub.so sh4/subc.so \
    98 	 sh4/trapa.so sh4/tas.so sh4/xtrct.so \
    99 	 sh4/excslot.so sh4/undef.so sh4/tlb.so sh4/vmexit.so
   100 	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
   101 	$(SH4OBJCOPY) testsh4 testsh4.bin
   103 testmmu: lib/crt0.so sh4/testmmu.so sh4/utlb.so sh4/testutlb.so sh4/mmummio.so
   104 	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
   105 	$(SH4OBJCOPY) testmmu testmmu.bin
   108 testide: lib/crt0.so $(SHARED_OBJECTS) testide.so ide.so
   109 	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
   110 	$(SH4OBJCOPY) testide testide.bin
   112 testmath: lib/crt0.so $(SHARED_OBJECTS) testmath.so math.so
   113 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   115 testregs: lib/crt0.so $(SHARED_OBJECTS) testregs.so ide.so
   116 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   117 	$(SH4OBJCOPY) testregs testregs.bin
   119 testta: lib/crt0.so $(SHARED_OBJECTS) testta.so pvr.so
   120 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   121 	$(SH4OBJCOPY) testta testta.bin
   123 testaica: lib/crt0.so $(SHARED_OBJECTS) testaica.so 
   124 	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
   125 	$(SH4OBJCOPY) testaica testaica.bin
   127 testrend: lib/crt0.so $(SHARED_OBJECTS) testrend.so pvr.so
   128 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   129 	$(SH4OBJCOPY) testrend testrend.bin
   131 testblend: lib/crt0.so $(SHARED_OBJECTS) testblend.so pvr.so
   132 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   133 	$(SH4OBJCOPY) testblend testblend.bin
   135 testdisp: lib/crt0.so $(SHARED_OBJECTS) testdisp.so pvr.so
   136 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   137 	$(SH4OBJCOPY) testdisp testdisp.bin
   139 testyuv: lib/crt0.so $(SHARED_OBJECTS) testyuv.so pvr.so
   140 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   141 	$(SH4OBJCOPY) testyuv testyuv.bin
   143 testspu: lib/crt0.so $(SHARED_OBJECTS) testspu.so
   144 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   145 	$(SH4OBJCOPY) testspu testspu.bin
   147 testg2: lib/crt0.so $(SHARED_OBJECTS) testg2.so
   148 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   149 	$(SH4OBJCOPY) testg2 testg2.bin
   151 readdata: lib/crt0.so $(SHARED_OBJECTS) readdata.so
   152 	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
   154 rend: lib/crt0.so $(SHARED_OBJECTS) rendload.so pvr.so
   155 	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
   156 	$(SH4OBJCOPY) rend rend.bin
   158 testFF10: lib/crt0.so $(SHARED_OBJECTS) testFF10.so
   159 	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
   160 	$(SH4OBJCOPY) testFF10 testFF10.bin
   162 .PHONY : clean
   163 clean:
   164 	rm -f *.o *.so *.ao *.ac *.bin sh4/*.so lib/*.so lib-arm/*.ao mapleid \
   165 	   readmem dumpasic testsh4 testta testdisp testregs testide testmath \
   166 	   testmmu testaica testrend testspu ide dcflash.rom
   168 distclean: clean
   169 	rm -f Makefile
   171 install:
   173 installcheck:
   175 uninstall:
   177 DISTFILES = asic.c asic.h bin2c.c dma.h dmac.c ide.c ide.h interrupt.s \
   178         lib.c lib.h math.s pvr.c pvr.h rendload.c sh4/add.s sh4/addc.s \
   179         sh4/addv.s sh4/and.s sh4/andi.s sh4/bf.s sh4/bsr.s sh4/bt.s sh4/cmp.s \
   180         sh4/cmpstr.s sh4/div0.s sh4/div1.s sh4/excslot.s sh4/float.s sh4/fmov.s \
   181         sh4/ftrc.s sh4/inc.s sh4/mac.s sh4/ldc.s sh4/rot.s sh4/shl.s sh4/shld.s sh4/sub.s \
   182         sh4/subc.s sh4/tas.s sh4/testsh4.c sh4/tlb.s sh4/vmexit.s sh4/trapa.s sh4/undef.s \
   183         sh4/xtrct.s sh4/utlb.c sh4/utlb.h sh4/testutlb.s testdata.c testdata.h testdisp.c \
   184         testide.c testmath.c testaica.c sh4/testmmu.c sh4/mmummio.c testregs.c testrend.c \
   185         testspu.c testta.c testyuv.c timer.c timer.h \
   186         testta.data testta2.data testta3.data testta4.data testta5.data testsort.data \
   187         lxdream.rc dc.x lib/crt0.s lib/libc.a lib/libm.a lib/newlib-1.8.2-dc.patch \
   188         aica.x lib-arm/libc.a lib-arm/libm.a lib-arm/crt0.s \
   189 	include/_ansi.h include/_syslist.h include/ar.h include/assert.h include/ctype.h \
   190 	include/dirent.h include/errno.h include/fastmath.h include/fcntl.h include/grp.h \
   191 	include/ieeefp.h include/locale.h include/machine/fastmath.h include/machine/ieeefp.h \
   192 	include/machine/setjmp-dj.h include/machine/setjmp.h include/machine/time.h \
   193 	include/machine/types.h include/malloc.h include/math.h include/paths.h \
   194 	include/process.h include/pwd.h include/reent.h include/regdef.h include/setjmp.h \
   195 	include/signal.h include/stdio.h include/stdlib.h include/string.h include/sys/_types.h \
   196 	include/sys/config.h include/sys/dirent.h include/sys/errno.h include/sys/fcntl.h \
   197 	include/sys/file.h include/sys/param.h include/sys/reent.h include/sys/resource.h \
   198 	include/sys/signal.h include/sys/stat-dj.h include/sys/stat.h include/sys/time.h \
   199 	include/sys/timeb.h include/sys/times.h include/sys/types.h include/sys/unistd.h \
   200 	include/sys/utime.h include/sys/wait.h include/termios.h include/time.h \
   201 	include/unctrl.h include/unistd.h include/utime.h include/utmp.h \
   202 @BUILD_SYSTEST_TRUE@	testsh4 testregs testmmu testta testaica 
   206 distdir: $(DISTFILES)
   207 	$(mkdir_p) $(distdir)/sh4 $(distdir)/lib $(distdir)/include
   208 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
   209 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
   210 	list='$(DISTFILES)'; for file in $$list; do \
   211 	  case $$file in \
   212 	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
   213 	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
   214 	  esac; \
   215 	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
   216 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
   217 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
   218 	    dir="/$$dir"; \
   219 	    $(mkdir_p) "$(distdir)$$dir"; \
   220 	  else \
   221 	    dir=''; \
   222 	  fi; \
   223 	  if test -d $$d/$$file; then \
   224 	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
   225 	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
   226 	    fi; \
   227 	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
   228 	  else \
   229 	    test -f $(distdir)/$$file \
   230 	    || cp -p $$d/$$file $(distdir)/$$file \
   231 	    || exit 1; \
   232 	  fi; \
   233 	done
   235 dvi:
.