]> granicus.if.org Git - postgresql/blob - contrib/pgcrypto/Makefile
Install dynamically loadable modules into a private subdirectory
[postgresql] / contrib / pgcrypto / Makefile
1 #
2 # $Header: /cvsroot/pgsql/contrib/pgcrypto/Makefile,v 1.6 2001/09/16 16:11:09 petere Exp $
3 #
4
5 subdir = contrib/pgcrypto
6 top_builddir = ../..
7 include $(top_builddir)/src/Makefile.global
8
9 # either 'builtin', 'mhash', 'openssl'
10 cryptolib = builtin
11
12 # either 'builtin', 'system'
13 cryptsrc = builtin
14
15 ##########################
16
17 ifeq ($(cryptolib), builtin)
18 CRYPTO_CFLAGS =
19 CRYPTO_LDFLAGS =
20 SRCS = md5.c sha1.c internal.c blf.c rijndael.c
21 endif
22
23 ifeq ($(cryptolib), openssl)
24 CRYPTO_CFLAGS = -I/usr/include/openssl
25 CRYPTO_LDFLAGS = -lcrypto
26 SRCS = openssl.c
27 endif
28
29 ifeq ($(cryptolib), mhash)
30 CRYPTO_CFLAGS = -I/usr/local/include
31 CRYPTO_LDFLAGS = -L/usr/local/lib -lmcrypt -lmhash -lltdl
32 SRCS = mhash.c
33 endif
34
35 ifeq ($(cryptsrc), builtin)
36 SRCS += crypt-blowfish.c crypt-des.c crypt-md5.c 
37 else
38 CRYPTO_CFLAGS += -DPX_SYSTEM_CRYPT
39 endif
40
41 NAME    := pgcrypto
42 SRCS    += pgcrypto.c px.c px-hmac.c px-crypt.c misc.c
43 OBJS    := $(SRCS:.c=.o)
44 SHLIB_LINK := $(CRYPTO_LDFLAGS)
45 SO_MAJOR_VERSION = 0
46 SO_MINOR_VERSION = 1
47
48 override CPPFLAGS       += $(CRYPTO_CFLAGS) -I$(srcdir) 
49 override DLLLIBS := $(BE_DLLLIBS) $(DLLLIBS)
50 rpath :=
51
52 all: all-lib $(NAME).sql
53
54 include $(top_srcdir)/src/Makefile.shlib
55
56 $(NAME).sql: $(NAME).sql.in
57         sed 's,@MODULE_FILENAME@,$$libdir/$(NAME),g' $< >$@
58
59 rijndael.o: rijndael.tbl
60
61 rijndael.tbl:
62         $(CC) $(CPPFLAGS) $(CFLAGS) -DPRINT_TABS rijndael.c -o gen-rtab
63         ./gen-rtab > rijndael.tbl
64
65 install: all installdirs
66         $(INSTALL_SHLIB) $(shlib)       $(DESTDIR)$(pkglibdir)/pgcrypto$(DLSUFFIX)
67         $(INSTALL_DATA) $(NAME).sql     $(DESTDIR)$(datadir)/contrib/$(NAME).sql
68         $(INSTALL_DATA) README.$(NAME)  $(DESTDIR)$(docdir)/contrib/README.$(NAME)
69
70 installdirs:
71         $(mkinstalldirs) $(pkglibdir) $(datadir)/contrib $(docdir)/contrib
72
73 uninstall: uninstall-lib
74         rm -f $(DESTDIR)$(pkglibdir)/pgcrypto$(DLSUFFIX) $(datadir)/contrib/$(NAME).sql $(docdir)/contrib/README.$(NAME)
75
76 clean distclean maintainer-clean: clean-lib
77         rm -f $(OBJS) $(NAME).sql gen-rtab