comparison src/llvm.mk @ 3310:a606177f2057

Support file listing for libffi and llvm. * src/libffi.mk: Use DESTDIR during install. * src/llvm.mk: Use DESTDIR during install. Create installation directory for build tools.
author Michael Goffioul <michael.goffioul@gmail.com>
date Mon, 11 Nov 2013 11:03:06 -0500
parents 508061be6797
children e973e59452dd
comparison
equal deleted inserted replaced
3309:7b9b5cf1fb92 3310:a606177f2057
24 define $(PKG)_BUILD 24 define $(PKG)_BUILD
25 mkdir '$(1)/.build' 25 mkdir '$(1)/.build'
26 cd '$(1)/.build' && cmake \ 26 cd '$(1)/.build' && cmake \
27 -G "NMake Makefiles" \ 27 -G "NMake Makefiles" \
28 -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \ 28 -DCMAKE_TOOLCHAIN_FILE='$(CMAKE_TOOLCHAIN_FILE)' \
29 -DLIBTYPE=STATIC \ 29 -DBUILD_SHARED_LIBS=OFF \
30 -DLLVM_TARGETS_TO_BUILD="X86" \ 30 -DLLVM_TARGETS_TO_BUILD="X86" \
31 -DLLVM_ENABLE_FFI:BOOL=ON \ 31 -DLLVM_ENABLE_FFI=ON \
32 "-DFFI_INCLUDE_DIR=$(HOST_LIBDIR)/libffi-$(libffi_VERSION)/include" \ 32 "-DFFI_INCLUDE_DIR=$(HOST_LIBDIR)/libffi-$(libffi_VERSION)/include" \
33 -DLLVM_REQUIRES_EH:BOOL=ON \ 33 -DLLVM_REQUIRES_EH=ON \
34 ../ 34 ../
35 sed -i '/^ echo "/ {s/echo "/echo /;s/" >>/ >>/;}' \ 35 sed -i '/^ echo "/ {s/echo "/echo /;s/" >>/ >>/;}' \
36 '$(1)/.build/tools/llvm-config/CMakeFiles/llvm-config.dir/build.make' 36 '$(1)/.build/tools/llvm-config/CMakeFiles/llvm-config.dir/build.make'
37 cd '$(1)/.build' && \ 37 cd '$(1)/.build' && \
38 env -u MAKE -u MAKEFLAGS \ 38 env -u MAKE -u MAKEFLAGS nmake && \
39 LIB="`echo \`cd ../../../usr/i686-pc-mingw32/lib && pwd -W\` | sed -e 's,/,\\\\\\\\,g'`\;$$LIB" \ 39 env -u MAKE -u MAKEFLAGS nmake DESTDIR='$(3)' install
40 nmake && \
41 env -u MAKE -u MAKEFLAGS nmake install
42 endef 40 endef
43 else 41 else
44 define $(PKG)_BUILD 42 define $(PKG)_BUILD
45 mkdir '$(1)/build' 43 mkdir '$(1)/build'
46 cd '$(1)/build' && ../configure \ 44 cd '$(1)/build' && ../configure \
49 --enable-targets='host-only' \ 47 --enable-targets='host-only' \
50 --disable-docs \ 48 --disable-docs \
51 $(ENABLE_SHARED_OR_STATIC) \ 49 $(ENABLE_SHARED_OR_STATIC) \
52 --prefix='$(HOST_PREFIX)' 50 --prefix='$(HOST_PREFIX)'
53 51
54 PATH='$(HOST_BINDIR):$(PATH)' $(MAKE) -C '$(1)/build' -j $(JOBS) install 52 PATH='$(HOST_BINDIR):$(PATH)' $(MAKE) -C '$(1)/build' -j $(JOBS) install DESTDIR='$(3)'
55 53
56 # create import lib for the dll 54 # create import lib for the dll
57 $(if $(filter yes, $(BUILD_SHARED)), 55 $(if $(filter yes, $(BUILD_SHARED)),
58 cd '$(1)/build/tools/llvm-shlib/Release+Asserts' && \ 56 cd '$(1)/build/tools/llvm-shlib/Release+Asserts' && \
59 $(MXE_DLLTOOL) \ 57 $(MXE_DLLTOOL) \
60 --dllname "LLVM-`$(HOST_BINDIR)/llvm-config --version`.dll" \ 58 --dllname "LLVM-`$(3)$(HOST_BINDIR)/llvm-config --version`.dll" \
61 --def "LLVM-`$(HOST_BINDIR)/llvm-config --version`.def" \ 59 --def "LLVM-`$(3)$(HOST_BINDIR)/llvm-config --version`.def" \
62 --output-lib "libLLVM-`$(HOST_BINDIR)/llvm-config --version`.a" 60 --output-lib "libLLVM-`$(3)$(HOST_BINDIR)/llvm-config --version`.a"
61 $(INSTALL) -d "$(3)$(HOST_LIBDIR)"
63 cd '$(1)/build/tools/llvm-shlib/Release+Asserts' && \ 62 cd '$(1)/build/tools/llvm-shlib/Release+Asserts' && \
64 $(INSTALL) -m644 \ 63 $(INSTALL) -m644 \
65 "libLLVM-`$(HOST_BINDIR)/llvm-config --version`.a" \ 64 "libLLVM-`$(3)$(HOST_BINDIR)/llvm-config --version`.a" \
66 "$(HOST_LIBDIR)" 65 "$(3)$(HOST_LIBDIR)"
67 ) 66 )
68 endef 67 endef
69 endif 68 endif
70 else 69 else
71 define $(PKG)_BUILD 70 define $(PKG)_BUILD
77 --disable-docs \ 76 --disable-docs \
78 $(ENABLE_SHARED_OR_STATIC) \ 77 $(ENABLE_SHARED_OR_STATIC) \
79 --prefix='$(HOST_PREFIX)' 78 --prefix='$(HOST_PREFIX)'
80 79
81 $(MAKE) -C '$(1)/build' -j $(JOBS) 80 $(MAKE) -C '$(1)/build' -j $(JOBS)
82 $(MAKE) -C '$(1)/build' -j 1 install 81 $(MAKE) -C '$(1)/build' -j 1 install DESTDIR='$(3)'
83 82
84 if [ $(MXE_NATIVE_BUILD) = no ]; then \ 83 if [ $(MXE_NATIVE_BUILD) = no ]; then \
84 $(INSTALL) -d '$(3)$(BUILD_TOOLS_PREFIX)/bin'; \
85 $(INSTALL) -m755 '$(HOST_BINDIR)/llvm-config-host' '$(BUILD_TOOLS_PREFIX)/bin/llvm-config'; \ 85 $(INSTALL) -m755 '$(HOST_BINDIR)/llvm-config-host' '$(BUILD_TOOLS_PREFIX)/bin/llvm-config'; \
86 fi 86 fi
87 87
88 # create import lib for the dll 88 # create import lib for the dll
89 if [ $(MXE_SYSTEM) = mingw -a $(BUILD_SHARED) = yes ]; then \ 89 if [ $(MXE_SYSTEM) = mingw -a $(BUILD_SHARED) = yes ]; then \
90 cd '$(1)/build/tools/llvm-shlib/Release+Asserts' && \ 90 cd '$(1)/build/tools/llvm-shlib/Release+Asserts' && \
91 $(MXE_DLLTOOL) \ 91 $(MXE_DLLTOOL) \
92 --dllname "LLVM-`$(BUILD_TOOLS_PREFIX)/bin/llvm-config --version`.dll" \ 92 --dllname "LLVM-`$(3)$(BUILD_TOOLS_PREFIX)/bin/llvm-config --version`.dll" \
93 --def "LLVM-`$(BUILD_TOOLS_PREFIX)/bin/llvm-config --version`.def" \ 93 --def "LLVM-`$(3)$(BUILD_TOOLS_PREFIX)/bin/llvm-config --version`.def" \
94 --output-lib "libLLVM-`$(BUILD_TOOLS_PREFIX)/bin/llvm-config --version`.a"; \ 94 --output-lib "libLLVM-`$(3)$(BUILD_TOOLS_PREFIX)/bin/llvm-config --version`.a"; \
95 $(INSTALL) -d "$(3)$(HOST_LIBDIR)"; \
95 cd '$(1)/build/tools/llvm-shlib/Release+Asserts' && \ 96 cd '$(1)/build/tools/llvm-shlib/Release+Asserts' && \
96 $(INSTALL) -m644 \ 97 $(INSTALL) -m644 \
97 "libLLVM-`$(BUILD_TOOLS_PREFIX)/bin/llvm-config --version`.a" \ 98 "libLLVM-`$(3)$(BUILD_TOOLS_PREFIX)/bin/llvm-config --version`.a" \
98 "$(HOST_LIBDIR)"; \ 99 "$(3)$(HOST_LIBDIR)"; \
99 fi 100 fi
100 101
101 endef 102 endef
102 endif 103 endif