port mysql (client library) to buildroot-ng
[openwrt/svn-archive/archive.git] / libs / mysql / Makefile
1 #
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=mysql
12 PKG_VERSION:=5.0.18
13 PKG_RELEASE:=1
14
15 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
16 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
17 PKG_SOURCE_URL:=\
18 http://mysql.planetmirror.com/Downloads/MySQL-5.0/ \
19 http://mysql.he.net/Downloads/MySQL-5.0/ \
20 http://www.linorg.usp.br/mysql/Downloads/MySQL-5.0/ \
21 http://mysql.holywar.net/Downloads/MySQL-5.0/
22 PKG_MD5SUM:=f18153b0239aaa03fc5a751f2d82cb71
23 PKG_CAT:=zcat
24
25 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
26
27 include $(INCLUDE_DIR)/package.mk
28
29 define Package/libmysqlclient
30 SECTION:=libs
31 CATEGORY:=Libraries
32 DEPENDS:=+zlib
33 TITLE:=MySQL client library
34 DESCRIPTION:=MySQL client library.
35 URL:=http://dev.mysql.com/
36 endef
37
38 define Build/Configure
39 (cd $(PKG_BUILD_DIR); rm -f config.cache; \
40 touch configure.in; \
41 touch aclocal.m4; \
42 touch Makefile.in; \
43 touch config.h.in; \
44 touch configure; \
45 $(TARGET_CONFIGURE_OPTS) \
46 CFLAGS="$(TARGET_CFLAGS)" \
47 CXXFLAGS="$(TARGET_CFLAGS)" \
48 CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \
49 LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
50 ac_atomic_add=yes \
51 ac_atomic_sub=yes \
52 ac_cv_sys_restartable_syscalls=yes \
53 ac_cv_conv_longlong_to_float=yes \
54 mysql_cv_compress=yes \
55 mysql_cv_gethostname_style=glibc2 \
56 ./configure \
57 --target=$(GNU_TARGET_NAME) \
58 --host=$(GNU_TARGET_NAME) \
59 --build=$(GNU_HOST_NAME) \
60 --program-prefix="" \
61 --program-suffix="" \
62 --prefix=/usr \
63 --exec-prefix=/usr \
64 --bindir=/usr/bin \
65 --datadir=/usr/share \
66 --includedir=/usr/include \
67 --infodir=/usr/share/info \
68 --libdir=/usr/lib \
69 --libexecdir=/usr/lib \
70 --localstatedir=/var \
71 --mandir=/usr/share/man \
72 --sbindir=/usr/sbin \
73 --sysconfdir=/etc \
74 $(DISABLE_LARGEFILE) \
75 $(DISABLE_NLS) \
76 --enable-shared \
77 --enable-static \
78 --disable-assembler \
79 --with-pthread \
80 --without-raid \
81 --with-unix-socket-path=/tmp \
82 --without-libwrap \
83 --without-pstack \
84 --with-low-memory \
85 --without-server \
86 --without-embedded-server \
87 --without-query-cache \
88 --without-mysqlfs \
89 --without-vio \
90 --without-openssl \
91 --without-docs \
92 --without-bench \
93 --without-readline \
94 );
95 endef
96
97 define Build/Compile
98 rm -rf $(PKG_INSTALL_DIR)
99 mkdir -p $(PKG_INSTALL_DIR)
100 $(MAKE) -C "$(PKG_BUILD_DIR)" \
101 SUBDIRS="include" \
102 DESTDIR="$(PKG_INSTALL_DIR)" \
103 all install
104 $(MAKE) -C "$(PKG_BUILD_DIR)/libmysql" \
105 CC="$(HOSTCC)" \
106 LINK="$(HOSTCC) -o conf_to_src -lc" \
107 CFLAGS="" \
108 CPPFLAGS="" \
109 conf_to_src
110 $(MAKE) -C "$(PKG_BUILD_DIR)" \
111 SUBDIRS="libmysql" \
112 DESTDIR="$(PKG_INSTALL_DIR)" \
113 all install
114 $(MAKE) -C "$(PKG_BUILD_DIR)" \
115 SUBDIRS="scripts" \
116 DESTDIR="$(PKG_INSTALL_DIR)" \
117 bin_SCRIPTS="mysql_config" \
118 install
119 endef
120
121 define Package/libmysqlclient/install
122 install -d -m0755 $(1)/usr/lib
123 $(CP) $(PKG_INSTALL_DIR)/usr/lib/mysql/libmysqlclient.so.* $(1)/usr/lib/
124 endef
125
126 define Build/InstallDev
127 mkdir -p $(STAGING_DIR)/usr/bin
128 $(CP) $(PKG_INSTALL_DIR)/usr/bin/mysql_config $(STAGING_DIR)/usr/bin/
129 mkdir -p $(STAGING_DIR)/usr/include
130 $(CP) $(PKG_INSTALL_DIR)/usr/include/mysql $(STAGING_DIR)/usr/include/
131 mkdir -p $(STAGING_DIR)/usr/lib
132 $(CP) $(PKG_INSTALL_DIR)/usr/lib/mysql $(STAGING_DIR)/usr/lib/
133 rm -f $(STAGING_DIR)/usr/lib/mysql/libmysqlclient.la
134 endef
135
136 define Build/UninstallDev
137 rm -rf \
138 $(STAGING_DIR)/usr/bin/mysql_config \
139 $(STAGING_DIR)/usr/include/mysql \
140 $(STAGING_DIR)/usr/lib/mysql
141 endef
142
143 $(eval $(call BuildPackage,libmysqlclient))