0cdf705cc6
-By adding MKGCC=yes and MKGCCCMDS=yes on the make commandline it is now possible to compile and install GCC on the system. Before doing this, if you are not using the build.sh script, you will need to call the fetch scripts in order to retrieve the sources of GCC and its dependencies. -Reduce difference with NetBSD share/mk Move Minix-specific parameters from bsd.gcc.mk to bsd.own.mk, which is anyway patched, so that bsd.gcc.mk is now aligned on the NetBSD version. -Clean libraries dependencies, compiles stdc++ only if gcc is also compiled (it is part of the gcc sources) -Correct minix.h header sequence, cleanup spec headers. -Fix cross-compilation from a 32bit host targeting MINIX/arm Change-Id: I1b234af18eed4ab5675188244e931b2a2b7bd943
112 lines
2.7 KiB
Makefile
112 lines
2.7 KiB
Makefile
BINDIR?= /usr/tests/minix-posix
|
|
WARNS?= 1
|
|
|
|
# Tests have no manpages
|
|
MKMAN= no
|
|
|
|
# They are all bin-owned; by default normal executable mode
|
|
BINOWN= bin
|
|
|
|
CFLAGS+= -fno-builtin
|
|
LDADD+= -lm -lcompat_minix
|
|
|
|
.include <bsd.own.mk>
|
|
|
|
# Some have special flags compiling
|
|
.if ${MACHINE_ARCH} == "i386"
|
|
# LSC FIXME: Compilation error for now on ARM with that!
|
|
COPTS.test51.c= -mhard-float
|
|
COPTS.test52.c= -mhard-float
|
|
.endif
|
|
|
|
COPTS.test9.c= -O0
|
|
COPTS.test37.c= -O0
|
|
COPTS.test53.c= -O0
|
|
COPTS.test68.c= -O0
|
|
|
|
# Some have special libraries
|
|
LDADD.test59= -lmthread
|
|
|
|
# Some have an extra file
|
|
OBJS.test57= test57loop.o
|
|
|
|
# Cache testing programs
|
|
OBJS.test71+= testcache.o
|
|
OBJS.test72+= testcache.o
|
|
OBJS.test74+= testcache.o
|
|
LDADD.test72+= -lminixfs
|
|
|
|
PROGS += testvm
|
|
OBJS.testvm+= testcache.o
|
|
LDSTATIC.testvm= -static
|
|
LDADD.testvm+= -lsys -ltimers -lminlib
|
|
|
|
FILES += testvm.conf
|
|
|
|
# Tests to compile, For every architecture
|
|
MINIX_TESTS= \
|
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 \
|
|
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 \
|
|
41 42 43 44 45 46 48 49 50 52 53 54 55 56 58 59 60 \
|
|
61 64 65 66 67 68 69 70 71 72 73 74 75
|
|
|
|
.if ${MACHINE_ARCH} == "i386"
|
|
MINIX_TESTS+= \
|
|
47 51 57 \
|
|
62
|
|
.endif # ${MACHINE_ARCH} == "i386"
|
|
|
|
.if ${MACHINE_ARCH} == "earm"
|
|
# LSC Not yet supported on ARM
|
|
MKPIC:= no
|
|
LDSTATIC:= -static
|
|
.endif
|
|
|
|
.for t in ${MINIX_TESTS}
|
|
PROGS+= test${t}
|
|
.endfor
|
|
|
|
PROGS+= t10a t11a t11b t40a t40b t40c t40d t40e t40f t60a t60b \
|
|
t67a t67b t68a t68b
|
|
|
|
SCRIPTS+= run testinterp.sh testsh1.sh testsh2.sh
|
|
|
|
.if ${MKPIC} == "yes"
|
|
# Build them as dynamic executables by default if shared libraries
|
|
# are available; so that the building and executing of dynamic
|
|
# executables is tested
|
|
LDSTATIC= -dynamic
|
|
|
|
# use the shared linkerscript for mod when using the gold linker
|
|
GOLDLINKERSCRIPT.mod?= ${${HAVE_GOLD:Uno} != "no":? ${LDS_SHARED_LIB} :}
|
|
LDFLAGS.mod+= -shared # make shared object
|
|
|
|
# LSC FIXME: THe bitcode rules need to take into account LDFLAGS
|
|
LDADD.mod+= ${${USE_BITCODE:Uno} != "no":? -shared:}
|
|
|
|
# Files which have to be compiled with -fPIC
|
|
mod.o: mod.c
|
|
${COMPILE.c} -fPIC ${.IMPSRC}
|
|
|
|
common.o: common.c
|
|
${COMPILE.c} -fPIC ${.IMPSRC}
|
|
|
|
# test57loop.S is not linked into the .bcl file.
|
|
# This way, we can link it in when linking the final binary
|
|
LDADD.test57+= ${${USE_BITCODE:Uno} != "no":? test57loop.o -Wl,-allow-multiple-definition:}
|
|
|
|
# Add test that must be linked dynamically, and its dynamically loaded
|
|
# module
|
|
PROGS+= test63 mod
|
|
.endif # ${MKPIC} == "yes"
|
|
|
|
.for o in $(PROGS)
|
|
OBJS.${o} += common.o
|
|
.endfor
|
|
|
|
# LSC Make sure there is not leftover after a failed testrun
|
|
clean: .PHONY .MAKE
|
|
$(MAKE) -C select clean
|
|
rm -rf DIR*
|
|
|
|
.include <bsd.prog.mk>
|