## @configure_input@ ## ## Filename : Makefile.in ## Description : Makefile template for libsbml src/sbml directory ## Author(s) : Michael Hucka ## Organization: California Institute of Technology ## Created : 2005-03-15 ## Revision : $Id: Makefile.in 9850 2009-07-18 10:33:19Z ajouraku $ ## $HeadURL: https://sbml.svn.sourceforge.net/svnroot/sbml/trunk/libsbml/src/sbml/Makefile.in $ ## ##*/ # ----------------------------------------------------------------------------- # Configuration variables # ----------------------------------------------------------------------------- # Some of the following are substituted automatically by `configure'. If # you are looking at "Makefile", do not edit these values; instead, run the # configure script at the top level of the src tree. It will recreate # "Makefile". include @top_srcdir@/config/makefile-common-vars.mk # `srcdir' points to the current directory, but should be set by configure. # `subdir' must be set manually to the relative dir under `srcdir'. Don't # set `subdir' to an absolute path, or some `make' actions will fail. srcdir = @srcdir@ thisdir = src/sbml # The `headers' list is not actually used for analyzing source dependencies # (a separate mechanism is used for that), but for other things such as what # to distribute and install. headers = \ Compartment.h \ CompartmentType.h \ Constraint.h \ Delay.h \ Event.h \ EventAssignment.h \ FunctionDefinition.h \ InitialAssignment.h \ KineticLaw.h \ ListOf.h \ Model.h \ Parameter.h \ Reaction.h \ Rule.h \ SBMLDocument.h \ SBMLError.h \ SBMLErrorLog.h \ SBMLErrorTable.h \ SBMLNamespaces.h \ SBMLReader.h \ SBMLTypeCodes.h \ SBMLTypes.h \ SBMLVisitor.h \ SBMLWriter.h \ SBO.h \ SBase.h \ Species.h \ SpeciesReference.h \ SpeciesType.h \ StoichiometryMath.h \ Trigger.h \ Unit.h \ UnitDefinition.h \ UnitKind.h sources = \ Compartment.cpp \ CompartmentType.cpp \ Constraint.cpp \ Delay.cpp \ Event.cpp \ EventAssignment.cpp \ FunctionDefinition.cpp \ InitialAssignment.cpp \ KineticLaw.cpp \ ListOf.cpp \ Model.cpp \ Parameter.cpp \ Reaction.cpp \ Rule.cpp \ SBMLConvert.cpp \ SBMLDocument.cpp \ SBMLError.cpp \ SBMLErrorLog.cpp \ SBMLNamespaces.cpp \ SBMLReader.cpp \ SBMLTypeCodes.cpp \ SBMLVisitor.cpp \ SBMLWriter.cpp \ SBO.cpp \ SBase.cpp \ Species.cpp \ SpeciesReference.cpp \ SpeciesType.cpp \ StoichiometryMath.cpp \ Trigger.cpp \ Unit.cpp \ UnitDefinition.cpp \ UnitKind.c # Variables `subdirs', `headers', `sources', `libraries', `extra_CPPFLAGS', # `extra_CXXFLAGS', `extra_LDFLAGS' and `distfiles' are used by the default # rules in `makefile-common-actions.mk' included at the end. extra_CPPFLAGS = -DPACKAGE_VERSION=\"$(PACKAGE_VERSION)\" ifdef USE_EXPAT extra_CPPFLAGS += $(EXPAT_CPPFLAGS) extra_LDFLAGS += $(EXPAT_LDFLAGS) extra_LIBS += $(EXPAT_LIBS) endif ifdef USE_XERCES extra_CPPFLAGS += $(XERCES_CPPFLAGS) extra_LDFLAGS += $(XERCES_LDFLAGS) extra_LIBS += $(XERCES_LIBS) endif ifdef USE_LIBXML extra_CPPFLAGS += $(LIBXML_CPPFLAGS) extra_LDFLAGS += $(LIBXML_LDFLAGS) extra_LIBS += $(LIBXML_LIBS) endif ifdef USE_ZLIB extra_CPPFLAGS += -DUSE_ZLIB endif ifdef USE_BZ2 extra_CPPFLAGS += -DUSE_BZ2 endif ifdef USE_SUN_CC extra_LIBS += -lCstd endif ifneq "$(MAKECMDGOALS)" "dist" ifdef USE_LAYOUT subdirs = layout endif else subdirs = layout endif ifneq "$(MAKECMDGOALS)" "all" subdirs += test endif # The libsbml build is a little more complicated than it used to be. The # library is assembled after compiling the object files in this directory. # However, to link the library, we have to assemble it out of pieces coming # from sibling directories. And we put the results in ../. The following # redefines the defaults from makefile-common-actions.mk to accomplish this. objects = $(call make_objects_list,$(sources)) otherdirs = ../common ../util ../xml ../math ../validator \ ../validator/constraints ../units ../annotation ../compress ifdef USE_LAYOUT otherdirs += ./layout endif objfiles = $(objects) $(wildcard $(addsuffix /*.$(OBJEXT),$(otherdirs))) # The libraries are actually placed in the parent directory. ifeq "$(HOST_TYPE)" "aix" # The nutty thing about AIX is that it uses the same extension (.a) for both # shared and static libraries. You have to pick whether you want one or # the other; you can't provide both at the same time. I'd like to know why # they thought this was a good idea. libraries = ../$(PACKAGE).$(SHAREDLIBEXT) else libraries = ../$(PACKAGE).a ../$(PACKAGE).$(SHAREDLIBEXT) endif # `distfiles' determines the files and directories included in a distribution. # `distfiles_exclude' is used to filter out specific items, so that even if # they appear in `distfiles', they will not be copied in the distribution. distfiles = $(sources) $(headers) Makefile.in # ----------------------------------------------------------------------------- # Primary build actions # ----------------------------------------------------------------------------- # The default action is to remake everything. Those rules which are not # defined below are defined in makefile-common-actions.mk. all: Makefile all-recursive all-this-dir all-this-dir: ; $(MAKE) default # ----------------------------------------------------------------------------- # Checking. # ----------------------------------------------------------------------------- check: all check-recursive $(MAKE) include include: include-recursive # ----------------------------------------------------------------------------- # Tags. # ----------------------------------------------------------------------------- tags: etags ctags # ----------------------------------------------------------------------------- # Installation # ----------------------------------------------------------------------------- install: all install-libraries install-headers installcheck: all installcheck-libraries installcheck-headers uninstall: uninstall-headers uninstall-libraries uninstall-recursive # ----------------------------------------------------------------------------- # Cleaning. # ----------------------------------------------------------------------------- clean: clean-normal clean-recursive distclean: distclean-normal distclean-recursive mostlyclean: mostlyclean-normal mostlyclean-recursive maintainer-clean: maintainer-clean-normal maintainer-clean-recursive # ----------------------------------------------------------------------------- # Creating distribution (for libSBML maintainers only) # ----------------------------------------------------------------------------- dist: dist-normal dist-recursive distcheck: distcheck-normal distcheck-recursive # ----------------------------------------------------------------------------- # Miscellaneous # ----------------------------------------------------------------------------- include @top_srcdir@/config/makefile-common-actions.mk # ----------------------------------------------------------------------------- # End. # -----------------------------------------------------------------------------