1 # This is the prototype Makefile for the GiNaC package.
3 # Not every make knows what CXX is, so we inherit it together with some other
4 # values from configure which checks it anyways:
12 # Here come the usual install directories in GNU-configure fashion:
15 exec_prefix = @exec_prefix@
18 includedir = @includedir@/GiNaC
20 # This must be empty unless the user has called configure with --enable-shared:
23 # The version-number is tracked in configure.in only:
24 LIBGINACVER = @LibGiNaC_Ver@
26 # Autoconf macro AC_PROC_INSTALL sets these:
28 INSTALL_DATA = @INSTALL_DATA@
32 echo "now type make install"
35 cd src; ${MAKE} libginac.la
38 cd src; ${MAKE} .libs/libginac.a
44 # Targets for making the GiNaC interactive shell (ginsh)
48 if [ "${shared}" ]; then \
49 ${MAKE} sharedginsh; \
51 ${MAKE} staticginsh; \
54 sharedginsh: src/libginac.la
55 cd ginsh; ${MAKE} sharedginsh
57 staticginsh: src/.libs/libginac.a
58 cd ginsh; ${MAKE} staticginsh
61 # Target for running a test-suite across the library:
63 if [ "${shared}" ]; then \
64 ${MAKE} sharedcheck; \
66 ${MAKE} staticcheck; \
69 sharedcheck: src/libginac.la
70 cd check; ${MAKE} sharedcheck
72 staticcheck: src/.libs/libginac.a
73 cd check; ${MAKE} staticcheck
76 # Targets for installation in install directories. The user-visible target
77 # `install' determines which one to call (static lib only or both shared and
80 @ if [ "${shared}" ]; then \
85 ${INSTALL_DATA} include/GiNaC/*.h ${includedir}/
86 cd ginsh; ${MAKE} install
87 cd doc; ${MAKE} install
89 sharedinst: src/libginac.la
90 ${LIBTOOL} install src/libginac.la ${libdir}/libginac.la
91 ${LIBTOOL} -n --finish ${libdir}
93 staticinst: src/.libs/libginac.a
94 ${INSTALL_DATA} src/.libs/libginac.a ${libdir}/libginac.a
97 ./mkinstalldirs ${libdir} ${includedir}
100 # Targets for cleaning up. (clean deletes files created by built, distclean
101 # deletes files created by configuration, uninstall removes all files related
102 # to GiNaC from the system.)
104 cd src; ${MAKE} clean
105 cd check; ${MAKE} clean
106 cd ginsh; ${MAKE} clean
109 cd src; ${MAKE} distclean
110 cd check; ${MAKE} distclean
111 cd ginsh; ${MAKE} distclean
112 rm -f config.status config.log config.cache config.h Makefile
115 rm -f ${libdir}/libginac.*
117 cd ginsh; ${MAKE} uninstall
118 cd doc; ${MAKE} uninstall
121 # Convenient targets for those who wish to extend on the documentation:
125 cd doc; ${MAKE} reference
127 cd doc; ${MAKE} tutorial
130 # Special dummy targets:
131 .PHONY: clean distclean all install installdirs uninstall check ginsh doc
132 .SUFFIXES: .o .lo .cpp
133 .SILENT: all check sharedcheck staticcheck doc reference tutorial