summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xlib/make/configure9
-rw-r--r--lib/make/configure.in7
-rw-r--r--lib/make/make.config.defn.in3
-rw-r--r--lib/make/make.configuration15
4 files changed, 28 insertions, 6 deletions
diff --git a/lib/make/configure b/lib/make/configure
index cfc352e1..8589dd31 100755
--- a/lib/make/configure
+++ b/lib/make/configure
@@ -4130,6 +4130,12 @@ fi
: ${OPTIONSEP='$(EMPTY_VAR) # a single space'}
+# How to name libraries for this system
+
+: ${LIBNAME_PREFIX='lib'}
+
+: ${LIBNAME_SUFFIX='.a'}
+
# How to link the cactus libraries
@@ -4211,6 +4217,7 @@ fi
: ${GENERAL_LIBRARIES='$(LIBDIRS:%=-L%) $(LIBS:%=-l%)'}
+
# Do we need to make sure Perl makes a backup when editting in place ?
@@ -4420,6 +4427,8 @@ s%@F90_WARN_FLAGS@%$F90_WARN_FLAGS%g
s%@CREATEEXE@%$CREATEEXE%g
s%@DIRSEP@%$DIRSEP%g
s%@OPTIONSEP@%$OPTIONSEP%g
+s%@LIBNAME_PREFIX@%$LIBNAME_PREFIX%g
+s%@LIBNAME_SUFFIX@%$LIBNAME_SUFFIX%g
s%@CACTUSLIBLINKLINE@%$CACTUSLIBLINKLINE%g
s%@C_DEPEND@%$C_DEPEND%g
s%@C_DEPEND_OUT@%$C_DEPEND_OUT%g
diff --git a/lib/make/configure.in b/lib/make/configure.in
index 4a1d3e69..06af3ea2 100644
--- a/lib/make/configure.in
+++ b/lib/make/configure.in
@@ -898,6 +898,12 @@ AC_SUBST(OPTIONSEP)
: ${OPTIONSEP='$(EMPTY_VAR) # a single space'}
+# How to name libraries for this system
+AC_SUBST(LIBNAME_PREFIX)
+: ${LIBNAME_PREFIX='lib'}
+AC_SUBST(LIBNAME_SUFFIX)
+: ${LIBNAME_SUFFIX='.a'}
+
# How to link the cactus libraries
AC_SUBST(CACTUSLIBLINKLINE)
@@ -979,6 +985,7 @@ AC_SUBST(SYS_INC_DIRS)
AC_SUBST(GENERAL_LIBRARIES)
: ${GENERAL_LIBRARIES='$(LIBDIRS:%=-L%) $(LIBS:%=-l%)'}
+
# Do we need to make sure Perl makes a backup when editting in place ?
AC_SUBST(PERL_BACKUP_NECESSARY)
diff --git a/lib/make/make.config.defn.in b/lib/make/make.config.defn.in
index 2f197d00..b66c441b 100644
--- a/lib/make/make.config.defn.in
+++ b/lib/make/make.config.defn.in
@@ -79,6 +79,9 @@ OPTIONSEP = @OPTIONSEP@
# Some architectures need to do something special for linking in libraries
+LIBNAME_PREFIX= @LIBNAME_PREFIX@# Make sure there is no space at end.
+LIBNAME_SUFFIX= @LIBNAME_SUFFIX@
+
CACTUSLIBLINKLINE= @CACTUSLIBLINKLINE@
C_DEPEND = @C_DEPEND@
diff --git a/lib/make/make.configuration b/lib/make/make.configuration
index 189dcd89..a060f7da 100644
--- a/lib/make/make.configuration
+++ b/lib/make/make.configuration
@@ -41,8 +41,11 @@ include $(CONFIG)/make.config.defn
# Put this in temporarily to make sure that people with existing
# configurations aren't disturbed
-ifeq ($(strip $(GENERAL_LIBRARIES)),)
-GENERAL_LIBRARIES = $(LIBDIRS:%=-L%) $(LIBS:%=-l%)
+ifeq ($(strip $(LIBNAME_PREFIX)),)
+ifeq ($(strip $(LIBNAME_SUFFIX)),)
+LIBNAME_PREFIX = lib#
+LIBNAME_SUFFIX = .a
+endif
endif
# Include the list of thorns to be built
@@ -72,7 +75,7 @@ endif
UTIL_DIR=$(EXEDIR)$(DIRSEP)$(CONFIG_NAME)
# Build the executable
-$(EXEDIR)$(DIRSEP)$(EXE): $(CONFIG)/make.thornlist $(CONFIG)/cctk_version.h $(patsubst %,$(CCTK_LIBDIR)/lib%.a,$(notdir $(THORNS) $(CACTUSLIBS)))
+$(EXEDIR)$(DIRSEP)$(EXE): $(CONFIG)/make.thornlist $(CONFIG)/cctk_version.h $(patsubst %,$(CCTK_LIBDIR)/$(LIBNAME_PREFIX)%$(LIBNAME_SUFFIX),$(notdir $(THORNS) $(CACTUSLIBS)))
@echo $(DIVIDER)
@echo Creating $(EXE) in $(EXEDIR) from $(THORNS)
$(CC) $(OPTIMISE_C) $(DEBUG_C) $(CFLAGS) $(CCOMPILEONLY)$(OPTIONSEP)$(TOP)$(DIRSEP)datestamp.o -I$(CONFIG) $(subst /,$(DIRSEP),$(DATESTAMP))
@@ -103,15 +106,15 @@ $(CONFIG)/cctk_version.h: $(CCTK_HOME)/Makefile
# Checks if the library is Cactus, in which case it uses the main source
# directory.
-$(CCTK_LIBDIR)/lib%.a: update
+$(CCTK_LIBDIR)/$(LIBNAME_PREFIX)%$(LIBNAME_SUFFIX): update
@echo $(DIVIDER)
@echo Checking status of $(notdir $@)
if [ ! -d $(SCRATCH_BUILD) ]; then $(MKDIR) $(MKDIRFLAGS) $(SCRATCH_BUILD) ; fi
if [ ! -d $(BUILD_DIR) ]; then $(MKDIR) $(MKDIRFLAGS) $(BUILD_DIR) ; fi
- thorn_name=$(@:$(CCTK_LIBDIR)/lib%.a=%); \
+ thorn_name=$(@:$(CCTK_LIBDIR)/$(LIBNAME_PREFIX)%$(LIBNAME_SUFFIX)=%); \
if [ "$$thorn_name" = "Cactus" ] ; then src_dir=$(CCTK_HOME)/src ; \
else if [ "$$thorn_name" = "CactusBindings" ] ; then src_dir=$(BINDINGS_DIR) ; \
- else src_dir=$(PACKAGE_DIR)/$(@:$(CCTK_LIBDIR)/lib%.a=$(filter %/$(@:$(CCTK_LIBDIR)/lib%.a=%), $(THORNS)))/src ; fi ; fi ;\
+ else src_dir=$(PACKAGE_DIR)/$(@:$(CCTK_LIBDIR)/$(LIBNAME_PREFIX)%$(LIBNAME_SUFFIX)=$(filter %/$(@:$(CCTK_LIBDIR)/$(LIBNAME_PREFIX)%$(LIBNAME_SUFFIX)=%), $(THORNS)))/src ; fi ; fi ;\
if [ ! -d $(BUILD_DIR)/$$thorn_name ]; then $(MKDIR) $(MKDIRFLAGS) $(BUILD_DIR)/$$thorn_name ; fi ; \
cd $(BUILD_DIR)/$$thorn_name ; \
if [ -r "$$src_dir/Makefile" ] ; then make_file=$$src_dir/Makefile ; \