Fix building when host and target systems are same arch
[openwrt.git] / package / postgresql / Makefile
1 # $Id$
2
3 include $(TOPDIR)/rules.mk
4
5 PKG_NAME:=postgresql
6 PKG_VERSION:=7.4.7
7 PKG_RELEASE:=3
8 PKG_MD5SUM:=32dac2916d16287d95e0c958a75161fa
9
10 PKG_SOURCE_URL:=\
11 ftp://ftp3.us.postgresql.org/pub/postgresql/source/v$(PKG_VERSION)/ \
12 ftp://ftp.br.postgresql.org/pub/PostgreSQL/source/v$(PKG_VERSION)/ \
13 ftp://ftp.au.postgresql.org/pub/postgresql/source/v$(PKG_VERSION)/ \
14 ftp://ftp.tw.postgresql.org/pub/postgresql/source/v$(PKG_VERSION)/
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
16 PKG_CAT:=bzcat
17
18 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
19 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
20
21 include $(TOPDIR)/package/rules.mk
22
23 $(eval $(call PKG_template,LIBPQ,libpq,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
24 $(eval $(call PKG_template,PGSQL_CLI,pgsql-cli,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
25
26 $(PKG_BUILD_DIR)/.configured:
27 # ./configure advertise "--infodir", but does not support it, replaced with "--docdir"
28 (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
29 $(TARGET_CONFIGURE_OPTS) \
30 CFLAGS="$(TARGET_CFLAGS) $(EXTRA_CFLAGS)" \
31 CPPFLAGS="$$CPPFLAGS -I$(STAGING_DIR)/usr/include" \
32 LDFLAGS="-L$(STAGING_DIR)/usr/lib" \
33 ./configure \
34 --target=$(GNU_TARGET_NAME) \
35 --host=$(GNU_TARGET_NAME) \
36 --build=$(GNU_HOST_NAME) \
37 --program-prefix="" \
38 --program-suffix="" \
39 --prefix=/usr \
40 --exec-prefix=/usr \
41 --bindir=/usr/bin \
42 --datadir=/usr/share \
43 --includedir=/usr/include \
44 --docdir=/usr/share/info \
45 --libdir=/usr/lib \
46 --libexecdir=/usr/lib \
47 --localstatedir=/var \
48 --mandir=/usr/share/man \
49 --sbindir=/usr/sbin \
50 --sysconfdir=/etc \
51 $(DISABLE_NLS) \
52 $(DISABLE_LARGEFILE) \
53 --enable-shared \
54 --enable-static \
55 --disable-integer-datetimes \
56 --disable-rpath \
57 --without-java \
58 --without-krb4 \
59 --without-krb5 \
60 --without-openssl \
61 --without-pam \
62 --without-perl \
63 --without-python \
64 --without-readline \
65 --without-rendezvous \
66 --without-tcl \
67 --without-tk \
68 --with-zlib="yes" \
69 );
70 touch $@
71
72 $(PKG_BUILD_DIR)/.built:
73 $(MAKE) -C "$(PKG_BUILD_DIR)/src/include" \
74 DESTDIR="$(PKG_INSTALL_DIR)" \
75 all install
76 $(MAKE) -C "$(PKG_BUILD_DIR)/src/interfaces/libpq" \
77 DESTDIR="$(PKG_INSTALL_DIR)" \
78 all install
79 $(MAKE) -C "$(PKG_BUILD_DIR)/src/bin/psql" \
80 DESTDIR="$(PKG_INSTALL_DIR)" \
81 all install
82 touch $@
83
84 $(IPKG_LIBPQ):
85 install -d -m0755 $(IDIR_LIBPQ)/usr/lib
86 cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libpq.so.* $(IDIR_LIBPQ)/usr/lib/
87 $(RSTRIP) $(IDIR_LIBPQ)
88 $(IPKG_BUILD) $(IDIR_LIBPQ) $(PACKAGE_DIR)
89
90 $(IPKG_PGSQL_CLI):
91 install -d -m0755 $(IDIR_PGSQL_CLI)/usr/bin
92 cp -fpR $(PKG_INSTALL_DIR)/usr/bin/psql $(IDIR_PGSQL_CLI)/usr/bin/
93 $(RSTRIP) $(IDIR_PGSQL_CLI)
94 $(IPKG_BUILD) $(IDIR_PGSQL_CLI) $(PACKAGE_DIR)
95
96 $(STAGING_DIR)/usr/lib/libpq.so: $(PKG_BUILD_DIR)/.built
97 mkdir -p $(STAGING_DIR)/usr/include
98 cp -fpR $(PKG_INSTALL_DIR)/usr/include/libpq $(STAGING_DIR)/usr/include/
99 cp -fpR $(PKG_INSTALL_DIR)/usr/include/libpq-fe.h $(STAGING_DIR)/usr/include/
100 cp -fpR $(PKG_INSTALL_DIR)/usr/include/postgres_ext.h $(STAGING_DIR)/usr/include/
101 cp -fpR $(PKG_INSTALL_DIR)/usr/include/postgresql $(STAGING_DIR)/usr/include/
102 mkdir -p $(STAGING_DIR)/usr/lib
103 cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libpq.{a,so*} $(STAGING_DIR)/usr/lib/
104 touch $@
105
106 install-dev: $(STAGING_DIR)/usr/lib/libpq.so
107
108 uninstall-dev:
109 rm -rf \
110 $(STAGING_DIR)/usr/include/libpq \
111 $(STAGING_DIR)/usr/include/libpq-fe.h \
112 $(STAGING_DIR)/usr/include/postgres_ext.h \
113 $(STAGING_DIR)/usr/include/postgresql \
114 $(STAGING_DIR)/usr/lib/libpq.{a,so*} \
115
116 compile: install-dev
117 clean: uninstall-dev
This page took 0.058217 seconds and 5 git commands to generate.