File: GNUmakefile.in

package info (click to toggle)
postgis 3.6.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 74,680 kB
  • sloc: ansic: 163,427; sql: 95,196; xml: 54,290; cpp: 12,646; perl: 5,875; sh: 5,415; makefile: 3,492; python: 1,207; yacc: 447; lex: 151; pascal: 58
file content (313 lines) | stat: -rw-r--r-- 7,903 bytes parent folder | download | duplicates (3)
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
#-----------------------------------------------------
#
# Configuration directives are in postgis_config.h
#
#-----------------------------------------------------

SUBDIRS = liblwgeom

ifeq (@SUPPORT_POSTGRESQL@,yes)
SUBDIRS += @DEPS_SUBDIR@ libpgcommon postgis regress @TOPOLOGY@ @SFCGAL@ doc
endif
SUBDIRS += @RASTER@ loader
ifeq (@SUPPORT_POSTGRESQL@,yes)
# NOTE: utils need be built after raster
# See https://trac.osgeo.org/postgis/ticket/5779
# NOTE: extension need be built after raster
# See https://trac.osgeo.org/postgis/ticket/5780
SUBDIRS += utils @EXTENSIONS@
endif

HAVE_SFCGAL=@HAVE_SFCGAL@
CAN_BUILD_COMMENTS=@CAN_BUILD_COMMENTS@

POSTGIS_MAJOR_VERSION=@POSTGIS_MAJOR_VERSION@
POSTGIS_MINOR_VERSION=@POSTGIS_MINOR_VERSION@
POSTGIS_MICRO_VERSION=@POSTGIS_MICRO_VERSION@
POSTGIS_FULL_VERSION=$(POSTGIS_MAJOR_VERSION).$(POSTGIS_MINOR_VERSION).$(POSTGIS_MICRO_VERSION)

CTAGS = ctags
PERL = @PERL@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@

# todo: add more rules here, like uninstall, clean...
all install uninstall noop clean distclean check-unit:
	for s in $(SUBDIRS); do \
		echo "---- Making $@ in $${s}"; \
		$(MAKE) -C $${s} $@ || exit 1; \
	done;
	@if test x"$@" = xall; then \
		echo "PostGIS was built successfully. Ready to install."; \
	fi
ifneq (@EXTENSIONS@,)
	@if test x"$@" = xinstall; then \
		if test x"@INSTALL_EXTENSION_UPGRADES@" = xyes; then \
			$(MAKE) install-extension-upgrades-from-known-versions; \
		else \
			echo; \
			echo "PostGIS extensions installed, upgrade scripts retained."; \
			echo; \
			echo "You may use the "postgis" script to only install the ones you need, or";\
			echo "you can install the ones required to upgrade from currently known versions with:"; \
			echo; \
			echo "  make install-extension-upgrades-from-known-versions"; \
			echo; \
		fi; \
	fi
endif

ifneq (@EXTENSIONS@,)
install-extension-upgrades-from-known-versions:
	$(MAKE) -C extensions/ $@
endif

all: postgis_revision.h

ifeq (@SUPPORT_POSTGRESQL@,yes)
ifeq ($(CAN_BUILD_COMMENTS),yes)
install: comments-install
uninstall: comments-uninstall
endif
endif

clean: docs-clean clean-local

clean-local:

# TODO: drop 'test' target..
test: check

check: check-unit docs-check check-lint check-spell

ifeq (@SUPPORT_POSTGRESQL@,yes)
check: check-regress
endif

# The "lint" tests do not depend on specific code configurations
# but solely on the source code state
check-lint: check-no-trailing-blanks check-news check-tests-enabled check-lang-enabled

staged-install: all
	$(MAKE) -C regress staged-install

check-news:
	$(top_srcdir)/utils/check_news.sh $(top_srcdir)

check-unit check-regress: all

check-regress: export POSTGIS_REGRESS_DB ?= postgis_reg-$(POSTGIS_MAJOR_VERSION).$(POSTGIS_MINOR_VERSION)

check-no-trailing-blanks:
	! find $(top_srcdir) -name '*.c' -o -name '*.h' -o -name '*.proto' | \
		grep -v lwin_wkt_lex.c | \
		grep -v lwin_wkt_parse | \
		grep -v lookup3 | \
		grep -v vector_tile.pb-c | \
		grep -v postgis/sqldefines.h | \
		grep -v deps/ | \
		xargs grep -n '[[:space:]]$$'

installcheck: installcheck-base installcheck-upgrade

installcheck-base:
	# this includes packaged-extension self upgrade
	$(MAKE) check-regress RUNTESTFLAGS="$(RUNTESTFLAGS) --extension"

installcheck-upgrade-base:
	$(MAKE) installcheck-base \
			RUNTESTFLAGS="$(RUNTESTFLAGS) \
			--upgrade"

installcheck-upgrade:
	$(MAKE) installcheck-upgrade-from-unpackaged
	$(MAKE) installcheck-upgrade-from-unpackaged-by-func
	$(MAKE) installcheck-upgrade-from-packaged-by-func


installcheck-upgrade-from-unpackaged:
	$(MAKE) installcheck-upgrade-base \
			RUNTESTFLAGS="$(RUNTESTFLAGS) \
			--upgrade-path unpackaged--$(POSTGIS_FULL_VERSION)"

installcheck-upgrade-from-unpackaged-by-func:
	$(MAKE) installcheck-upgrade-base \
			RUNTESTFLAGS="$(RUNTESTFLAGS) \
			--upgrade-path unpackaged--$(POSTGIS_FULL_VERSION)!"

installcheck-upgrade-from-packaged-by-func:
	$(MAKE) installcheck-upgrade-base \
			RUNTESTFLAGS="$(RUNTESTFLAGS) \
			--upgrade-path $(POSTGIS_FULL_VERSION)--$(POSTGIS_FULL_VERSION)!"



distclean: distclean-local

distclean-local: clean-local
	rm -Rf autom4te.cache
	rm -f GNUmakefile
	rm -f config.log config.cache config.status
	rm -f postgis_config.h
	rm -f libtool
	if test -z "@RASTER@"; then \
		$(MAKE) -C raster/rt_pg distclean; \
		rm -f raster/Makefile; \
	fi
	if test -z "@SFCGAL@"; then \
		$(MAKE) -C sfcgal distclean; \
		rm -f sfcgal/Makefile; \
	fi

# GNU Coding Standards wants capitalized TAGS:
# https://www.gnu.org/prep/standards/html_node/Standard-Targets.html
# But for ctags a lowercase is normally used:
# https://git.savannah.gnu.org/cgit/bash.git/tree/Makefile.in#n823
.PHONY: tags
tags:
	cd $(top_srcdir) && $(CTAGS) \
		--exclude=build \
		--exclude=ci \
		--exclude=doc \
		--exclude=.git \
		--exclude=regress \
		--exclude=utils \
		--recurse=yes

maintainer-clean-local: distclean-local
	rm -f configure
	rm -Rf build-aux
	rm -f tags

maintainer-clean:
	@echo '------------------------------------------------------'
	@echo 'This command is intended for maintainers to use; it'
	@echo 'deletes files that may need special tools to rebuild.'
	@echo '------------------------------------------------------'
	$(MAKE) -C doc maintainer-clean
	$(MAKE) -C postgis maintainer-clean
	$(MAKE) -C liblwgeom maintainer-clean
	$(MAKE) maintainer-clean-local

garden:
	@echo '------------------------------------------------------'
	@echo 'Generating SQL file from Documentation'
	@echo '------------------------------------------------------'
	$(MAKE) -C doc garden
	@echo '------------------------------------------------------'
	@echo 'Launch regression Test'
	@echo '------------------------------------------------------'
	$(MAKE) -C regress garden

templategis:
	$(MAKE) -C extras/template_gis

templategis-clean:
	$(MAKE) -C extras/template_gis clean

templategis-install:
	$(MAKE) -C extras/template_gis install

templategis-uninstall:
	$(MAKE) -C extras/template_gis uninstall

docs: postgis_revision.h
	$(MAKE) -C doc html

docs-localized: postgis_revision.h
	$(MAKE) -C doc html-localized

docs-clean:
	$(MAKE) -C doc clean

docs-check:
	$(MAKE) -C doc check

comments:
	$(MAKE) -C doc comments

cheatsheets:
	$(MAKE) -C doc cheatsheets

comments-install:
	$(MAKE) -C doc comments-install

comments-uninstall:
	$(MAKE) -C doc comments-uninstall

docs-install:
	$(MAKE) -C doc install

docs-uninstall:
	$(MAKE) -C doc uninstall

#utils:
#	$(MAKE) -C utils

configure: configure.in
	./autogen.sh

config.status: configure
	./configure

ChangeLog:
	git log --pretty --numstat --summary | PERL_UNICODE="IO" git2cl > ChangeLog

raster-sql:
	$(MAKE) -C raster rtpostgis.sql

.PHONY: fmt
fmt:
	./astyle.sh

commit:
	$(MAKE) fmt && $(MAKE) clean && $(MAKE) check && svn commit


ifeq (@PHONY_REVISION@,yes)
.PHONY: postgis_revision.h
endif

postgis_revision.h:
	$(PERL) $(top_srcdir)/utils/repo_revision.pl

.PHONY: utils liblwgeom ChangeLog raster

include $(top_builddir)/regress/core/tests.mk
include $(top_srcdir)/regress/loader/tests.mk
include $(top_srcdir)/regress/dumper/tests.mk
include $(top_srcdir)/extensions/postgis_tiger_geocoder/tests.mk
ifeq ($(HAVE_SFCGAL),yes)
	override RUNTESTFLAGS := $(RUNTESTFLAGS) --sfcgal
	include $(top_builddir)/sfcgal/regress/tests.mk
endif
ifeq (@TOPOLOGY@,topology)
	include $(top_srcdir)/topology/test/tests.mk
endif
ifeq (@RASTER@,raster)
	include $(top_builddir)/raster/test/regress/tests.mk
endif

include $(top_srcdir)/regress/runtest.mk

check-regress: staged-install check-regress-deps

check-tests-enabled:
	$(top_srcdir)/utils/check_tests_enabled.sh $(top_srcdir)

check-lang-enabled:
	$(top_srcdir)/utils/check_lang_enabled.sh $(top_srcdir)


check-regress-deps:
ifeq (@TOPOLOGY@,topology)
	$(MAKE) -C topology/test $@
endif


check-spell:
ifneq (@CODESPELL@,)
	cd $(top_srcdir) && @CODESPELL@
else
	@echo "SKIP: codespell not installed, cannot check spell"
endif