1 2CLEANUP_TYPE=C 3#CLEANUP_TYPE=CPP 4 5VPATH = ../../tests 6 7TARGET = pthread-psp-test 8 9MUTEX_TEST_OBJS = \ 10 mutex1.o \ 11 mutex1e.o \ 12 mutex1n.o \ 13 mutex1r.o \ 14 mutex2.o \ 15 mutex2e.o \ 16 mutex2r.o \ 17 mutex3.o \ 18 mutex3e.o \ 19 mutex3r.o \ 20 mutex4.o \ 21 mutex5.o \ 22 mutex6.o \ 23 mutex6e.o \ 24 mutex6es.o \ 25 mutex6n.o \ 26 mutex6r.o \ 27 mutex6rs.o \ 28 mutex6s.o \ 29 mutex7.o \ 30 mutex7e.o \ 31 mutex7n.o \ 32 mutex7r.o \ 33 mutex8.o \ 34 mutex8e.o \ 35 mutex8n.o \ 36 mutex8r.o 37 38MISC_OBJS = \ 39 main.o \ 40 test_main.o 41 42 43MISC_TEST_OBJS = \ 44 valid1.o \ 45 valid2.o \ 46 self1.o \ 47 self2.o \ 48 equal1.o \ 49 count1.o \ 50 delay1.o \ 51 delay2.o \ 52 errno1.o \ 53 tsd1.o \ 54 tsd2.o \ 55 stress1.o \ 56 detach1.o 57 58SEM_TEST_OBJS = \ 59 semaphore1.o \ 60 semaphore2.o \ 61 semaphore3.o \ 62 semaphore4.o \ 63 semaphore4t.o \ 64 semaphore5.o \ 65 semaphore6.o 66 67BARRIER_TEST_OBJS = \ 68 barrier1.o \ 69 barrier2.o \ 70 barrier3.o \ 71 barrier4.o \ 72 barrier5.o 73 74# Tests excluded because cancellation is not implemented 75# semaphore4.o 76# semaphore4t.o 77 78THREAD_TEST_OBJS = \ 79 create1.o \ 80 create2.o \ 81 create3.o \ 82 join0.o \ 83 join1.o \ 84 join2.o \ 85 join3.o \ 86 join4.o \ 87 kill1.o \ 88 once1.o \ 89 once2.o \ 90 once3.o \ 91 once4.o \ 92 exit1.o \ 93 exit2.o \ 94 exit3.o \ 95 exit4.o \ 96 exit5.o \ 97 reuse1.o \ 98 reuse2.o \ 99 priority1.o \ 100 priority2.o \ 101 inherit1.o 102 103 104SPIN_TEST_OBJS = \ 105 spin1.o \ 106 spin2.o \ 107 spin3.o \ 108 spin4.o 109 110CONDVAR_TEST_OBJS = \ 111 condvar1.o \ 112 condvar1_1.o \ 113 condvar1_2.o \ 114 condvar2.o \ 115 condvar2_1.o \ 116 condvar3.o \ 117 condvar3_1.o \ 118 condvar3_2.o \ 119 condvar3_3.o \ 120 condvar4.o \ 121 condvar5.o \ 122 condvar6.o \ 123 condvar8.o \ 124 condvar7.o \ 125 condvar9.o 126 127RWLOCK_TEST_OBJS = \ 128 rwlock1.o \ 129 rwlock2.o \ 130 rwlock2_t.o \ 131 rwlock3.o \ 132 rwlock3_t.o \ 133 rwlock4.o \ 134 rwlock4_t.o \ 135 rwlock5.o \ 136 rwlock5_t.o \ 137 rwlock6.o \ 138 rwlock6_t.o \ 139 rwlock6_t2.o \ 140 rwlock7.o \ 141 rwlock8.o 142 143CANCEL_TEST_OBJS = \ 144 cancel1.o \ 145 cancel2.o \ 146 cancel3.o \ 147 cancel4.o \ 148 cancel5.o \ 149 cancel6a.o \ 150 cancel6d.o \ 151 cleanup0.o \ 152 cleanup1.o \ 153 cleanup2.o \ 154 cleanup3.o 155 156BENCH_TEST_OBJS = \ 157 benchlib.o \ 158 benchtest1.o \ 159 benchtest2.o \ 160 benchtest3.o \ 161 benchtest4.o 162 163EXCEPTION_TEST_OBJS = \ 164 exception1.o \ 165 exception2.o \ 166 exception3.o 167 168 169 170OBJS = $(MUTEX_TEST_OBJS) $(MISC_OBJS) $(MISC_TEST_OBJS) $(THREAD_TEST_OBJS) $(SEM_TEST_OBJS) $(BARRIER_TEST_OBJS) $(SPIN_TEST_OBJS) $(CONDVAR_TEST_OBJS) $(RWLOCK_TEST_OBJS) $(CANCEL_TEST_OBJS) $(BENCH_TEST_OBJS) $(EXCEPTION_TEST_OBJS) 171 172 173INCDIR = 174CFLAGS = $(GLOBAL_CFLAGS) -O2 -Wall -g -I.. -fno-strict-aliasing -I../.. -G0 175CXXFLAGS = $(CFLAGS) -fexceptions -fno-rtti 176ASFLAGS = $(CFLAGS) 177 178LDFLAGS = -L../.. 179LIBS = -lc -lpthread-psp -lstdc++ 180 181ifeq ($(CLEANUP_TYPE),CPPXX) 182 183LIBS += -lstdc++ 184 185endif 186 187PSPSDK=$(shell psp-config --pspsdk-path) 188include $(PSPSDK)/lib/build.mak 189 190ifeq ($(CLEANUP_TYPE),CPPXXX) 191 192CC=psp-g++ 193 194exception1.o: exception1.c 195 $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(INCLUDES) $(TARGET_ARCH) \ 196 -c ../../tests/exception1.c -o exception1.o 197 198exception2.o: exception2.c 199 $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(INCLUDES) $(TARGET_ARCH) \ 200 -c ../../tests/exception2.c -o exception2.o 201 202exception3.o: exception3.c 203 $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(INCLUDES) $(TARGET_ARCH) \ 204 -c ../../tests/exception3.c -o exception3.o 205endif 206 207 208install: $(TARGET_LIB) 209 @cp -v $(TARGET_LIB) `psp-config --psp-prefix`/lib 210 @cp -v *.h `psp-config --psp-prefix`/include 211 @echo "Done." 212 213