File: Makefile

package info (click to toggle)
postgis 2.5.1%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 75,792 kB
  • sloc: ansic: 139,314; sql: 136,281; xml: 48,954; sh: 4,906; perl: 4,509; makefile: 2,897; python: 1,198; yacc: 441; cpp: 305; lex: 132
file content (63 lines) | stat: -rw-r--r-- 1,978 bytes parent folder | download | duplicates (15)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
include ../../Makefile.config

#
# PostGIS template_gis Makefile
#

SCRIPTS_IN:=$(wildcard *.in)
SCRIPTS:=$(SCRIPTS_IN:.in=)
PUBLIC_SCRIPTS:=mktemplate_gis rmtemplate_gis createdb.postgis
SONAME:=$(shell grep "^REL_MAJOR_VERSION" ../../Version.config | cut -d= -f2)

SUBSTITUTE=-e s!@bindir@!$(SUBBINDIR)!g \
           -e s!@datadir@!$(datadir)!g \
           -e s!@prefix@!$(prefix)!g \
           -e s!@SONAME@!$(SONAME)!g
SCRIPT_PREPARE=cat $(SCRIPT).in | sed $(SUBSTITUTE) > $(SCRIPT)
SCRIPT_TARGETDIR=$(DESTDIR)$(bindir)
SCRIPT_TARGET=$(SCRIPT_TARGETDIR)/$(SCRIPT)
SCRIPT_INSTALL=$(INSTALL_BIN) $(SCRIPT) $(SCRIPT_TARGET)
SCRIPT_LINKDIR=$(DESTDIR)$(prefix)/bin
SCRIPT_LINK=$(SCRIPT_LINKDIR)/$(SCRIPT)
SCRIPT_DOLINK=rm -f $(SCRIPT_LINK); \
              $(LN_S) $(SCRIPT_TARGET) $(SCRIPT_LINKDIR)
SCRIPT_UNINSTALL=rm -f $(SCRIPT_TARGET)
SCRIPT_UNLINK=rm -f $(SCRIPT_LINK)

# would probably be nice to link these somewhere as well
MANPAGES1:=$(wildcard *.1)
MAN1_TARGETDIR=$(DESTDIR)$(mandir)/man1
MAN1_TARGET=$(MAN1_TARGETDIR)/$(MAN1)
MAN1_INSTALL=$(INSTALL_DATA) $(MAN1) $(MAN1_TARGET)
MAN1_UNINSTALL=rm -f $(MAN1_TARGET)

#DEFAULTS_DIR=$(DESTDIR)/etc/default
DEFAULTS_DIR=$(DESTDIR)$(datadir)/default
SCRIPT_DEFAULTS=$(DEFAULTS_DIR)/postgis

all: $(SCRIPTS_IN)
	$(foreach SCRIPT, $(SCRIPTS), $(SCRIPT_PREPARE);)

install: all
	@mkdir -p $(SCRIPT_TARGETDIR)
	@mkdir -p $(SCRIPT_LINKDIR)
	$(foreach SCRIPT, $(SCRIPTS), $(SCRIPT_INSTALL);)
	$(foreach SCRIPT, $(PUBLIC_SCRIPTS), $(SCRIPT_DOLINK);)
	@mkdir -p $(DEFAULTS_DIR)
	cp profile $(SCRIPT_DEFAULTS)
	rm -f $(SCRIPT_TARGETDIR)/profile
	@mkdir -p $(MAN1_TARGETDIR)
	$(foreach MAN1, $(MANPAGES1), $(MAN1_INSTALL);)

uninstall:
	$(foreach SCRIPT, $(PUBLIC_SCRIPTS), $(SCRIPT_UNLINK);)
	$(foreach SCRIPT, $(SCRIPTS), $(SCRIPT_UNINSTALL);)
	$(foreach MAN1, $(MANPAGES1), $(MAN1_UNINSTALL);)

purge: uninstall
	rm -f $(SCRIPT_DEFAULTS)

clean distclean:
	rm -f $(SCRIPTS)

.PHONY: all install uninstall purge clean distclean