code / tomo

Lines41.8K C24.0K Markdown9.8K YAML5.0K Tomo2.3K
8 others 800
make256 Python231 Shell220 INI47 Text21 SVG16 Lua6 diff3
(70 lines)
1 GMP_VERSION=6.3.0
2 UNISTRING_VERSION=1.4.2
3 GC_VERSION=8.2.8
5 all: ../build/gc/lib/libgc.a ../build/gmp/lib/libgmp.a ../build/unistring/lib/libunistring.a
7 # Boehm-Demers-Weiser Garbage collector
8 gc-$(GC_VERSION).tar.gz:
9 curl -LOJ 'https://hboehm.info/gc/gc_source/gc-$(GC_VERSION).tar.gz'
11 gc-$(GC_VERSION)/configure: gc-$(GC_VERSION).tar.gz
12 tar xzfm $<
14 gc-$(GC_VERSION)/Makefile: gc-$(GC_VERSION)/configure
15 prefix=$$(realpath ..)/build/gc; \
16 cd gc-$(GC_VERSION); \
17 ./configure \
18 --enable-static \
19 --disable-shared \
20 --prefix="$$prefix"; \
22 ../build/gc/lib/libgc.a: gc-$(GC_VERSION)/Makefile
23 cd gc-$(GC_VERSION); \
24 $(MAKE) -j install
26 # GNU Multiple Precision Arithmetic Library
27 gmp-$(GMP_VERSION).tar.xz:
28 curl -LOJ 'https://gmplib.org/download/gmp/gmp-$(GMP_VERSION).tar.xz'
30 gmp-$(GMP_VERSION)/configure: gmp-$(GMP_VERSION).tar.xz
31 tar xJfm $<
32 cd gmp-$(GMP_VERSION) && patch -p0 -N < ../gmp-configure-fix.patch
34 gmp-$(GMP_VERSION)/Makefile: gmp-$(GMP_VERSION)/configure
35 prefix=$$(realpath ..)/build/gmp; \
36 cd gmp-$(GMP_VERSION); \
37 ./configure \
38 --enable-static \
39 --disable-shared \
40 --prefix="$$prefix"
42 ../build/gmp/lib/libgmp.a: gmp-$(GMP_VERSION)/Makefile
43 $(MAKE) -C gmp-$(GMP_VERSION) -j
44 $(MAKE) -C gmp-$(GMP_VERSION) check
45 $(MAKE) -C gmp-$(GMP_VERSION) install
47 # Lib Unistring
48 libunistring-$(UNISTRING_VERSION).tar.gz:
49 curl -LOJ 'https://ftp.gnu.org/gnu/libunistring/libunistring-$(UNISTRING_VERSION).tar.gz'
51 libunistring-$(UNISTRING_VERSION)/configure: libunistring-$(UNISTRING_VERSION).tar.gz
52 tar xzfm $<
54 libunistring-$(UNISTRING_VERSION)/Makefile: libunistring-$(UNISTRING_VERSION)/configure
55 prefix=$$(realpath ..)/build/unistring; \
56 cd libunistring-$(UNISTRING_VERSION); \
57 ./configure \
58 --enable-static \
59 --disable-shared \
60 --prefix="$$prefix"
62 ../build/unistring/lib/libunistring.a: libunistring-$(UNISTRING_VERSION)/Makefile
63 $(MAKE) -C libunistring-$(UNISTRING_VERSION) -j
64 $(MAKE) -C libunistring-$(UNISTRING_VERSION) check
65 $(MAKE) -C libunistring-$(UNISTRING_VERSION) install
67 clean:
68 rm -rf ../build/gc ../build/gmp ../build/unistring
70 .PHONY: all clean