Mercurial > vec
annotate test/Makefile.template @ 17:41dd962abdd1
*: allow compiling vec in a C++ translation unit
this is stupid, but whatever
| author | Paper <paper@tflc.us> | 
|---|---|
| date | Wed, 20 Nov 2024 12:02:15 -0500 | 
| parents | e05c257c6a23 | 
| children | cf04071d2148 | 
| rev | line source | 
|---|---|
| 
17
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
1 CPPFLAGS += -g -O2 -I../include -Wall -Wpedantic -Werror=strict-aliasing | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
2 CFLAGS += $(CPPFLAGS) -std=c99 | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
3 CXXFLAGS += $(CPPFLAGS) -std=c++11 | 
| 
15
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
4 | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
5 HEADERS = ../include/vec/vec.h \ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
6 ../include/vec/impl/ppc/altivec.h \ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
7 ../include/vec/impl/x86/avx2.h \ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
8 ../include/vec/impl/x86/avx512f.h \ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
9 ../include/vec/impl/x86/mmx.h \ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
10 ../include/vec/impl/x86/sse2.h \ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
11 ../include/vec/impl/x86/sse41.h \ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
12 ../include/vec/impl/cpu.h \ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
13 ../include/vec/impl/fallback.h \ | 
| 
17
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
14 ../include/vec/impl/generic.h \ | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
15 test_align.h \ | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
16 test_arith.h \ | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
17 test_compare.h | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
18 BINS = test-generic test-host test-cxx | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
19 OBJS = vec-generic.o vec-host.o test.o test-cxx.o | 
| 
15
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
20 | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
21 .PHONY: all clean test | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
22 | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
23 all: $(BINS) | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
24 | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
25 vec-generic.o: ../src/vec.c | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
26 $(CC) $(CFLAGS) -DVEC_SUPPRESS_HW=1 -c -o $@ $< | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
27 | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
28 vec-host.o: ../src/vec.c | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
29 $(CC) $(CFLAGS) -c -o $@ $< | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
30 | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
31 test.o: test.c | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
32 $(CC) $(CFLAGS) -c -o $@ $< | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
33 | 
| 
17
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
34 test-cxx.o: test.cc | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
35 $(CXX) $(CXXFLAGS) -c -o $@ $< | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
36 | 
| 
15
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
37 test-generic: vec-generic.o test.o | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
38 $(CC) $(LDFLAGS) -o $@ $^ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
39 | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
40 test-host: vec-host.o test.o | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
41 $(CC) $(LDFLAGS) -o $@ $^ | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
42 | 
| 
17
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
43 test-cxx: test-cxx.o | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
44 $(CXX) $(LDFLAGS) -o $@ $^ | 
| 
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
45 | 
| 
15
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
46 clean: | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
47 $(RM) $(BINS) $(OBJS) | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
48 | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
49 test: clean $(BINS) | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
50 ./test-generic | 
| 
 
e05c257c6a23
*: huge refactor, add many new x86 intrinsics and the like
 
Paper <paper@tflc.us> 
parents:  
diff
changeset
 | 
51 ./test-host | 
| 
17
 
41dd962abdd1
*: allow compiling vec in a C++ translation unit
 
Paper <paper@tflc.us> 
parents: 
15 
diff
changeset
 | 
52 ./test-cxx | 
