rules-install-so.mak
来自「stl的源码」· MAK 代码 · 共 174 行
MAK
174 行
# -*- makefile -*- Time-stamp: <07/12/12 01:52:19 ptr>## Copyright (c) 1997-1999, 2002, 2003, 2005-2007# Petr Ovtchenkov## Portion Copyright (c) 1999-2001# Parallel Graphics Ltd.## Licensed under the Academic Free License version 3.0#ifndef INSTALL_TAGSifndef _NO_SHARED_BUILDINSTALL_TAGS := install-release-sharedelseINSTALL_TAGS := endififdef _STATIC_BUILDINSTALL_TAGS += install-release-staticendififndef _NO_DBG_BUILDifndef _NO_SHARED_BUILDINSTALL_TAGS += install-dbg-sharedendififdef _STATIC_BUILDINSTALL_TAGS += install-dbg-staticendifendififndef _NO_STLDBG_BUILDifndef WITHOUT_STLPORTifndef _NO_SHARED_BUILDINSTALL_TAGS += install-stldbg-sharedendififdef _STATIC_BUILDINSTALL_TAGS += install-stldbg-staticendifendifendifendififndef INSTALL_STRIP_TAGSifndef _NO_SHARED_BUILDINSTALL_STRIP_TAGS := install-strip-sharedelseINSTALL_STRIP_TAGS := endififdef _STATIC_BUILDINSTALL_STRIP_TAGS += install-release-staticendififndef _NO_DBG_BUILDifndef _NO_SHARED_BUILDINSTALL_STRIP_TAGS += install-dbg-sharedendififdef _STATIC_BUILDINSTALL_STRIP_TAGS += install-dbg-staticendifendififndef _NO_STLDBG_BUILDifndef WITHOUT_STLPORTifndef _NO_SHARED_BUILDINSTALL_STRIP_TAGS += install-stldbg-sharedendififdef _STATIC_BUILDINSTALL_STRIP_TAGS += install-stldbg-staticendifendifendifendifPHONY += install install-strip install-headers $(INSTALL_TAGS) $(INSTALL_STRIP_TAGS)install: $(INSTALL_TAGS) install-headersinstall-strip: $(INSTALL_STRIP_TAGS) install-headers# Workaround for GNU make 3.80; see comments in rules-so.makdefine do_install_so_links$${INSTALL_LIB_DIR$(1)}/$${SO_NAME$(1)xxx}: $${SO_NAME_OUT$(1)xxx} $$(INSTALL_SO) $${SO_NAME_OUT$(1)xxx} $$(INSTALL_LIB_DIR$(1)) @$(call do_so_links_1,$$(INSTALL_LIB_DIR$(1)),$${SO_NAME$(1)xx},$${SO_NAME$(1)xxx}) @$(call do_so_links_1,$$(INSTALL_LIB_DIR$(1)),$${SO_NAME$(1)x},$${SO_NAME$(1)xx}) @$(call do_so_links_1,$$(INSTALL_LIB_DIR$(1)),$${SO_NAME$(1)},$${SO_NAME$(1)x})endef# Workaround for GNU make 3.80; see comments in rules-so.makdefine do_install_so_links_wk# expand to nothing, if equalifneq (${INSTALL_LIB_DIR}/${SO_NAMExxx},${INSTALL_LIB_DIR_STLDBG}/${SO_NAME_STLDBGxxx})# expand to nothing, if WITHOUT_STLPORTifndef WITHOUT_STLPORT$(call do_install_so_links,$(1))endifendifendef# Workaround for GNU make 3.80; see comments in rules-so.makdefine do_install_so_links_wk2# expand to nothing, if equalifneq (${INSTALL_LIB_DIR}/${SO_NAMExxx},${INSTALL_LIB_DIR_DBG}/${SO_NAME_DBGxxx})$(call do_install_so_links,$(1))endifendef$(eval $(call do_install_so_links,))# ifneq (${INSTALL_LIB_DIR}/${SO_NAMExxx},${INSTALL_LIB_DIR_DBG}/${SO_NAME_DBGxxx})# $(eval $(call do_install_so_links,_DBG))$(eval $(call do_install_so_links_wk2,_DBG))# endif# ifneq (${INSTALL_LIB_DIR}/${SO_NAMExxx},${INSTALL_LIB_DIR_STLDBG}/${SO_NAME_STLDBGxxx})# ifndef WITHOUT_STLPORT$(eval $(call do_install_so_links_wk,_STLDBG))# endif# endifinstall-release-shared: release-shared $(INSTALL_LIB_DIR) $(INSTALL_LIB_DIR)/${SO_NAMExxx} install-headers ${POST_INSTALL}install-strip-shared: release-shared $(INSTALL_LIB_DIR) $(INSTALL_LIB_DIR)/${SO_NAMExxx} install-headers ${STRIP} ${_SO_STRIP_OPTION} $(INSTALL_LIB_DIR)/${SO_NAMExxx} ${POST_INSTALL}install-dbg-shared: dbg-shared $(INSTALL_LIB_DIR_DBG) $(INSTALL_LIB_DIR_DBG)/${SO_NAME_DBGxxx} ${POST_INSTALL_DBG}ifndef WITHOUT_STLPORTinstall-stldbg-shared: stldbg-shared $(INSTALL_LIB_DIR_STLDBG) $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGxxx} ${POST_INSTALL_STLDBG}endifdefine do_install_headersif [ ! -d $(INSTALL_HDR_DIR) ]; then \ $(INSTALL_D) $(INSTALL_HDR_DIR) || { echo "Can't create $(INSTALL_HDR_DIR)"; exit 1; }; \fi; \for dd in $(HEADERS_BASE); do \ d=`dirname $$dd`; \ h=`basename $$dd`; \ f=`cd $$d; find $$h \( -wholename "*/.svn" -prune \) -o \( -type d -print \)`; \ for ddd in $$f; do \ if [ ! -d $(INSTALL_HDR_DIR)/$$ddd ]; then \ $(INSTALL_D) $(INSTALL_HDR_DIR)/$$ddd || { echo "Can't create $(INSTALL_HDR_DIR)/$$ddd"; exit 1; }; \ fi; \ done; \ f=`find $$dd \( -wholename "*/.svn*" -o -name "*~" -o -name "*.bak" \) -prune -o \( -type f -print \)`; \ for ff in $$f; do \ h=`echo $$ff | sed -e "s|$$d|$(INSTALL_HDR_DIR)|"`; \ $(INSTALL_F) $$ff $$h; \ done; \done; \for f in $(HEADERS); do \ h=`basename $$f`; \ $(INSTALL_F) $$f $(INSTALL_HDR_DIR)/$$h || { echo "Can't install $(INSTALL_HDR_DIR)/$$h"; exit 1; }; \doneendef# find $$dd \( -type f \( \! \( -wholename "*/.svn*" -o -name "*~" -o -name "*.bak" \) \) \) -print# _HEADERS_FROM = $(shell for dd in $(HEADERS_BASE); do find $$dd \( -type f \( \! \( -wholename "*/.svn/*" -o -name "*~" -o -name "*.bak" \) \) \) -print ; done )# _HEADERS_TO = $(foreach d,$(HEADERS_BASE),$(patsubst $(d)/%,$(BASE_INSTALL_DIR)include/%,$(_HEADERS_FROM)))install-headers: @$(do_install_headers)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?