mirror of
https://github.com/Gnucash/gnucash.git
synced 2024-11-23 01:16:43 -06:00
68c3629534
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@1338 57a11ea4-9604-0410-9ed3-97b8803252fd
198 lines
6.0 KiB
Makefile
198 lines
6.0 KiB
Makefile
# Makefile -- makefile for gnucash
|
|
# Copyright (C) 1997 Robin Clark
|
|
# Copyright (C) 1998 Rob Browning <rlb@cs.utexas.edu>
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License as
|
|
# published by the Free Software Foundation; either version 2 of
|
|
# the License, or (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
#
|
|
# Author: Robin Clark
|
|
# Internet: rclark@rush.aero.org
|
|
# Address: 609 8th Street
|
|
# Huntington Beach, CA 92648-4632
|
|
|
|
SHELL=/bin/bash
|
|
export SHELL
|
|
|
|
srcdir = @srcdir@
|
|
VPATH = @srcdir@
|
|
|
|
prefix=@prefix@
|
|
datadir=@datadir@
|
|
# i.e. /usr/share
|
|
localstatedir=@localstatedir@
|
|
# i.e. /var/
|
|
sysconfdir=@sysconfdir@
|
|
# i.e. /etc/
|
|
|
|
INSTALL = @INSTALL@
|
|
INSTALL_DATA = @INSTALL_DATA@
|
|
CPU = @target_cpu@
|
|
|
|
LIBS=@LIBS@
|
|
|
|
OPT_STYLE_INSTALL=@OPT_STYLE_INSTALL@
|
|
ifeq (${OPT_STYLE_INSTALL},0)
|
|
export GNC_DOCDIR=${prefix}/doc/gnucash
|
|
export GNC_BINDIR=${prefix}/bin
|
|
export GNC_CONFIGDIR=${sysconfdir}/gnucash
|
|
export GNC_SHAREDIR=${datadir}/gnucash
|
|
else
|
|
export GNC_DOCDIR=${prefix}/doc
|
|
export GNC_BINDIR=${prefix}/bin
|
|
export GNC_CONFIGDIR=${sysconfdir}
|
|
export GNC_SHAREDIR=${datadir}
|
|
endif
|
|
|
|
######################################################################
|
|
# Description of targets:
|
|
#
|
|
# default -- make the application
|
|
# depend -- generate the dependencies
|
|
# clean -- remove *.a, *.o, *.bak, and *~
|
|
# distclean -- get rid of config files too...
|
|
# install -- installs everything
|
|
|
|
default:
|
|
@echo " "
|
|
@echo "Please choose one of the following targets:"
|
|
@echo "motif dynamically linked motif version"
|
|
@echo "motif-static statically linked motif version"
|
|
@echo "gnome gnome/gtk version"
|
|
@echo "gnome-static gnome/gtk statically linked version"
|
|
@echo "qt kde/qt version"
|
|
@echo " "
|
|
|
|
# Aliases
|
|
motif-static: motif.static
|
|
gnome-static: gnome.static
|
|
|
|
build-flavor:
|
|
@cd lib; $(MAKE) ${FLAVOR}
|
|
@cd src; $(MAKE) ${FLAVOR}
|
|
ln -sf gnucash.${FLAVOR} gnucash.bin
|
|
ln -sf gnucash.${FLAVOR} gnucash-shell
|
|
(cd share && ln -sf ../src/scm scm)
|
|
|
|
motif:
|
|
${MAKE} FLAVOR=motif build-flavor
|
|
|
|
motif.static:
|
|
${MAKE} FLAVOR=motif.static build-flavor
|
|
|
|
gnome:
|
|
${MAKE} FLAVOR=gnome build-flavor
|
|
|
|
gnome.static:
|
|
${MAKE} FLAVOR=gnome.static build-flavor
|
|
|
|
qt:
|
|
${MAKE} FLAVOR=qt build-flavor
|
|
|
|
depend:
|
|
@echo make depend is now superfluous.
|
|
|
|
clean:
|
|
rm -f *~ *.o *.bak
|
|
@cd lib; $(MAKE) clean
|
|
@cd src; $(MAKE) clean
|
|
|
|
distclean: clean
|
|
rm -f Makefile *~ *.o *.bak share/scm gnucash.bin
|
|
rm -f gnucash.motif gnucash.motif.static \
|
|
gnucash.gnome gnucash.gnome.static gnucash.qt gnucash-shell
|
|
rm -f config.cache config.log config.status config.h
|
|
@cd lib; $(MAKE) distclean
|
|
@cd src; $(MAKE) distclean
|
|
|
|
tagsfiles := $(shell find -name "*.[ch]")
|
|
|
|
TAGS: ${tagsfiles}
|
|
etags ${tagsfiles}
|
|
|
|
install-bin: gnucash.${FLAVOR}
|
|
$(INSTALL) gnucash.${FLAVOR} ${GNC_BINDIR}/gnucash.${FLAVOR}
|
|
(cd ${GNC_BINDIR} && ln -sf gnucash.${FLAVOR} gnucash)
|
|
|
|
install:
|
|
@mkdir -p ${GNC_BINDIR}
|
|
|
|
# Put these in the opposite order of precedence. Final bin/gnucash link will
|
|
# point to the last one that exists...
|
|
-[ -e gnucash.qt ] && ${MAKE} FLAVOR=qt GNC_BINDIR=${GNC_BINDIR} install-bin
|
|
-[ -e gnucash.gnome.static ] && \
|
|
${MAKE} FLAVOR=gnome.static GNC_BINDIR=${GNC_BINDIR} install-bin
|
|
-[ -e gnucash.gnome ] && ${MAKE} FLAVOR=gnome GNC_BINDIR=${GNC_BINDIR} install-bin
|
|
-[ -e gnucash.motif.static ] && \
|
|
${MAKE} FLAVOR=motif.static GNC_BINDIR=${GNC_BINDIR} install-bin
|
|
-[ -e gnucash.motif ] && ${MAKE} FLAVOR=motif GNC_BINDIR=${GNC_BINDIR} install-bin
|
|
|
|
# Make sure at least one succeeded
|
|
[ \
|
|
-e ${GNC_BINDIR}/gnucash.motif -o \
|
|
-e ${GNC_BINDIR}/gnucash.motif.static -o \
|
|
-e ${GNC_BINDIR}/gnucash.gnome -o \
|
|
-e ${GNC_BINDIR}/gnucash.gnome.static -o \
|
|
-e ${GNC_BINDIR}/gnucash.qt \
|
|
]
|
|
|
|
# @mkdir -p $(prefix)/toolbar
|
|
# $(INSTALL_DATA) toolbar/*.xpm $(prefix)/toolbar
|
|
|
|
@mkdir -p ${GNC_DOCDIR}
|
|
$(INSTALL_DATA) Docs/*.html ${GNC_DOCDIR}
|
|
$(INSTALL_DATA) Docs/*.gif ${GNC_DOCDIR}
|
|
# $(INSTALL_DATA) Docs/*.jpg ${GNC_DOCDIR}
|
|
$(INSTALL_DATA) Docs/*.xpm ${GNC_DOCDIR}
|
|
@mkdir -p ${GNC_DOCDIR}/logos
|
|
$(INSTALL_DATA) Docs/logos/*.* ${GNC_DOCDIR}/logos
|
|
|
|
# Config directory
|
|
@mkdir -p ${GNC_CONFIGDIR}
|
|
|
|
# Try to do this in a platform independent way...
|
|
# Directories
|
|
for dir in `find etc/ -type d`; do \
|
|
dest=`echo $$dir | cut -c 5-` \
|
|
mkdir -p ${GNC_CONFIGDIR}/$$dest; \
|
|
done
|
|
|
|
# Files
|
|
for file in `find etc/ -type f`; do \
|
|
dest=`echo $$file | cut -c 5-` \
|
|
${INSTALL_DATA} $$file ${GNC_CONFIGDIR}/$$dest; \
|
|
done
|
|
|
|
# Share directory
|
|
@mkdir -p ${GNC_SHAREDIR}
|
|
|
|
# Try to do this in a platform independent way...
|
|
# Directories
|
|
for dir in `find share/scm/ -type d`; do \
|
|
dest=`echo $$dir | cut -c 11-` \
|
|
mkdir -p ${GNC_SHAREDIR}/scm/$$dest; \
|
|
done
|
|
|
|
# Files
|
|
for file in `find share/scm/ -name "*.scm"`; do \
|
|
dest=`echo $$file | cut -c 11-` \
|
|
${INSTALL_DATA} $$file ${GNC_SHAREDIR}/scm/$$dest; \
|
|
done
|
|
|
|
.PHONY: default install-private install motif motif-static gnome gnome-static qt
|
|
.PHONY: depend clean distclean
|
|
|
|
# Local Variables:
|
|
# tab-width: 2
|
|
# End:
|