# This file is part of MXE. See LICENSE.md for licensing information. PKG := llvm $(PKG)_WEBSITE := https://llvm.org/ $(PKG)_IGNORE := $(PKG)_VERSION := 7.0.0 $(PKG)_CHECKSUM := 8bc1f844e6cbde1b652c19c1edebc1864456fd9c78b8c1bea038e51b363fe222 $(PKG)_SUBDIR := llvm-$($(PKG)_VERSION).src $(PKG)_FILE := llvm-$($(PKG)_VERSION).src.tar.xz $(PKG)_URL := https://releases.llvm.org/$($(PKG)_VERSION)/$($(PKG)_FILE) $(PKG)_DEPS := cc $(BUILD)~$(PKG) # requires posix toolchain $(PKG)_TARGETS := $(BUILD) $(foreach TGT,$(MXE_TARGETS),$(and $(findstring posix,$(TGT)),$(TGT))) $(PKG)_DEPS_$(BUILD) := cmake define $(PKG)_UPDATE $(WGET) -q -O- 'https://releases.llvm.org/download.html' | \ grep 'Download LLVM' | \ $(SED) -n 's,.*LLVM \([0-9][^<]*\).*,\1,p' | \ head -1 endef define $(PKG)_BUILD cd '$(BUILD_DIR)' && $(TARGET)-cmake '$(SOURCE_DIR)' \ -DLLVM_TABLEGEN='$(PREFIX)/$(BUILD)/bin/llvm-tblgen' \ -DLLVM_TARGETS_TO_BUILD=X86 \ -DLLVM_TARGET_ARCH=X86 \ -DLLVM_BUILD_DOCS=OFF \ -DLLVM_BUILD_EXAMPLES=OFF \ -DLLVM_BUILD_RUNTIME=OFF \ -DLLVM_BUILD_RUNTIMES=OFF \ -DLLVM_BUILD_TESTS=OFF \ -DLLVM_BUILD_TOOLS=OFF \ -DLLVM_BUILD_UTILS=OFF \ -DLLVM_ENABLE_BINDINGS=OFF \ -DLLVM_ENABLE_DOXYGEN=OFF \ -DLLVM_ENABLE_OCAMLDOC=OFF \ -DLLVM_ENABLE_SPHINX=OFF \ -DLLVM_INCLUDE_DOCS=OFF \ -DLLVM_INCLUDE_EXAMPLES=OFF \ -DLLVM_INCLUDE_GO_TESTS=OFF \ -DLLVM_INCLUDE_RUNTIMES=OFF \ -DLLVM_INCLUDE_TESTS=OFF \ -DLLVM_INCLUDE_TOOLS=OFF \ -DLLVM_INCLUDE_UTILS=OFF $(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' VERBOSE=1 $(MAKE) -C '$(BUILD_DIR)' -j 1 install endef define $(PKG)_BUILD_$(BUILD) cd '$(BUILD_DIR)' && cmake '$(SOURCE_DIR)' $(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' llvm-tblgen VERBOSE=1 cp '$(BUILD_DIR)'/bin/* '$(PREFIX)/$(TARGET)/bin/' endef