Search
lxdream.org :: lxdream/test/Makefile.in
lxdream 0.9.1
released Jun 29
Download Now
filename test/Makefile.in
changeset 894:1ddd5616c5af
prev823:8a592668322f
next976:e57a25d9eb7d
author nkeynes
date Thu Dec 11 23:26:03 2008 +0000 (15 years ago)
permissions -rw-r--r--
last change Disable the generational translation cache - I've got no evidence that it
actually helps performance, and it simplifies things to get rid of it (in
particular, translated code doesn't have to worry about being moved now).
file annotate diff log raw
nkeynes@731
     1
srcdir = @srcdir@
nkeynes@731
     2
top_srcdir = @top_srcdir@
nkeynes@731
     3
VPATH = @srcdir@
nkeynes@748
     4
mkdir_p = @mkdir_p@
nkeynes@731
     5
nkeynes@521
     6
# host compiler and flags
nkeynes@521
     7
HOSTCC		= @CC@
nkeynes@521
     8
HOSTCFLAGS	= @CFLAGS@
nkeynes@731
     9
nkeynes@521
    10
SH4CC		= @SHCC@
nkeynes@731
    11
SH4INC          = -I$(srcdir)/include
nkeynes@521
    12
SH4CFLAGS	= $(SH4INC) -D_arch_dreamcast -D_arch_sub_pristine \
nkeynes@521
    13
                  -O2 -fno-builtin -fno-strict-aliasing -ml -m4-single-only \
nkeynes@521
    14
                  -fno-optimize-sibling-calls
nkeynes@521
    15
SH4LD		= @SHLD@
nkeynes@521
    16
SH4LDFLAGS      = -fno-builtin -fno-strict-aliasing  -ml -m4-single-only \
nkeynes@731
    17
                  -Wl,-T$(srcdir)/dc.x -nostartfiles -nostdlib -L$(srcdir)/lib
nkeynes@521
    18
SH4LIBS         = -Wl,--start-group -lc -lgcc -lm -Wl,--end-group
nkeynes@521
    19
SH4OBJCOPY      = @SHOBJCOPY@ -O binary
nkeynes@731
    20
nkeynes@816
    21
SHARED_OBJECTS = dmac.so asic.so lib.so timer.so testdata.so interrupt.so
nkeynes@816
    22
nkeynes@521
    23
ARMCC		= @ARMCC@
nkeynes@812
    24
ARMCFLAGS	= -O2 -fno-builtin -fno-strict-aliasing -mlittle-endian
nkeynes@521
    25
ARMLD		= @ARMLD@
nkeynes@812
    26
ARMLDFLAGS      = -Wl,-T$(srcdir)/aica.x -nostartfiles -mlittle-endian \
nkeynes@812
    27
                  -nostdlib -L$(srcdir)/lib-arm
nkeynes@812
    28
ARMLIBS         = -Wl,--start-group -lc -lgcc -lm -Wl,--end-group
nkeynes@812
    29
ARMOBJCOPY	= @ARMOBJCOPY@ -O binary
nkeynes@521
    30
nkeynes@731
    31
RUNTEST		= ../src/lxdream -c $(srcdir)/lxdream.rc -puH -A null
nkeynes@731
    32
RUNTESTX	= ../src/lxdream -c $(srcdir)/lxdream.rc -xpuH -A null
nkeynes@521
    33
nkeynes@521
    34
%.ao: %.c
nkeynes@521
    35
	$(ARMCC) $(ARMCFLAGS) -o $@ -c $< 
nkeynes@521
    36
nkeynes@521
    37
%.ao: %.s
nkeynes@521
    38
	$(ARMCC) $(ARMCFLAGS) -o $@ -c $< 
nkeynes@521
    39
nkeynes@521
    40
%.so: %.c
nkeynes@521
    41
	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< 
nkeynes@521
    42
nkeynes@521
    43
%.so: %.ac
nkeynes@521
    44
	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< 
nkeynes@521
    45
nkeynes@521
    46
%.so: %.s
nkeynes@746
    47
	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< -Wa,-I$(srcdir)
nkeynes@521
    48
nkeynes@521
    49
%.so: %.S
nkeynes@521
    50
	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< 
nkeynes@521
    51
nkeynes@521
    52
%.o: %.c
nkeynes@521
    53
	$(HOSTCC) $(HOSTCFLAGS) -o $@ -c $<
nkeynes@521
    54
nkeynes@521
    55
%.arm: %.ao arm_crt0.ao
nkeynes@521
    56
	$(ARMCC) -Wl,-Ttext,0x00000000 -nostartfiles -nostdlib -e reset -o $@ arm_crt0.ao $< -lgcc
nkeynes@521
    57
nkeynes@521
    58
nkeynes@521
    59
%.bin: %.arm
nkeynes@521
    60
	$(ARMOBJCOPY) -O binary $< $@
nkeynes@521
    61
nkeynes@521
    62
%.aso: %.bin bin2c
nkeynes@521
    63
	./bin2c $< $<.c
nkeynes@521
    64
	$(SH4CC) $(SH4CFLAGS) -o $@ -c $<.c
nkeynes@521
    65
nkeynes@680
    66
all:
nkeynes@521
    67
nkeynes@521
    68
check: build-tests
nkeynes@521
    69
	$(RUNTEST) testsh4
nkeynes@586
    70
	$(RUNTESTX) testsh4
nkeynes@550
    71
	$(RUNTEST) testmmu
nkeynes@521
    72
	$(RUNTEST) testregs
nkeynes@794
    73
	cat $(srcdir)/testta.data $(srcdir)/testta2.data $(srcdir)/testta3.data $(srcdir)/testta4.data $(srcdir)/testta5.data | $(RUNTEST) testta
nkeynes@794
    74
	cat $(srcdir)/testsort.data | $(RUNTEST) testta
nkeynes@550
    75
#	$(RUNTEST) testide -d ../disc/test.nrg
nkeynes@521
    76
nkeynes@521
    77
nkeynes@550
    78
build-tests: testsh4 testmath testide testta testregs testrend testdisp testspu testmmu
nkeynes@521
    79
nkeynes@894
    80
lib/crt0.so: lib/crt0.s
nkeynes@894
    81
	$(mkdir_p) lib
nkeynes@894
    82
	$(SH4CC) $(SH4CFLAGS) -o $@ -c $< 
nkeynes@894
    83
nkeynes@894
    84
lib-arm/crt0.ao: lib-arm/crt0.s
nkeynes@894
    85
	$(mkdir_p) lib-arm
nkeynes@894
    86
	$(ARMCC) $(ARMCFLAGS) -o $@ -c $< 
nkeynes@894
    87
nkeynes@894
    88
nkeynes@812
    89
testsh4: lib/crt0.so sh4/testsh4.so timer.so interrupt.so \
nkeynes@521
    90
	 sh4/add.so sh4/addc.so sh4/addv.so sh4/and.so sh4/andi.so \
nkeynes@521
    91
	 sh4/bf.so sh4/bsr.so sh4/bt.so sh4/cmp.so sh4/cmpstr.so \
nkeynes@521
    92
	 sh4/div0.so sh4/div1.so sh4/float.so sh4/fmov.so sh4/ftrc.so \
nkeynes@823
    93
	 sh4/ldc.so sh4/mac.so \
nkeynes@521
    94
	 sh4/rot.so sh4/shl.so sh4/shld.so sh4/sub.so sh4/subc.so \
nkeynes@533
    95
	 sh4/trapa.so sh4/tas.so sh4/xtrct.so \
nkeynes@808
    96
	 sh4/excslot.so sh4/undef.so sh4/tlb.so sh4/vmexit.so
nkeynes@521
    97
	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
nkeynes@521
    98
	$(SH4OBJCOPY) testsh4 testsh4.bin
nkeynes@521
    99
nkeynes@816
   100
testide: lib/crt0.so $(SHARED_OBJECTS) testide.so ide.so
nkeynes@521
   101
	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
nkeynes@521
   102
	$(SH4OBJCOPY) testide testide.bin
nkeynes@521
   103
nkeynes@816
   104
testmmu: lib/crt0.so $(SHARED_OBJECTS) testmmu.so
nkeynes@550
   105
	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
nkeynes@550
   106
	$(SH4OBJCOPY) testmmu testmmu.bin
nkeynes@550
   107
nkeynes@812
   108
testmath: lib/crt0.so $(SHARED_OBJECTS) testmath.so math.so
nkeynes@521
   109
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   110
nkeynes@812
   111
testregs: lib/crt0.so $(SHARED_OBJECTS) testregs.so ide.so
nkeynes@521
   112
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   113
	$(SH4OBJCOPY) testregs testregs.bin
nkeynes@521
   114
nkeynes@816
   115
testta: lib/crt0.so $(SHARED_OBJECTS) testta.so pvr.so
nkeynes@521
   116
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   117
	$(SH4OBJCOPY) testta testta.bin
nkeynes@521
   118
nkeynes@816
   119
testaica: lib/crt0.so $(SHARED_OBJECTS) testaica.so 
nkeynes@812
   120
	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
nkeynes@812
   121
	$(SH4OBJCOPY) testaica testaica.bin
nkeynes@812
   122
nkeynes@816
   123
testrend: lib/crt0.so $(SHARED_OBJECTS) testrend.so pvr.so
nkeynes@521
   124
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   125
	$(SH4OBJCOPY) testrend testrend.bin
nkeynes@521
   126
nkeynes@816
   127
testblend: lib/crt0.so $(SHARED_OBJECTS) testblend.so pvr.so
nkeynes@521
   128
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   129
	$(SH4OBJCOPY) testblend testblend.bin
nkeynes@521
   130
nkeynes@816
   131
testdisp: lib/crt0.so $(SHARED_OBJECTS) testdisp.so pvr.so
nkeynes@521
   132
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   133
	$(SH4OBJCOPY) testdisp testdisp.bin
nkeynes@521
   134
nkeynes@816
   135
testyuv: lib/crt0.so $(SHARED_OBJECTS) testyuv.so pvr.so
nkeynes@521
   136
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   137
	$(SH4OBJCOPY) testyuv testyuv.bin
nkeynes@521
   138
nkeynes@816
   139
testspu: lib/crt0.so $(SHARED_OBJECTS) testspu.so
nkeynes@521
   140
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   141
	$(SH4OBJCOPY) testspu testspu.bin
nkeynes@521
   142
nkeynes@816
   143
testg2: lib/crt0.so $(SHARED_OBJECTS) testg2.so
nkeynes@521
   144
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   145
	$(SH4OBJCOPY) testg2 testg2.bin
nkeynes@521
   146
nkeynes@816
   147
readdata: lib/crt0.so $(SHARED_OBJECTS) readdata.so
nkeynes@521
   148
	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
nkeynes@521
   149
nkeynes@816
   150
rend: lib/crt0.so $(SHARED_OBJECTS) rendload.so pvr.so
nkeynes@521
   151
	$(SH4CC) $(SH4LDFLAGS) $^ -o $@ $(SH4LIBS)
nkeynes@521
   152
	$(SH4OBJCOPY) rend rend.bin
nkeynes@521
   153
nkeynes@816
   154
testFF10: lib/crt0.so $(SHARED_OBJECTS) testFF10.so
nkeynes@521
   155
	$(SH4CC) $(SH4LDFLAGS) $^  -o $@ $(SH4LIBS)
nkeynes@521
   156
	$(SH4OBJCOPY) testFF10 testFF10.bin
nkeynes@521
   157
nkeynes@521
   158
.PHONY : clean
nkeynes@521
   159
clean:
nkeynes@894
   160
	rm -f *.o *.so *.ao *.ac *.bin sh4/*.so lib/*.so lib-arm/*.ao mapleid \
nkeynes@894
   161
	   readmem dumpasic testsh4 testta testdisp testregs testide testmath \
nkeynes@894
   162
	   testmmu testaica testrend testspu ide dcflash.rom
nkeynes@521
   163
nkeynes@712
   164
distclean: clean
nkeynes@712
   165
	rm -f Makefile
nkeynes@748
   166
nkeynes@748
   167
install:
nkeynes@748
   168
nkeynes@748
   169
installcheck:
nkeynes@748
   170
nkeynes@748
   171
uninstall:
nkeynes@748
   172
nkeynes@812
   173
DISTFILES = asic.c asic.h bin2c.c dma.h dmac.c ide.c ide.h interrupt.s \
nkeynes@748
   174
        lib.c lib.h math.s pvr.c pvr.h rendload.c sh4/add.s sh4/addc.s \
nkeynes@748
   175
        sh4/addv.s sh4/and.s sh4/andi.s sh4/bf.s sh4/bsr.s sh4/bt.s sh4/cmp.s \
nkeynes@748
   176
        sh4/cmpstr.s sh4/div0.s sh4/div1.s sh4/excslot.s sh4/float.s sh4/fmov.s \
nkeynes@823
   177
        sh4/ftrc.s sh4/inc.s sh4/mac.s sh4/ldc.s sh4/rot.s sh4/shl.s sh4/shld.s sh4/sub.s \
nkeynes@808
   178
        sh4/subc.s sh4/tas.s sh4/testsh4.c sh4/tlb.s sh4/vmexit.s sh4/trapa.s sh4/undef.s \
nkeynes@894
   179
        sh4/xtrct.s testdata.c testdata.h testdisp.c testide.c testmath.c testaica.c \
nkeynes@748
   180
        testmmu.c testregs.c testrend.c testspu.c testta.c testyuv.c timer.c timer.h \
nkeynes@794
   181
        testta.data testta2.data testta3.data testta4.data testta5.data testsort.data \
nkeynes@812
   182
        lxdream.rc dc.x lib/crt0.s lib/libc.a lib/libm.a lib/newlib-1.8.2-dc.patch \
nkeynes@812
   183
        aica.x lib-arm/libc.a lib-arm/libm.a lib-arm/crt0.s \
nkeynes@748
   184
	include/_ansi.h include/_syslist.h include/ar.h include/assert.h include/ctype.h \
nkeynes@748
   185
	include/dirent.h include/errno.h include/fastmath.h include/fcntl.h include/grp.h \
nkeynes@748
   186
	include/ieeefp.h include/locale.h include/machine/fastmath.h include/machine/ieeefp.h \
nkeynes@748
   187
	include/machine/setjmp-dj.h include/machine/setjmp.h include/machine/time.h \
nkeynes@748
   188
	include/machine/types.h include/malloc.h include/math.h include/paths.h \
nkeynes@748
   189
	include/process.h include/pwd.h include/reent.h include/regdef.h include/setjmp.h \
nkeynes@748
   190
	include/signal.h include/stdio.h include/stdlib.h include/string.h include/sys/_types.h \
nkeynes@748
   191
	include/sys/config.h include/sys/dirent.h include/sys/errno.h include/sys/fcntl.h \
nkeynes@748
   192
	include/sys/file.h include/sys/param.h include/sys/reent.h include/sys/resource.h \
nkeynes@748
   193
	include/sys/signal.h include/sys/stat-dj.h include/sys/stat.h include/sys/time.h \
nkeynes@748
   194
	include/sys/timeb.h include/sys/times.h include/sys/types.h include/sys/unistd.h \
nkeynes@748
   195
	include/sys/utime.h include/sys/wait.h include/termios.h include/time.h \
nkeynes@816
   196
	include/unctrl.h include/unistd.h include/utime.h include/utmp.h \
nkeynes@816
   197
	testsh4 testregs testmmu testta testaica 
nkeynes@748
   198
                        
nkeynes@748
   199
nkeynes@748
   200
nkeynes@816
   201
distdir: $(DISTFILES)
nkeynes@748
   202
	$(mkdir_p) $(distdir)/sh4 $(distdir)/lib $(distdir)/include
nkeynes@748
   203
	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
nkeynes@748
   204
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
nkeynes@748
   205
	list='$(DISTFILES)'; for file in $$list; do \
nkeynes@748
   206
	  case $$file in \
nkeynes@748
   207
	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
nkeynes@748
   208
	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
nkeynes@748
   209
	  esac; \
nkeynes@748
   210
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
nkeynes@748
   211
	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
nkeynes@748
   212
	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
nkeynes@748
   213
	    dir="/$$dir"; \
nkeynes@748
   214
	    $(mkdir_p) "$(distdir)$$dir"; \
nkeynes@748
   215
	  else \
nkeynes@748
   216
	    dir=''; \
nkeynes@748
   217
	  fi; \
nkeynes@748
   218
	  if test -d $$d/$$file; then \
nkeynes@748
   219
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
nkeynes@748
   220
	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
nkeynes@748
   221
	    fi; \
nkeynes@748
   222
	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
nkeynes@748
   223
	  else \
nkeynes@748
   224
	    test -f $(distdir)/$$file \
nkeynes@748
   225
	    || cp -p $$d/$$file $(distdir)/$$file \
nkeynes@748
   226
	    || exit 1; \
nkeynes@748
   227
	  fi; \
nkeynes@748
   228
	done
nkeynes@748
   229
nkeynes@748
   230
dvi:
.