[complement-svn] SF.net SVN: complement: [1316] trunk/explore/Makefiles
Status: Pre-Alpha
Brought to you by:
complement
From: <com...@us...> - 2006-10-12 16:36:32
|
Revision: 1316 http://svn.sourceforge.net/complement/?rev=1316&view=rev Author: complement Date: 2006-10-12 09:36:22 -0700 (Thu, 12 Oct 2006) Log Message: ----------- * gmake/targetdirs.mak: use 'so' prefix instead of 'shared'; use '_g', '_stlg' suffixes instead of '-g' and '-stlg'; generalize path to output and install catalogs. * gmake/linux/rules-install-so.mak: fix typo * gmake/lib/clean.mak: remove output directories on clean and install directories on distclean, but only if ones are empty Modified Paths: -------------- trunk/explore/Makefiles/ChangeLog trunk/explore/Makefiles/gmake/lib/clean.mak trunk/explore/Makefiles/gmake/linux/rules-install-so.mak trunk/explore/Makefiles/gmake/targetdirs.mak Modified: trunk/explore/Makefiles/ChangeLog =================================================================== --- trunk/explore/Makefiles/ChangeLog 2006-10-12 11:25:06 UTC (rev 1315) +++ trunk/explore/Makefiles/ChangeLog 2006-10-12 16:36:22 UTC (rev 1316) @@ -1,3 +1,14 @@ +2006-10-12 Petr Ovtchenkov <pt...@is...> + + * gmake/targetdirs.mak: use 'so' prefix instead of 'shared'; + use '_g', '_stlg' suffixes instead of '-g' and '-stlg'; + generalize path to output and install catalogs. + + * gmake/linux/rules-install-so.mak: fix typo + + * gmake/lib/clean.mak: remove output directories on clean + and install directories on distclean, but only if ones are empty + 2006-10-09 Petr Ovtchenkov <pt...@is...> * gmake/linux/rules-so.mak, gmake/linux/rules-install-so.mak: Modified: trunk/explore/Makefiles/gmake/lib/clean.mak =================================================================== --- trunk/explore/Makefiles/gmake/lib/clean.mak 2006-10-12 11:25:06 UTC (rev 1315) +++ trunk/explore/Makefiles/gmake/lib/clean.mak 2006-10-12 16:36:22 UTC (rev 1316) @@ -1,5 +1,13 @@ -# -*- makefile -*- Time-stamp: <04/03/03 15:34:48 ptr> -# $Id$ +# -*- makefile -*- Time-stamp: <06/10/12 19:53:46 ptr> +# +# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006 +# Petr Ovtchenkov +# +# Portion Copyright (c) 1999-2001 +# Parallel Graphics Ltd. +# +# Licensed under the Academic Free License version 3.0 +# clobber:: @-rm -f ${SO_NAME_OUT} @@ -17,6 +25,7 @@ @-rm -f ${A_NAME_OUT} @-rm -f ${A_NAME_OUT_DBG} @-rm -f ${A_NAME_OUT_STLDBG} + @-rmdir -p ${OUTPUT_DIR} ${OUTPUT_DIR_DBG} ${OUTPUT_DIR_STLDBG} 2>/dev/null || exit 0 ifeq ($(OSNAME), cygming) @-rm -f ${LIB_NAME_OUT} @-rm -f ${LIB_NAME_OUT_DBG} @@ -42,3 +51,4 @@ @-rm -f $(INSTALL_LIB_DIR)/${A_NAME_OUT} @-rm -f $(INSTALL_LIB_DIR_DBG)/${A_NAME_OUT_DBG} @-rm -f $(INSTALL_LIB_DIR_STLDBG)/${A_NAME_OUT_STLDBG} + @-rmdir -p $(INSTALL_LIB_DIR) $(INSTALL_LIB_DIR_DBG) $(INSTALL_LIB_DIR_STLDBG) 2>/dev/null || exit 0 Modified: trunk/explore/Makefiles/gmake/linux/rules-install-so.mak =================================================================== --- trunk/explore/Makefiles/gmake/linux/rules-install-so.mak 2006-10-12 11:25:06 UTC (rev 1315) +++ trunk/explore/Makefiles/gmake/linux/rules-install-so.mak 2006-10-12 16:36:22 UTC (rev 1316) @@ -1,4 +1,13 @@ -# -*- makefile -*- Time-stamp: <06/10/09 17:38:01 ptr> +# -*- makefile -*- Time-stamp: <06/10/12 19:53:51 ptr> +# +# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006 +# Petr Ovtchenkov +# +# Portion Copyright (c) 1999-2001 +# Parallel Graphics Ltd. +# +# Licensed under the Academic Free License version 3.0 +# INSTALL_TAGS ?= install-release-shared install-dbg-shared install-stldbg-shared @@ -72,13 +81,13 @@ @if [ -h $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGxx} ] ; then \ if [ `readlink $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGxx}` != "${SO_NAME_STLDBGxxx}" ]; then \ rm $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGxx}; \ - ln -s ${SO_NAME_STLDBGxxx} $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_DSTLBGxx}; \ + ln -s ${SO_NAME_STLDBGxxx} $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGxx}; \ fi \ else \ - ln -s ${SO_NAME_STLDBGxxx} $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_DSTLBGxx}; \ + ln -s ${SO_NAME_STLDBGxxx} $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGxx}; \ fi @if [ -h $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGx} ] ; then \ - if [ `readlink $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGx}` != "${SO_NAME_DBGxx}" ]; then \ + if [ `readlink $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGx}` != "${SO_NAME_STLDBGxx}" ]; then \ rm $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGx}; \ ln -s ${SO_NAME_STLDBGxx} $(INSTALL_LIB_DIR_STLDBG)/${SO_NAME_STLDBGx}; \ fi \ Modified: trunk/explore/Makefiles/gmake/targetdirs.mak =================================================================== --- trunk/explore/Makefiles/gmake/targetdirs.mak 2006-10-12 11:25:06 UTC (rev 1315) +++ trunk/explore/Makefiles/gmake/targetdirs.mak 2006-10-12 16:36:22 UTC (rev 1316) @@ -1,4 +1,13 @@ -# Time-stamp: <05/12/07 23:45:41 ptr> +# Time-stamp: <06/10/12 19:53:42 ptr> +# +# Copyright (c) 1997-1999, 2002, 2003, 2005, 2006 +# Petr Ovtchenkov +# +# Portion Copyright (c) 1999-2001 +# Parallel Graphics Ltd. +# +# Licensed under the Academic Free License version 3.0 +# ifdef TARGET_OS TARGET_NAME := ${TARGET_OS}- @@ -6,39 +15,32 @@ TARGET_NAME := endif -PRE_OUTPUT_DIR := obj/$(TARGET_NAME)$(COMPILER_NAME) -OUTPUT_DIR := $(PRE_OUTPUT_DIR)/shared$(EXTRA_DIRS) -OUTPUT_DIR_DBG := $(PRE_OUTPUT_DIR)/shared-g$(EXTRA_DIRS) -OUTPUT_DIR_STLDBG := $(PRE_OUTPUT_DIR)/shared-stlg$(EXTRA_DIRS) +BASE_OUTPUT_DIR := obj +PRE_OUTPUT_DIR := $(BASE_OUTPUT_DIR)/$(TARGET_NAME)$(COMPILER_NAME) +OUTPUT_DIR := $(PRE_OUTPUT_DIR)/so$(EXTRA_DIRS) +OUTPUT_DIR_DBG := $(PRE_OUTPUT_DIR)/so_g$(EXTRA_DIRS) +OUTPUT_DIR_STLDBG := $(PRE_OUTPUT_DIR)/so_stlg$(EXTRA_DIRS) # file to store generated dependencies for make: -DEPENDS_COLLECTION := obj/$(TARGET_NAME)$(COMPILER_NAME)/.make.depend +DEPENDS_COLLECTION := $(PRE_OUTPUT_DIR)/.make.depend # I use the same catalog, as for shared: OUTPUT_DIR_A := $(OUTPUT_DIR) OUTPUT_DIR_A_DBG := $(OUTPUT_DIR_DBG) OUTPUT_DIR_A_STLDBG := $(OUTPUT_DIR_STLDBG) -INSTALL_LIB_DIR ?= ${SRCROOT}/build/$(TARGET_NAME)lib -INSTALL_LIB_DIR_DBG ?= ${SRCROOT}/build/$(TARGET_NAME)lib -INSTALL_LIB_DIR_STLDBG ?= ${SRCROOT}/build/$(TARGET_NAME)lib -INSTALL_BIN_DIR ?= ${SRCROOT}/build/$(TARGET_NAME)bin -# install catalog will be same in case of cross-compilation or under -# CygWin or MinGW environments; but you can specify install dir you -# want---if one is defined it will not be overlaped. -ifeq ("${TARGET_NAME}","") -ifneq (${OSNAME},cygming) -INSTALL_BIN_DIR_DBG ?= ${SRCROOT}/build/$(TARGET_NAME)bin-g -INSTALL_BIN_DIR_STLDBG ?= ${SRCROOT}/build/$(TARGET_NAME)bin-stlg -else -INSTALL_BIN_DIR_DBG ?= ${INSTALL_BIN_DIR} -INSTALL_BIN_DIR_STLDBG ?= ${INSTALL_BIN_DIR} -endif -else -INSTALL_BIN_DIR_DBG ?= ${INSTALL_BIN_DIR} -INSTALL_BIN_DIR_STLDBG ?= ${INSTALL_BIN_DIR} -endif +BASE_INSTALL_DIR ?= ${SRCROOT}/build/$(TARGET_NAME) +BASE_INSTALL_LIB_DIR ?= ${BASE_INSTALL_DIR} +BASE_INSTALL_BIN_DIR ?= ${BASE_INSTALL_DIR} + +INSTALL_LIB_DIR ?= ${BASE_INSTALL_LIB_DIR}lib +INSTALL_LIB_DIR_DBG ?= ${BASE_INSTALL_LIB_DIR}lib +INSTALL_LIB_DIR_STLDBG ?= ${BASE_INSTALL_LIB_DIR}lib +INSTALL_BIN_DIR ?= ${BASE_INSTALL_BIN_DIR}bin +INSTALL_BIN_DIR_DBG ?= ${INSTALL_BIN_DIR}_g +INSTALL_BIN_DIR_STLDBG ?= ${INSTALL_BIN_DIR}_stlg + OUTPUT_DIRS := $(OUTPUT_DIR) $(OUTPUT_DIR_DBG) $(OUTPUT_DIR_STLDBG) \ $(OUTPUT_DIR_A) $(OUTPUT_DIR_A_DBG) $(OUTPUT_DIR_A_STLDBG) @@ -53,22 +55,20 @@ PHONY += $(OUTPUT_DIRS) $(INSTALL_DIRS) +define createdirs +@for d in $@ ; do \ + if [ -e $$d -a -f $$d ] ; then \ + echo "ERROR: Regular file $$d present, directory instead expected" ; \ + exit 1; \ + elif [ ! -d $$d ] ; then \ + mkdir -p $$d ; \ + fi ; \ +done +endef + $(OUTPUT_DIRS): - @for d in $@ ; do \ - if [ -e $$d -a -f $$d ] ; then \ - echo "ERROR: Regular file $$d present, directory instead expected" ; \ - exit 1; \ - elif [ ! -d $$d ] ; then \ - mkdir -p $$d ; \ - fi ; \ - done + $(createdirs) $(INSTALL_DIRS): - @for d in $@ ; do \ - if [ -e $$d -a -f $$d ] ; then \ - echo "ERROR: Regular file $$d present, directory instead expected" ; \ - exit 1; \ - elif [ ! -d $$d ] ; then \ - mkdir -p $$d ; \ - fi ; \ - done + $(createdirs) + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |