[project @ 2001-08-21 09:03:32 by rrt]
[ghc-hetmet.git] / ghc / utils / ghc-pkg / Makefile
1 # -----------------------------------------------------------------------------
2 # $Id: Makefile,v 1.9 2001/08/21 09:03:32 rrt Exp $
3
4 TOP=../..
5 include $(TOP)/mk/boilerplate.mk
6
7 # hack for ghci-inplace script, see below
8 INSTALLING=1
9
10 # -----------------------------------------------------------------------------
11 # ghc-pkg.bin
12
13 HS_PROG           = ghc-pkg.bin
14 SRC_HC_OPTS      += -cpp -DPKG_TOOL -DWANT_PRETTY -package lang \
15                     -package util -package text
16
17 ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32"
18 SRC_HC_OPTS      += -package win32
19 endif
20
21 INSTALL_LIBEXECS = $(HS_PROG)
22
23 # -----------------------------------------------------------------------------
24 # ghc-pkg script
25
26 ifeq "$(INSTALLING)" "1"
27 ifeq "$(BIN_DIST)"   "1"
28 GHCPKGBIN=$$\"\"libexecdir/$(HS_PROG)
29 PKGCONF=$$\"\"libdir/package.conf
30 else
31 GHCPKGBIN=$(libexecdir)/$(HS_PROG)
32 PKGCONF=$(libdir)/package.conf
33 endif # BIN_DIST
34 else
35 GHCPKGBIN=$(FPTOOLS_TOP_ABS)/ghc/utils/ghc-pkg/$(HS_PROG)
36 PKGCONF=$(FPTOOLS_TOP_ABS)/ghc/driver/package.conf.inplace
37 endif
38
39 INSTALLED_SCRIPT_PROG  = ghc-pkg-$(ProjectVersion)
40 INPLACE_SCRIPT_PROG    = ghc-pkg-inplace
41
42 SCRIPT_OBJS       = ghc-pkg.sh
43 INTERP            = $(SHELL)
44 SCRIPT_SUBST_VARS = GHCPKGBIN PKGCONFOPT
45 INSTALL_SCRIPTS  += $(SCRIPT_PROG)
46 PKGCONFOPT        = -f $(PKGCONF)
47
48 ifeq "$(INSTALLING)" "1"
49 SCRIPT_PROG     =  $(INSTALLED_SCRIPT_PROG)
50 LINK            =  ghc-pkg
51 else
52 SCRIPT_PROG     =  $(INPLACE_SCRIPT_PROG)
53 endif
54
55 # -----------------------------------------------------------------------------
56 # don't recurse on 'make install'
57 #
58 ifeq "$(INSTALLING)" "1"
59 all clean distclean maintainer-clean ::
60         $(MAKE) INSTALLING=0 BIN_DIST=0 $(MFLAGS) $@
61 endif
62
63 include $(TOP)/mk/target.mk