1#-------------------------------------------------------------------------
2#
3# Makefile for src/fe_utils
4#
5# This makefile generates a static library, libpgfeutils.a,
6# for use by client applications
7#
8# Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group
9# Portions Copyright (c) 1994, Regents of the University of California
10#
11# IDENTIFICATION
12#    src/fe_utils/Makefile
13#
14#-------------------------------------------------------------------------
15
16subdir = src/fe_utils
17top_builddir = ../..
18include $(top_builddir)/src/Makefile.global
19
20override CPPFLAGS := -DFRONTEND -I$(libpq_srcdir) $(CPPFLAGS)
21
22OBJS = mbprint.o print.o psqlscan.o simple_list.o string_utils.o
23
24all: libpgfeutils.a
25
26libpgfeutils.a: $(OBJS)
27	rm -f $@
28	$(AR) $(AROPT) $@ $^
29
30psqlscan.c: FLEXFLAGS = -Cfe -p -p
31psqlscan.c: FLEX_NO_BACKUP=yes
32
33# Latest flex causes warnings in this file.
34ifeq ($(GCC),yes)
35psqlscan.o: CFLAGS += -Wno-error
36endif
37
38distprep: psqlscan.c
39
40# libpgfeutils could be useful to contrib, so install it
41install: all installdirs
42	$(INSTALL_STLIB) libpgfeutils.a '$(DESTDIR)$(libdir)/libpgfeutils.a'
43
44installdirs:
45	$(MKDIR_P) '$(DESTDIR)$(libdir)'
46
47uninstall:
48	rm -f '$(DESTDIR)$(libdir)/libpgfeutils.a'
49
50clean distclean:
51	rm -f libpgfeutils.a $(OBJS) lex.backup
52
53# psqlscan.c is supposed to be in the distribution tarball,
54# so do not clean it in the clean/distclean rules
55maintainer-clean: distclean
56	rm -f psqlscan.c
57