94 lines · 3.4 KB · Text
RawDownload
# This file is part of MXE. See LICENSE.md for licensing information. PKG             := ccache$(PKG)_WEBSITE  := https://ccache.samba.org$(PKG)_DESCR    := ccache – a fast compiler cache$(PKG)_IGNORE   :=$(PKG)_VERSION  := 3.6$(PKG)_CHECKSUM := a6b129576328fcefad00cb72035bc87bc98b6a76aec0f4b59bed76d67a399b1f$(PKG)_SUBDIR   := ccache-$($(PKG)_VERSION)$(PKG)_FILE     := ccache-$($(PKG)_VERSION).tar.xz$(PKG)_URL      := https://www.samba.org/ftp/ccache/ccache-$($(PKG)_VERSION).tar.xz$(PKG)_DEPS     := $(BUILD)~$(PKG)$(PKG)_TARGETS  := $(BUILD) $(MXE_TARGETS) $(PKG)_DEPS_$(BUILD) := define $(PKG)_UPDATE    $(call GET_LATEST_VERSION, https://www.samba.org/ftp/ccache)endef BOOTSTRAP_PKGS += ccache $(PKG)_SYS_CONF := $(MXE_CCACHE_DIR)/etc/$(PKG).conf$(PKG)_USR_CONF := $(MXE_CCACHE_CACHE_DIR)/$(PKG).conf ifeq (mxe,$(MXE_USE_CCACHE))define $(PKG)_BUILD_$(BUILD)    # remove any previous symlinks    rm -fv '$(PREFIX)/$(BUILD)/bin/$(BUILD_CC)' '$(PREFIX)/$(BUILD)/bin/$(BUILD_CXX)'     # minimal reqs build with bundled zlib    cd '$(BUILD_DIR)' && $(SOURCE_DIR)/configure \        $(MXE_CONFIGURE_OPTS) \        --with-bundled-zlib \        --disable-man \        --prefix='$(MXE_CCACHE_DIR)' \        --sysconfdir='$(dir $($(PKG)_SYS_CONF))'    $(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' $(MXE_DISABLE_DOCS)    $(MAKE) -C '$(BUILD_DIR)' -j 1 install $(MXE_DISABLE_DOCS)     # setup symlinks    ln -sf '$(MXE_CCACHE_DIR)/bin/ccache' '$(PREFIX)/$(BUILD)/bin/$(BUILD_CC)'    ln -sf '$(MXE_CCACHE_DIR)/bin/ccache' '$(PREFIX)/$(BUILD)/bin/$(BUILD_CXX)'     # https://ccache.samba.org/manual/latest.html#_configuration_settings    # always set/replace mxe `system` config    mkdir -p '$(dir $($(PKG)_SYS_CONF))'    (echo '# ccache system config'; \     echo '# this file is controlled by mxe, user config is in:'; \     echo '# $($(PKG)_USR_CONF)'; \     echo; \     echo 'base_dir = $(MXE_CCACHE_BASE_DIR)'; \     echo 'cache_dir = $(MXE_CCACHE_CACHE_DIR)'; \     echo 'compiler_check = %compiler% -v'; \     ) > '$($(PKG)_SYS_CONF)'     # leave user config alone if set    [ -f '$($(PKG)_USR_CONF)' ] || \    (mkdir -p '$(dir $($(PKG)_USR_CONF))' && \    (echo '# ccache user config'; \     echo '# https://ccache.samba.org/manual/latest.html#_configuration_settings'; \     echo '# system config: $($(PKG)_SYS_CONF)'; \     echo; \     echo 'max_size = 20.0G'; \     ) > '$($(PKG)_USR_CONF)')endef define $(PKG)_BUILD    # setup symlinks    ln -sf '$(MXE_CCACHE_DIR)/bin/ccache' '$(PREFIX)/$(BUILD)/bin/$(TARGET)-gcc'    ln -sf '$(MXE_CCACHE_DIR)/bin/ccache' '$(PREFIX)/$(BUILD)/bin/$(TARGET)-g++'     # setup cmake toolchain to allow runtime override    # CMAKE_CXX_COMPILER_LAUNCHER shows original cc and isn't clear in logs etc.    mkdir -p '$(CMAKE_TOOLCHAIN_DIR)'    (echo 'option(MXE_USE_CCACHE "Enable ccache by default" ON)'; \     echo 'if(MXE_USE_CCACHE)'; \     echo '  set(CMAKE_C_COMPILER $(PREFIX)/$(BUILD)/bin/$(TARGET)-gcc)'; \     echo '  set(CMAKE_CXX_COMPILER $(PREFIX)/$(BUILD)/bin/$(TARGET)-g++)'; \     echo 'endif()'; \     ) > '$(CMAKE_TOOLCHAIN_DIR)/$(PKG).cmake'endefelsedefine $(PKG)_BUILD_$(BUILD)    # remove symlinks    rm -fv '$(PREFIX)/$(BUILD)/bin/$(BUILD_CC)' '$(PREFIX)/$(BUILD)/bin/$(BUILD_CXX)'endef define $(PKG)_BUILD    # remove symlinks and cmake toolchain    rm -fv '$(PREFIX)/$(BUILD)/bin/$(TARGET)-'*    rm -fv '$(CMAKE_TOOLCHAIN_DIR)/$(PKG).cmake'endefendif

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t