1. Summary
  2. Files
  3. Support
  4. Report Spam
  5. Create account
  6. Log in

root/csw/mgar/pkg/mysql5/branches/mysql-5.0.x/Makefile

Revision 17534, 10.9 KB (checked in by wahwah, 2 months ago)

mysql5/branches/mysql-5.0.x: Version bump to 5.0.96

  • Property svn:keywords set to Id
Line 
1# Copyright 2009 OpenCSW
2# Distributed under the terms of the GNU General Public License v2
3# $Id$
4
5# Upstream bug filed:
6# http://bugs.mysql.com/bug.php?id=62567
7
8PROJ_NAME = mysql
9NAME = $(PROJ_NAME)5
10BASE_VERSION = 5.0
11PATCHLEVEL = 96
12ALTS_PRIO = 50
13VERSION = $(BASE_VERSION).$(PATCHLEVEL)
14CATEGORIES = server
15
16# Useful when making a series of builds on the same day
17# GARFLAVOR ?= DBG
18
19DISTNAME = mysql-$(VERSION)
20SPKG_SOURCEURL = http://www.mysql.com/
21
22DESCRIPTION = Multithreaded SQL database server
23define BLURB
24  MySQL is a very fast, multi-threaded, multi-user and robust SQL
25  (Structured Query Language) database server.
26endef
27
28INITSMF = $(sysconfdir)/init\.d/csw$(NAME)
29
30# Existing databases are in this location
31localstatedir = /var$(BUILD_PREFIX)/$(NAME)
32# To avoid file conflicts
33# datadir = $(prefix)/share/mysql/$(BASE_VERSION)
34
35MYSQL_LIB_VER = 15
36
37MERGE_DIRS_isa-extra = $(bindir) $(libdir) $(sbindir) $(libexecdir)
38
39PACKAGES += CSWmysql-dev
40SPKG_DESC_CSWmysql-dev = MySQL development files
41PKGFILES_CSWmysql-dev = $(PKGFILES_DEVEL)
42RUNTIME_DEP_PKGS_CSWmysql-dev += CSWlibmysqlclient-r$(MYSQL_LIB_VER)
43RUNTIME_DEP_PKGS_CSWmysql-dev += CSWlibmysqlclient$(MYSQL_LIB_VER)
44CSWmysql-dev_programs += mysql_config
45PKGFILES_CSWmysql-dev  += $(foreach bin_name,$(CSWmysql-dev_programs),$(call baseisadirs,$(bindir),$(bin_name)))
46PKGFILES_CSWmysql-dev  += $(foreach bin_name,$(CSWmysql-dev_programs),$(mandir)/man1/$(bin_name)\.1)
47PKGFILES_CSWmysql-dev  += $(foreach bin_name,$(CSWmysql-dev_programs),/opt/csw/bin/$(bin_name))
48PKGFILES_CSWmysql-dev  += $(foreach bin_name,$(CSWmysql-dev_programs),/opt/csw/sbin/$(bin_name))
49PKGFILES_CSWmysql-dev  += $(mandir)/man1/mysql_config\.1
50PKGFILES_CSWmysql-dev  += $(prefix)/include.*
51PKGFILES_CSWmysql-dev  += /opt/csw/include/mysql
52OBSOLETED_BY_CSWmysql-dev = CSWmysql5devel
53CHECKPKG_OVERRIDES_CSWmysql-dev += file-with-bad-content|/usr/local|root$(mandir)/man1/mysql_config.1
54PACKAGES += CSWlibmysqlclient$(MYSQL_LIB_VER)
55PKGFILES_CSWlibmysqlclient$(MYSQL_LIB_VER) += $(call baseisadirs,$(libdir),libmysqlclient\.so\.$(MYSQL_LIB_VER)(\.\d+)*)
56SPKG_DESC_CSWlibmysqlclient$(MYSQL_LIB_VER) += MySQL $(BASE_VERSION) client library, libmysqlclient.so.$(MYSQL_LIB_VER)
57RUNTIME_DEP_PKGS_CSWlibmysqlclient$(MYSQL_LIB_VER) += CSWlibz1
58OBSOLETED_BY_CSWlibmysqlclient$(MYSQL_LIB_VER) += CSW$(NAME)rt
59
60PACKAGES += CSWlibmysqlclient-r$(MYSQL_LIB_VER)
61PKGFILES_CSWlibmysqlclient-r$(MYSQL_LIB_VER) += $(call baseisadirs,$(libdir),libmysqlclient_r\.so\.$(MYSQL_LIB_VER)(\.\d+)*)
62SPKG_DESC_CSWlibmysqlclient-r$(MYSQL_LIB_VER) += MySQL $(BASE_VERSION) client library, libmysqlclient_r.so.$(MYSQL_LIB_VER)
63RUNTIME_DEP_PKGS_CSWlibmysqlclient-r$(MYSQL_LIB_VER) += CSWlibz1
64OBSOLETED_BY_CSWlibmysqlclient-r$(MYSQL_LIB_VER) += CSW$(NAME)rt
65
66# Defining the client programs, which are going to pick up the 32- and 64-bit
67# binaries, symbolic links, isaexec stuff and man pages.
68client_programs += myisamlog
69client_programs += myisampack
70client_programs += mysql
71client_programs += mysqlaccess
72client_programs += mysqladmin
73client_programs += mysqlbin
74client_programs += mysqlbinlog
75client_programs += mysqlcheck
76client_programs += mysql_client_test
77client_programs += mysqldump
78client_programs += mysqlhotcopy
79client_programs += mysqlimport
80client_programs += mysqlshow
81client_programs += mysql_zap
82client_programs += perror
83client_programs += replace
84
85PACKAGES += CSW$(NAME)client
86SPKG_DESC_CSW$(NAME)client = MySQL $(BASE_VERSION) client binaries
87PKGFILES_CSW$(NAME)client  = $(bindir)
88PKGFILES_CSW$(NAME)client += $(foreach bin_name,$(client_programs),$(call baseisadirs,$(bindir),$(bin_name)))
89PKGFILES_CSW$(NAME)client += $(foreach bin_name,$(client_programs),$(mandir)/man1/$(bin_name)\.1)
90PKGFILES_CSW$(NAME)client += $(foreach bin_name,$(client_programs),/opt/csw/bin/$(bin_name))
91PKGFILES_CSW$(NAME)client += $(foreach bin_name,$(client_programs),/opt/csw/sbin/$(bin_name))
92RUNTIME_DEP_PKGS_CSW$(NAME)client += CSWlibmysqlclient$(MYSQL_LIB_VER)
93RUNTIME_DEP_PKGS_CSW$(NAME)client += CSWlibncursesw5
94RUNTIME_DEP_PKGS_CSW$(NAME)client += CSWlibz1
95CHECKPKG_OVERRIDES_CSW$(NAME)client += bad-rpath-entry
96
97PACKAGES += CSW$(NAME)
98SPKG_DESC_CSW$(NAME) = Multithreaded SQL database
99RUNTIME_DEP_PKGS_CSW$(NAME) += CSW$(NAME)client
100RUNTIME_DEP_PKGS_CSW$(NAME) += CSWlibmysqlclient$(MYSQL_LIB_VER)
101RUNTIME_DEP_PKGS_CSW$(NAME) += CSWlibmysqlclient-r$(MYSQL_LIB_VER)
102RUNTIME_DEP_PKGS_CSW$(NAME) += CSWlibwrap1
103RUNTIME_DEP_PKGS_CSW$(NAME) += CSWlibz1
104# RUNTIME_DEP_PKGS_CSW$(NAME) += CSWcoreutils
105CHECKPKG_OVERRIDES_CSW$(NAME) += bad-rpath-entry
106CHECKPKG_OVERRIDES_CSW$(NAME) += file-with-bad-content
107CHECKPKG_OVERRIDES_CSW$(NAME) += surplus-dependency|CSW$(NAME)client
108# CHECKPKG_OVERRIDES_CSW$(NAME) += surplus-dependency|CSWcoreutils
109
110EXTRA_MERGE_EXCLUDE_FILES += $(prefix)/mysql-test.*
111EXTRA_MERGE_EXCLUDE_FILES += $(prefix)/sql-bench.*
112
113PATCHFILES  = 0001-Use-libc-not-libcrypt.patch
114PATCHFILES += 0002-cast-user_info-pw_gid-to-gid_t.patch
115PATCHFILES += 0004-basedir-and-datadir-in-the-cnf-files.patch
116PATCHFILES += 0004-looking-for-ps-use-basename-0.patch
117
118# Enable 64 bits build
119BUILD64 = 1
120
121EXTRA_CFLAGS = -mt -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
122EXTRA_CXXFLAGS = -mt -D_POSIX_C_SOURCE=199506L -D__EXTENSIONS__
123
124MASTER_SITES = http://ftp.heanet.ie/mirrors/www.mysql.com/Downloads/MySQL-5.0/
125DISTFILES  = mysql-$(VERSION).tar.gz
126DISTFILES += csw$(NAME).tpl
127DISTFILES += quick_start-csw
128DISTFILES += README.CSW
129DISTFILES += ChangeLog
130DISTFILES += CSW$(NAME).preinstall
131DISTFILES += CSW$(NAME).postinstall
132DISTFILES += cswusergroup
133
134# TODO: Do the proper prerequsite pkgs.
135BUILD_DEP_PKGS = $(RUNTIME_DEP_PKGS)
136
137# Set ./configure options
138CONFIGURE_ARGS  = $(DIRPATHS)
139CONFIGURE_ARGS += --disable-assembler
140# Why not have a docs package?
141# CONFIGURE_ARGS += --without-docs
142CONFIGURE_ARGS += --enable-local-infile
143CONFIGURE_ARGS += --with-charset=utf8
144CONFIGURE_ARGS += --with-extra-charsets=all
145CONFIGURE_ARGS += --with-low-memory
146CONFIGURE_ARGS += --with-pthread
147CONFIGURE_ARGS += --with-readline
148CONFIGURE_ARGS += --with-zlib-dir=$(BUILD_PREFIX)
149CONFIGURE_ARGS += --with-ssl=$(BUILD_PREFIX)
150CONFIGURE_ARGS += --with-plugins=max-no-ndb
151CONFIGURE_ARGS += --with-comment="(OpenCSW)"
152CONFIGURE_ARGS += --with-mysqld-user=mysql
153CONFIGURE_ARGS += --with-fast-mutexes
154CONFIGURE_ARGS += --with-libwrap
155CONFIGURE_ARGS += --with-mysqld-libs=-lmtmalloc
156CONFIGURE_ARGS += --with-big-tables
157CONFIGURE_ARGS += --enable-thread-safe-client
158CONFIGURE_ARGS_DBG = --with-debug
159CONFIGURE_ARGS += $(CONFIGURE_ARGS_$(GARFLAVOR))
160# CONFIGURE_ARGS += --program-suffix=
161CONFIGURE_ARGS += --with-federated-storage-engine
162
163# TODO: Make the tests pass. They don't at the moment.
164SKIPTEST ?= 1
165TEST_SCRIPTS = custom
166TEST_TARGETS = check
167
168USERGROUP = /etc/opt/csw/pkg/CSW$(NAME)/cswusergroup
169
170PROTOTYPE_MODIFIERS = dbdir
171PROTOTYPE_FILES_dbdir = $(localstatedir)
172PROTOTYPE_USER_dbdir = mysql
173PROTOTYPE_GROUP_dbdir = mysql
174PROTOTYPE_PERMS_dbdir = 0700
175PROTOTYPE_CLASS_dbdir = ugfiles
176
177CHECKPKG_OVERRIDES_CSW$(NAME)bench += file-with-bad-content
178CHECKPKG_OVERRIDES_CSW$(NAME)bench += surplus-dependency|CSW$(NAME)
179CHECKPKG_OVERRIDES_CSW$(NAME)test += file-with-bad-content
180CHECKPKG_OVERRIDES_CSW$(NAME)test += surplus-dependency|CSW$(NAME)
181
182CHECKPKG_OVERRIDES_CSW$(NAME)client += file-with-bad-content|/usr/local|root$(prefix)/share/man/man1/mysqlaccess.1
183# This could be reviewed.
184CHECKPKG_OVERRIDES_CSW$(NAME) += file-with-bad-content
185
186EXECUTABLES += comp_err
187EXECUTABLES += innochecksum
188EXECUTABLES += msql2mysql
189EXECUTABLES += my_print_defaults
190EXECUTABLES += myisam_ftdump
191EXECUTABLES += myisamchk
192EXECUTABLES += myisamlog
193EXECUTABLES += myisampack
194EXECUTABLES += mysql
195EXECUTABLES += mysql_client_test
196EXECUTABLES += mysql_convert_table_format
197EXECUTABLES += mysql_explain_log
198EXECUTABLES += mysql_find_rows
199EXECUTABLES += mysql_fix_extensions
200EXECUTABLES += mysql_fix_privilege_tables
201EXECUTABLES += mysql_install_db
202EXECUTABLES += mysql_secure_installation
203EXECUTABLES += mysql_setpermission
204EXECUTABLES += mysql_tableinfo
205EXECUTABLES += mysql_tzinfo_to_sql
206EXECUTABLES += mysql_upgrade
207EXECUTABLES += mysql_upgrade_shell
208EXECUTABLES += mysql_waitpid
209EXECUTABLES += mysql_zap
210EXECUTABLES += mysqlaccess
211EXECUTABLES += mysqladmin
212EXECUTABLES += mysqlbinlog
213EXECUTABLES += mysqlbug
214EXECUTABLES += mysqlcheck
215EXECUTABLES += mysqld_multi
216EXECUTABLES += mysqld_safe
217EXECUTABLES += mysqldump
218EXECUTABLES += mysqldumpslow
219EXECUTABLES += mysqlhotcopy
220EXECUTABLES += mysqlimport
221EXECUTABLES += mysqlshow
222EXECUTABLES += mysqltest
223EXECUTABLES += mysqltestmanager
224EXECUTABLES += mysqltestmanager-pwgen
225EXECUTABLES += mysqltestmanagerc
226EXECUTABLES += perror
227EXECUTABLES += replace
228EXECUTABLES += resolve_stack_dump
229EXECUTABLES += resolveip
230
231# These are harmless, although it would be nice to clean them up eventually.
232# Help appreciated?
233CHECKPKG_OVERRIDES_CSWmysql51 += file-collision|/opt/csw/share/doc/mysql5devel_stub/README.CSW|CSWmysql5|CSWmysql51
234CHECKPKG_OVERRIDES_CSWmysql51 += file-collision|/opt/csw/share/doc/mysql_dev/README.CSW|CSWmysql5|CSWmysql51
235CHECKPKG_OVERRIDES_CSWmysql51 += file-collision|/opt/csw/share/info/mysql.info|CSWmysql5|CSWmysql51
236
237include gar/category.mk
238
239CFLAGS := $(filter-out -I%,$(CFLAGS))
240
241test-custom:
242        alias sh=/usr/bin/bash;                           \
243                cd $(WORKSRC)/mysql-test;                       \
244                perl mysql-test-run.pl --mem --big-test --force \
245                --skip-test=archive-big --skip-test=/gis/
246
247pre-configure-modulated:
248        # To work around the following libtool version mismatch problem:
249        # libtool: Version mismatch error.  This is libtool 2.2.6, but the
250        # libtool: definition of this LT_INIT comes from libtool 2.2.6b.
251        # libtool: You should recreate aclocal.m4 with macros from libtool 2.2.6
252        # http://lists.opencsw.org/pipermail/maintainers/2009-December/005066.html
253        cd $(WORKSRC) && autoreconf --force --install --symlink
254        @$(MAKECOOKIE)
255
256post-configure-modulated:
257        gsed \
258                -e 's+@prefix@+$(prefix)+g' \
259                -e 's+@localstatedir@+$(localstatedir)+g' \
260                -e 's+@sysconfdir@+$(sysconfdir)+g' \
261                -e 's+@bindir@+$(bindir)+g' \
262                -e 's+@BASE_VERSION@+$(BASE_VERSION)+g' \
263                < $(WORKDIR)/csw$(NAME).tpl \
264                > $(WORKDIR)/csw$(NAME)
265        @$(MAKECOOKIE)
266
267post-install-modulated:
268        (cd $(DESTDIR)$(libdir); gmv -v mysql/* .)
269        (cd $(DESTDIR)$(libdir); grmdir -v mysql)
270        ginstall -m 755 -d $(DESTDIR)$(sysconfdir)/init.d
271        ginstall -m 755 $(WORKDIR)/csw$(NAME) $(DESTDIR)$(sysconfdir)/init.d
272        @$(MAKECOOKIE)
273
274post-merge:
275        ginstall -m 755 -d $(PKGROOT)$(localstatedir)
276        ginstall -m 755 -d $(PKGROOT)$(datadir)/$(NAME)/doc
277        ginstall -m 644 $(FILEDIR)/ChangeLog $(PKGROOT)$(datadir)/$(NAME)/doc
278        ginstall -m 644 $(FILEDIR)/README.CSW $(PKGROOT)$(datadir)/$(NAME)/doc
279        ginstall -m 755 -d $(PKGROOT)/opt/csw/share/$(NAME)/doc
280        gln -sf ../../../$(NAME)/share/$(NAME)/doc/README.CSW \
281                $(PKGROOT)/opt/csw/share/$(NAME)/doc/README.CSW
282        ginstall -m 755 $(FILEDIR)/quick_start-csw $(PKGROOT)$(datadir)/mysql
283        ginstall -m 755 -d $(PKGROOT)$(sysconfdir)/pkg/CSW$(NAME)
284        ginstall -m 644 $(FILEDIR)/cswusergroup \
285                        $(PKGROOT)$(sysconfdir)/pkg/CSW$(NAME)
286        # http://www.opencsw.org/bugtrack/view.php?id=4149
287        ginstall -m 755 -d $(PKGROOT)$(sysconfdir)
288        @$(MAKECOOKIE)
Note: See TracBrowser for help on using the browser.