final v1.0 files
[weak_simulation_stab_extent.git] / Makefile
1 #IDIR =../include
2 CC=gcc -std=c99
3 CFLAGS=-Wall
4 LIBS=-lm libmatrix.so libexponentialsum.so libextend.so libmeasurepauli.so libinnerproduct.so
5
6 weaksim_relerr: weaksim_relerr.c matrix exponentialsum shrink shrinkstar extend measurepauli innerproduct randomstabilizerstate supplement sparsify
7         $(CC) -o $@ weaksim_relerr.c $(CFLAGS) $(LIBS) libshrink.so libshrinkstar.so librandomstabilizerstate.so libsparsify.so
8
9 weaksim: weaksim.c matrix exponentialsum shrink extend measurepauli innerproduct sparsify
10         $(CC) -o $@ weaksim.c $(CFLAGS) $(LIBS) libshrink.so libsparsify.so
11
12 module_sparsify_test: module_sparsify_test matrix sparsify
13         $(CC) -o $@ module_sparsify_test.c $(CFLAGS) libmatrix.so libsparsify.so
14
15 matrix: matrix.h matrix.c
16         $(CC) -c -Werror -Wall -fpic matrix.c
17         $(CC) -shared -o libmatrix.so matrix.o
18
19 exponentialsum: exponentialsum.h exponentialsum.c
20         $(CC) -c -Wall -fpic exponentialsum.c
21         $(CC) -shared -o libexponentialsum.so exponentialsum.o -lm libmatrix.so
22
23 shrink: shrink.h shrink.c
24         $(CC) -c -Wall -fpic shrink.c
25         $(CC) -shared -o libshrink.so shrink.o -lm libmatrix.so
26
27 extend: extend.h extend.c
28         $(CC) -c -Werror -Wall -fpic extend.c
29         $(CC) -shared -o libextend.so extend.o -lm libmatrix.so
30
31 measurepauli: measurepauli.h measurepauli.c
32         $(CC) -c -Wall -fpic measurepauli.c
33         $(CC) -shared -o libmeasurepauli.so measurepauli.o -lm libextend.so libshrink.so libmatrix.so
34
35 innerproduct: innerproduct.h innerproduct.c
36         $(CC) -c -Wall -fpic innerproduct.c
37         $(CC) -shared -o libinnerproduct.so innerproduct.o -lm libextend.so libshrink.so libexponentialsum.so libmatrix.so
38
39 innerproductintersection: innerproductintersection.h innerproductintersection.c
40         $(CC) -c -Wall -fpic innerproductintersection.c
41         $(CC) -shared -o libinnerproductintersection.so innerproductintersection.o -lm libextend.so libshrink.so libexponentialsum.so libmatrix.so
42
43 shrinkstar: shrinkstar.h shrinkstar.c
44         $(CC) -c -Wall -fpic shrinkstar.c
45         $(CC) -shared -o libshrinkstar.so shrinkstar.o -lm libmatrix.so
46
47 randomstabilizerstate: randomstabilizerstate.h randomstabilizerstate.c
48         $(CC) -c -Wall -fpic randomstabilizerstate.c
49         $(CC) -shared -o librandomstabilizerstate.so randomstabilizerstate.o -lm libmatrix.so libshrinkstar.so -llapacke
50
51 supplement: supplement.h supplement.c
52         $(CC) -c -Wall -fpic supplement.c
53         $(CC) -shared -o libsupplement.so supplement.o -lm
54
55 sparsify: sparsify.h sparsify.c supplement
56         $(CC) -c -Wall -fpic sparsify.c
57         $(CC) -shared -o libsparsify.so sparsify.o -lm libmatrix.so libsupplement.so
58
59 randominputcommutingHermitianPauli: randominputcommutingHermitianPauli.c
60         $(CC) -o randominputcommutingHermitianPauli randominputcommutingHermitianPauli.c
61
62 randominputcommutingHermitianPauli2: randominputcommutingHermitianPauli2.c
63         $(CC) -o randominputcommutingHermitianPauli2 randominputcommutingHermitianPauli2.c
64
65 randominputPauli: randominputPauli.c
66         $(CC) -o randominputPauli randominputPauli.c
67
68 multipauli: multipauli.c
69         $(CC) -o multipauli multipauli.c -lm
70
71 .PHONY: clean
72
73 clean:
74         rm ./weaksim_relerr ./weaksim ./matrix.o ./libmatrix.so ./exponentialsum.o ./libexponentialsum.so ./shrink.o ./libshrink.so ./extend.o ./libextend.so ./measurepauli.o ./libmeasurepauli.so ./libinnerproduct.so
75
76 # you might want to update LD_LIBRARY_PATH to see the library:
77 # export LD_LIBRARY_PATH=$PWD:$LD_LIBRARY_PATH
78 # or if you have root privileges put the library /usr/local/lib or whatever library directory in your path
79 # Then, use ldconfig to write the path in the config file:
80 # sudo echo "/usr/local/lib" >> /etc/ld.so.conf
81 #  sudo ldconfig
82
83