--- Makefile.orig 2010-07-20 17:18:58 UTC +++ Makefile @@ -17,21 +17,21 @@ TARFILE_NAME = nifticlib-2.0.0 ## Compiler defines -cc = gcc -CC = gcc -AR = ar -RANLIB = ranlib -DEPENDFLAGS = -MM -GNU_ANSI_FLAGS = -Wall -ansi -pedantic -ANSI_FLAGS = ${GNU_ANSI_FLAGS} -CFLAGS = $(ANSI_FLAGS) +cc ?= gcc +CC ?= gcc +AR ?= ar +RANLIB ?= ranlib +DEPENDFLAGS ?= -MM +GNU_ANSI_FLAGS ?= -ansi -pedantic +ANSI_FLAGS += ${GNU_ANSI_FLAGS} +CFLAGS += $(ANSI_FLAGS) ## Command defines ## gmake does not work on MacOSX or some versions of linux MAKE = gmake -RM = rm -MV = mv -CP = cp -TAR = tar +RM ?= rm +MV ?= mv +CP ?= cp +TAR ?= tar ## Installation @@ -41,9 +41,9 @@ INSTALL_INC_DIR = include ## Zlib defines -ZLIB_INC = -I/usr/include -ZLIB_PATH = -L/usr/lib -ZLIB_LIBS = $(ZLIB_PATH) -lm -lz +ZLIB_INC ?= -I/usr/include +ZLIB_PATH ?= -L/usr/lib +ZLIB_LIBS ?= $(ZLIB_PATH) -lm -lz ############################################################## # platform specific redefines (to use, set ARCH appropriately) @@ -116,33 +116,33 @@ clean_all: clean regress_clean_all insta znz: echo "arch is $(ARCH)" - (cd $(ZNZ); $(MAKE) depend; $(MAKE) lib;) + $(MAKE) -C $(ZNZ) depend lib @echo " ----------- $(ZNZ) build completed." @echo "" nifti: znz - (cd $(NIFTI); $(MAKE) depend; $(MAKE) lib;) + $(MAKE) -C $(NIFTI) depend lib @echo " ----------- $(NIFTI) build completed." @echo "" nifticdf:nifti - (cd $(NIFTICDF); $(MAKE) depend; $(MAKE) lib;) + $(MAKE) -C $(NIFTICDF) depend lib @echo " ----------- $(NIFTICDF) build completed." @echo "" fslio: nifti - (cd $(FSLIO); $(MAKE) depend; $(MAKE) lib;) + $(MAKE) -C $(FSLIO) depend lib @echo " ---------- $(FSLIO) build completed." @echo "" example:nifti - (cd $(EXAMPLES); $(MAKE) all;) + $(MAKE) -C $(EXAMPLES) all @echo Example programs built. @echo "" utils: nifti nifticdf - (cd $(UTILS); $(MAKE) all;) + $(MAKE) -C $(UTILS) all @echo Utility programs built. @echo "" @@ -152,7 +152,7 @@ doc: @echo "" regress_data: - (cd $(TESTING); $(MAKE) regress_data 'RM=$(RM)' 'TAR=$(TAR)'; ) + $(MAKE) -C $(TESTING) regress_data 'RM=$(RM)' 'TAR=$(TAR)' @echo "" @echo Regression testing data installed. @echo See Testing/README_regress for details. @@ -167,25 +167,25 @@ $(INSTALL_INC_DIR): $(INSTALL_LIB_DIR): mkdir -p $@ -znz_install: $(INSTALL_INC_DIR) $(INSTALL_LIB_DIR) +znz_install: znz $(INSTALL_INC_DIR) $(INSTALL_LIB_DIR) ($(CP) $(ZNZ)/*.a $(INSTALL_LIB_DIR); $(CP) $(ZNZ)/*.h $(INSTALL_INC_DIR);) $(RANLIB) $(INSTALL_LIB_DIR)/*.a @echo " $(ZNZ) installed." @echo "" -nifti_install: $(INSTALL_INC_DIR) $(INSTALL_LIB_DIR) +nifti_install: nifti $(INSTALL_INC_DIR) $(INSTALL_LIB_DIR) ($(CP) $(NIFTI)/*.a $(INSTALL_LIB_DIR); $(CP) $(NIFTI)/*.h $(INSTALL_INC_DIR);) $(RANLIB) $(INSTALL_LIB_DIR)/*.a @echo " $(NIFTI) installed." @echo "" -nifticdf_install: $(INSTALL_INC_DIR) $(INSTALL_LIB_DIR) +nifticdf_install: nifticdf $(INSTALL_INC_DIR) $(INSTALL_LIB_DIR) ($(CP) $(NIFTICDF)/*.a $(INSTALL_LIB_DIR); $(CP) $(NIFTICDF)/*.h $(INSTALL_INC_DIR);) $(RANLIB) $(INSTALL_LIB_DIR)/*.a @echo " $(NIFTI) installed." @echo "" -fslio_install: $(INSTALL_INC_DIR) $(INSTALL_LIB_DIR) +fslio_install: fslio $(INSTALL_INC_DIR) $(INSTALL_LIB_DIR) ($(CP) $(FSLIO)/*.a $(INSTALL_LIB_DIR); $(CP) $(FSLIO)/*.h $(INSTALL_INC_DIR);) $(RANLIB) $(INSTALL_LIB_DIR)/*.a @echo " $(FSLIO) installed." @@ -212,19 +212,19 @@ fslio_clean: (cd $(FSLIO); $(RM) -f *.o *.a core; $(RM) -f depend.mk;) examples_clean: - (cd $(EXAMPLES); $(MAKE) clean;) + $(MAKE) -C $(EXAMPLES) clean utils_clean: - (cd $(UTILS); $(MAKE) clean;) + $(MAKE) -C $(UTILS) clean doc_clean: ($(RM) -fr docs/html;) regress_clean: - (cd $(TESTING); $(MAKE) regress_clean; ) + $(MAKE) -C $(TESTING) regress_clean regress_clean_all: - (cd $(TESTING); $(MAKE) regress_clean_all; ) + $(MAKE) -C $(TESTING) regress_clean_all tar: (cd .. ; ln -s $(THIS_DIR) ${TARFILE_NAME} ; \