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@
31 echo "now type make install"
34 cd src; ${MAKE} libginac.la
37 cd src; ${MAKE} .libs/libginac.a
42 # Target for running a test-suite across the library:
44 if [ "${shared}" ]; then \
45 ${MAKE} sharedcheck; \
47 ${MAKE} staticcheck; \
50 sharedcheck: src/libginac.la
51 cd check; ${MAKE} sharedcheck
53 staticcheck: src/.libs/libginac.a
54 cd check; ${MAKE} staticcheck
56 # Target for making the Ginac INteractive SHell ginsh:
60 # Targets for installation in install directories. The user-visible target
61 # `install' determines which one to call (static lib only or both shared and
64 @ if [ "${shared}" ]; then \
69 ${INSTALL} -d ${includedir}
70 ${INSTALL_DATA} include/* ${includedir}/
71 cd ginsh; ${MAKE} install
72 cd doc; ${MAKE} install
74 shlibinst: libginac.la
75 ${INSTALL} -d ${libdir}
76 ${LIBTOOL} install libginac.la ${libdir}/libginac.la
77 ${LIBTOOL} -n --finish ${libdir}
79 libinst: .libs/libginac.a
80 ${INSTALL} -d ${libdir}
81 ${INSTALL_DATA} .libs/libginac.a ${libdir}/libginac.a
83 # Targets for cleaning up. (clean deletes files created by built, distclean
84 # deletes files created by configuration, uninstall removes all files related
85 # to GiNaC from the system.)
88 cd check; ${MAKE} clean
89 cd ginsh; ${MAKE} clean
92 cd src; ${MAKE} distclean
93 cd check; ${MAKE} distclean
94 cd ginsh; ${MAKE} distclean
95 rm -f config.status config.log config.cache config.h Makefile
98 rm -f ${libdir}/libginac.*
100 cd ginsh; ${MAKE} uninstall
101 cd doc; ${MAKE} uninstall
103 # Convenient targets for those who wish to extend on the documentation:
107 cd doc; ${MAKE} reference
109 cd doc; ${MAKE} tutorial
111 # Special dummy targets:
112 .PHONY: clean distclean all install uninstall check ginsh doc
113 .SUFFIXES: .o .lo .cpp
114 .SILENT: all check sharedcheck staticcheck doc reference tutorial