]> git.saurik.com Git - apple/xnu.git/blobdiff - tools/tests/xnu_quick_test/makefile
xnu-1228.5.18.tar.gz
[apple/xnu.git] / tools / tests / xnu_quick_test / makefile
index 8cdb458d02af76c5d1c33f050d3c6a3429550945..6fc3a0ed2b93ee9ac9212aa79d2cf019d3529df7 100644 (file)
@@ -1,3 +1,14 @@
+Product=$(shell tconf --product)
+Embedded=$(shell tconf --test TARGET_OS_EMBEDDED)
+
+ifeq "$(Embedded)" "YES"
+XILogFLAG =
+else
+XILogFLAG = -framework XILog
+endif
+
+CC=gcc $(SYSROOT)
+
 ifdef RC_BUILDIT
 DOING_BUILDIT=yes
 endif
@@ -23,6 +34,14 @@ else
        
        ifndef ARCH
                ARCH=i386 x86_64 ppc ppc64
+               # this hack should be removed once tconf gets
+               # <rdar://problem/5667139>
+               ifeq "$(Product)" "iPhone"
+               ARCH=armv6
+               endif
+               ifeq "$(Product)" "AppleTV"
+               ARCH=i386
+               endif
        endif
        
        ifdef ARCH
@@ -33,7 +52,8 @@ else
 endif
 
 CFLAGS += -g -I /System/Library/Frameworks/System.framework/Versions/B/PrivateHeaders/ -F/AppleInternal/Library/Frameworks/ $(MORECFLAGS)
-LIBFLAGS = -I /System/Library/Frameworks/System.framework/Versions/B/PrivateHeaders/ -F/AppleInternal/Library/Frameworks/ -framework XILog
+LIBFLAGS = -I /System/Library/Frameworks/System.framework/Versions/B/PrivateHeaders -F/AppleInternal/Library/Frameworks/ $(XILogFLAG)
+
 #CFLAGS+= $(MY_ARCH) -g -D_POSIX_C_SOURCE=200112L
 
 MY_OBJECTS = $(OBJROOT)/main.o $(OBJROOT)/memory_tests.o $(OBJROOT)/misc.o \
@@ -43,7 +63,7 @@ MY_OBJECTS = $(OBJROOT)/main.o $(OBJROOT)/memory_tests.o $(OBJROOT)/misc.o \
 
 xnu_quick_test : $(OBJROOT) $(DSTROOT) $(MY_OBJECTS) helpers
        sudo rm -rf $(DSTROOT)/xnu_quick_test
-       cc $(MY_ARCH) $(LIBFLAGS) -o $(DSTROOT)/xnu_quick_test $(MY_OBJECTS)
+       $(CC) $(MY_ARCH) $(LIBFLAGS) -o $(DSTROOT)/xnu_quick_test $(MY_OBJECTS)
        sudo chown root $(DSTROOT)/xnu_quick_test
        sudo chmod 4755 $(DSTROOT)/xnu_quick_test
 
@@ -52,17 +72,30 @@ xnu_quick_test : $(OBJROOT) $(DSTROOT) $(MY_OBJECTS) helpers
 # helper processes for the 64-bit version of xnu_quick_test to test the conversion
 # from a 32-bit process to a 64-bit process.
 helpers : helpers/sleep.c helpers/launch.c helpers/arch.c helperdir $(OBJROOT)/misc.o
-       gcc -arch ppc                               helpers/sleep.c -o $(DSTROOT)/helpers/sleep-ppc32
-       gcc -arch i386                              helpers/sleep.c -o $(DSTROOT)/helpers/sleep-i386
-       gcc -arch x86_64 -pagezero_size 0x100000000 helpers/sleep.c -o $(DSTROOT)/helpers/sleep-x86_64-4G
-       gcc -arch x86_64 -pagezero_size 0x1000      helpers/sleep.c -o $(DSTROOT)/helpers/sleep-x86_64-4K
-       gcc -arch ppc64  -pagezero_size 0x100000000 helpers/sleep.c -o $(DSTROOT)/helpers/sleep-ppc64-4G
-       gcc -arch ppc64  -pagezero_size 0x1000      helpers/sleep.c -o $(DSTROOT)/helpers/sleep-ppc64-4K
-       gcc $(LIBFLAGS) -arch i386      $(OBJROOT)/misc.o helpers/launch.c -o $(DSTROOT)/helpers/launch-i386
-       gcc $(LIBFLAGS) -arch x86_64    $(OBJROOT)/misc.o helpers/launch.c -o $(DSTROOT)/helpers/launch-x86_64
-       gcc $(LIBFLAGS) -arch ppc       $(OBJROOT)/misc.o helpers/launch.c -o $(DSTROOT)/helpers/launch-ppc
-       gcc $(LIBFLAGS) -arch ppc64     $(OBJROOT)/misc.o helpers/launch.c -o $(DSTROOT)/helpers/launch-ppc64
-       gcc -arch ppc -arch ppc64 -arch i386 -arch x86_64 helpers/arch.c -o $(DSTROOT)/helpers/arch
+ifneq "$(Product)" "iPhone"
+       $(CC) -arch i386                              helpers/sleep.c -o $(DSTROOT)/helpers/sleep-i386
+endif
+ifeq "$(Product)" "MacOSX"
+       $(CC) -arch x86_64 -pagezero_size 0x100000000 helpers/sleep.c -o $(DSTROOT)/helpers/sleep-x86_64-4G
+       $(CC) -arch x86_64 -pagezero_size 0x1000      helpers/sleep.c -o $(DSTROOT)/helpers/sleep-x86_64-4K
+       $(CC) -arch ppc                               helpers/sleep.c -o $(DSTROOT)/helpers/sleep-ppc32
+       $(CC) -arch ppc64  -pagezero_size 0x100000000 helpers/sleep.c -o $(DSTROOT)/helpers/sleep-ppc64-4G
+       $(CC) -arch ppc64  -pagezero_size 0x1000      helpers/sleep.c -o $(DSTROOT)/helpers/sleep-ppc64-4K
+endif
+ifneq "$(Product)" "iPhone"
+       $(CC) $(LIBFLAGS) -arch i386    $(OBJROOT)/misc.o helpers/launch.c -o $(DSTROOT)/helpers/launch-i386
+endif
+ifeq "$(Product)" "MacOS"
+       $(CC) $(LIBFLAGS) -arch x86_64  $(OBJROOT)/misc.o helpers/launch.c -o $(DSTROOT)/helpers/launch-x86_64
+       $(CC) $(LIBFLAGS) -arch ppc     $(OBJROOT)/misc.o helpers/launch.c -o $(DSTROOT)/helpers/launch-ppc
+       $(CC) $(LIBFLAGS) -arch ppc64   $(OBJROOT)/misc.o helpers/launch.c -o $(DSTROOT)/helpers/launch-ppc64
+       $(CC) $(MY_ARCH)        helpers/arch.c -o $(DSTROOT)/helpers/arch
+endif
+ifeq "$(Product)" "iPhone"
+       $(CC) -arch armv6 helpers/sleep.c -o $(DSTROOT)/helpers/sleep-arm
+       $(CC) $(LIBFLAGS) -arch armv6 $(OBJROOT)/misc.o helpers/launch.c -o $(DSTROOT)/helpers/launch-arm
+endif
+       
        
 helperdir :
        mkdir -p $(DSTROOT)/helpers
@@ -74,32 +107,35 @@ $(DSTROOT) :
        mkdir -p $(DSTROOT);
 
 INCLUDES = /Developer/SDKs/Purple/System/Library/Frameworks/System.framework/Versions/B/PrivateHeaders/
-       
 
 $(OBJROOT)/main.o : main.c tests.h
-       cc $(CFLAGS) -c main.c  -o $@
+       $(CC) $(CFLAGS) -c main.c  -o $@
        
 $(OBJROOT)/memory_tests.o : memory_tests.c tests.h
-       cc $(CFLAGS) -c memory_tests.c  -o $@
+       $(CC) $(CFLAGS) -c memory_tests.c  -o $@
 
 # misc.o has to be built 4-way for the helpers to link
 $(OBJROOT)/misc.o : misc.c tests.h
-       cc -arch i386 -arch x86_64 -arch ppc -arch ppc64 $(CFLAGS) -c misc.c   -o $@
+ifeq "$(Product)" "iPhone"
+       $(CC) -arch armv6 $(CFLAGS) -c misc.c   -o $@
+else
+       $(CC) -arch i386 -arch x86_64 -arch ppc -arch ppc64 $(CFLAGS) -c misc.c   -o $@
+endif
        
 $(OBJROOT)/sema_tests.o : sema_tests.c tests.h
-       cc $(CFLAGS) -c sema_tests.c   -o $@
+       $(CC) $(CFLAGS) -c sema_tests.c   -o $@
        
 $(OBJROOT)/shared_memory_tests.o : shared_memory_tests.c tests.h
-       cc $(CFLAGS) -c shared_memory_tests.c   -o $@
+       $(CC) $(CFLAGS) -c shared_memory_tests.c   -o $@
 
 $(OBJROOT)/socket_tests.o : socket_tests.c tests.h
-       cc $(CFLAGS) -c socket_tests.c   -o $@
+       $(CC) $(CFLAGS) -c socket_tests.c   -o $@
 
 $(OBJROOT)/tests.o : tests.c tests.h
-       cc $(CFLAGS) -c tests.c    -o $@
+       $(CC) $(CFLAGS) -c tests.c    -o $@
 
 $(OBJROOT)/xattr_tests.o : xattr_tests.c tests.h
-       cc $(CFLAGS) -c xattr_tests.c    -o $@
+       $(CC) $(CFLAGS) -c xattr_tests.c    -o $@
 
 
 ifndef DOING_BUILDIT
@@ -109,4 +145,3 @@ clean :
        sudo rm -f $(DSTROOT)/helpers/*
        rm -f $(OBJROOT)/*.o
 endif
-