############################################################################### # # # IPFire.org - A linux based firewall # # Copyright (C) 2007, 2008 Michael Tremer & Christian Schmidt # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # # This program is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with this program. If not, see . # # # ############################################################################### ############################################################################### # Definitions ############################################################################### include Config PKG_NAME = ccache VER = 2.4 PKG_VER = 0 THISAPP = $(PKG_NAME)-$(VER) DL_FILE = $(THISAPP).tar.gz DIR_APP = $(DIR_SRC)/$(THISAPP) OBJECT = $(DIR_INFO)/$(STAGE_ORDER)_$(STAGE)/$(THISAPP) MAINTAINER = GROUP = Development/Tools EXTRA = no DEBUG = no DEPS = URL = http://ccache.samba.org/ LICENSE = GPLv2+ SHORT_DESC = C/C++ compiler cache. define LONG_DESC ccache is a compiler cache. It acts as a caching pre-processor to \ C/C++ compilers, using the -E compiler switch and a hash to detect \ when a compilation can be satisfied from cache. This often results in \ a 5 to 10 times speedup in common compilations. endef PREFIX = $(TOOLS_DIR)/usr ############################################################################### # Top-level Rules ############################################################################### objects = $(DL_FILE) \ $(THISAPP).patch download: $(objects) info: $(DO_PKG_INFO) install: $(OBJECT) package: @$(DO_PACKAGE) $(objects): @$(LOAD) ############################################################################### # Installation Details ############################################################################### $(OBJECT) : @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && $(EXTRACTOR) $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -p0 < $(DIR_PATCHES)/$(THISAPP).patch cd $(DIR_APP) && \ CFLAGS="-O2 -static" \ ./configure \ $(CONFIGURE_ARCH) \ --prefix=$(PREFIX) cd $(DIR_APP) && make $(PARALLELISMFLAGS) cd $(DIR_APP) && make install for i in gcc g++ cc; do \ ln -sf ccache $(PREFIX)/bin/$${i}; \ ln -sf ccache $(PREFIX)/bin/$(IFS_TARGET)-$${i}; \ done $(PREFIX)/bin/ccache -z @rm -rf $(DIR_APP) @$(POSTBUILD)