/[packages]/updates/5/mysql-workbench/current/SPECS/mysql-workbench.spec
ViewVC logotype

Annotation of /updates/5/mysql-workbench/current/SPECS/mysql-workbench.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 320349 - (hide annotations) (download)
Wed Nov 21 21:00:53 2012 UTC (11 years, 5 months ago) by juancho
Original Path: cauldron/mysql-workbench/current/SPECS/mysql-workbench.spec
File size: 8803 byte(s)
SILENT: bump mysql-utilities mkrel.
1 dmorgan 55928 %define build_java 1
2     %define build_autotools 1
3 dmorgan 56021 %define tartype gpl
4 dmorgan 56420 %define Werror_cflags %nil
5 dmorgan 56421 %define _disable_ld_no_undefined 1
6 fwang 133436 %define _default_patch_fuzz 3
7 dmorgan 55928 # commandline overrides:
8     # rpm -ba|--rebuild --with 'xxx'
9     %{?_with_java: %{expand: %%global build_java 1}}
10     %{?_without_java: %{expand: %%global build_java 0}}
11     %{?_with_autotools: %{expand: %%global build_autotools 1}}
12     %{?_without_autotools: %{expand: %%global build_autotools 0}}
13    
14 dmorgan 100059
15 juancho 308061 %global mw_version 5.2.44
16 dmorgan 100059
17 dmorgan 55928 Summary: Extensible modeling tool for MySQL 5.x
18 dmorgan 56016 Name: mysql-workbench
19 dmorgan 55928 Group: Databases
20 fwang 133436 Version: %{mw_version}
21 juancho 320026 Release: %mkrel 3
22 dmorgan 55928 License: GPL
23 dmorgan 56016 URL: http://wb.mysql.com
24     # Upstream has a mirror redirector for downloads, so the URL is hard to
25     # represent statically. You can get the tarball by following a link from
26     # http://dev.mysql.com/downloads/workbench/
27 mikala 82323 Source: http://gd.tuwien.ac.at/db/mysql/Downloads/MySQLGUITools/%{name}-%{tartype}-%{version}-src.tar.gz
28 dmorgan 56016 # don't build extension, use system one
29 juancho 308061 # !!! This patch use versioned soname (libmysqlcppconn.so.6) !!!
30     Patch1: %{name}-5.2.43-cppconn.patch
31     Patch2: %{name}-5.2.43-ctemplate.patch
32     Patch3: %{name}-5.2.41-tinyxml.patch
33 mikala 82323 Patch4: %{name}-5.2.33b-mysql55.patch
34 juancho 308061 #Use system antlr version
35     Patch5: %{name}-5.2.43-antlr.patch
36     Patch6: %{name}-gpl-5.2.31-mga-fix-ifconfig.patch
37 juancho 320026 Patch7: %{name}-5.2.44-nodocs.patch
38 dmorgan 56016 Obsoletes: mysql-workbench-oss < 5.2.30
39     Provides: mysql-workbench-oss
40 dmorgan 100004 Obsoletes: mysql-gui-tools < 5.1
41     Provides: mysql-gui-tools
42 dmorgan 100059 Obsoletes: mysql-administrator < 5.1
43     Provides: mysql-administrator
44 juancho 308061 BuildRequires: antlr3-C-devel
45 dmorgan 55928 BuildRequires: autoconf2.5
46     BuildRequires: boost-devel >= 1.35.0
47     BuildRequires: cairo-devel
48     BuildRequires: cairomm-devel
49     BuildRequires: ctemplate-devel >= 0.91
50     BuildRequires: expat-devel
51     BuildRequires: fdupes
52     BuildRequires: file
53     BuildRequires: freetype2-devel >= 2.1.10
54     BuildRequires: gettext
55     BuildRequires: gettext-devel
56     BuildRequires: glib2-devel
57     BuildRequires: glibmm2.4-devel
58     BuildRequires: glitz-devel
59     BuildRequires: gtk2-devel
60     BuildRequires: gtkhtml-3.14-devel
61     BuildRequires: gtkmm2.4-devel >= 2.6
62     BuildRequires: imagemagick
63 juancho 308061 BuildRequires: iodbc-devel
64 dmorgan 55928 BuildRequires: libext2fs-devel
65     BuildRequires: libfcgi-devel
66     BuildRequires: libfontconfig-devel
67     BuildRequires: libglade2.0-devel >= 2.5
68     BuildRequires: libgnome2-devel
69     BuildRequires: libgnomeprint-devel >= 2.2.0
70     BuildRequires: libpng-devel
71     BuildRequires: libsigc++2.0-devel
72     BuildRequires: libslang-devel
73     BuildRequires: libtool
74     BuildRequires: libuuid-devel
75     BuildRequires: libx11-devel
76     BuildRequires: libxext-devel
77     BuildRequires: libxml2-devel
78     BuildRequires: libxrender-devel
79     BuildRequires: libzip-devel
80     BuildRequires: lua5.1-devel
81     BuildRequires: mesagl-devel
82     BuildRequires: mesaglu-devel
83     BuildRequires: mysql-connector-c++-devel
84 dlucio 183887 BuildRequires: mariadb-devel >= 5.0
85 dmorgan 55928 BuildRequires: ncurses-devel
86     BuildRequires: openssl-devel
87     BuildRequires: pcre-devel >= 5.0
88     BuildRequires: pixman-devel >= 0.11.2
89     BuildRequires: pkgconfig
90     BuildRequires: python-devel
91     BuildRequires: readline-devel
92     BuildRequires: scintilla-devel
93     BuildRequires: termcap-devel
94     BuildRequires: sqlite3-devel
95     BuildRequires: libgnome-keyring-devel
96 ahmad 61371 BuildRequires: tinyxml-devel
97 dmorgan 55928 %if %{build_java}
98 ahmad 65768 BuildRequires: junit
99 dmorgan 55928 BuildRequires: eclipse-ecj
100 ahmad 65768 BuildRequires: gcj-tools
101     BuildRequires: jpackage-utils
102 dmorgan 55928 %endif
103 ahmad 65768 # requires mysql-client (for mysqldump and mysql cmdline client)
104     Requires: mysql-client
105     Requires: gnome-keyring
106     Requires: python-paramiko
107 spuhler 65753 Requires: python-pexpect
108 dmorgan 55928
109     %description
110     MySQL Workbench is modeling tool that allows you to design and generate MySQL
111     databases graphically.
112    
113     MySQL Workbench requires OpenGL and a 3D accelerated graphics card with at
114     least 16MB of memory.
115    
116 dmorgan 100059 %package -n mysql-utilities
117     Summary: Scripts for managing and administering MySQL servers
118     # Not yet published (else will be package separatly)
119     # see ext/mysql-utilities/CHANGES.txt
120     Version: 1.0.0
121 juancho 320349 Release: %mkrel 0.%{mw_version}.4
122 dmorgan 100059 BuildRequires: python-devel >= 2.4
123 fwang 308110 BuildRequires: python-sphinx >= 1.0
124 dmorgan 100059 Requires: mysql-connector-python
125    
126     %description -n mysql-utilities
127     MySQL Utilities contain a collection of scripts useful for managing
128     and administering MySQL servers.
129    
130 dmorgan 55928 %prep
131 fwang 133436 %setup -q -n mysql-workbench-gpl-%{mw_version}-src
132     %patch1 -p1 -b .cppconn
133     %patch2 -p1 -b .ctemplate
134 juancho 308061 %patch3 -p1 -b .tinyxml
135 mikala 82323 %patch4 -p0 -b .mysql55
136 juancho 308061 %patch5 -p1 -b .antlr
137 mikala 72282 %patch6 -p0 -b .ifconfig
138 juancho 320026 %patch7 -p1 -b .nodocs
139 dmorgan 55928
140     # lib64 fix
141     perl -pi -e "s|/lib/|/%{_lib}/|g" frontend/linux/workbench/program.cpp
142    
143 dmorgan 100059 touch -r COPYING .timestamp4rpm
144     %{__sed} -i -e 's/\r//g' COPYING
145     touch -r .timestamp4rpm COPYING
146 dmorgan 55928
147 dmorgan 100059 # we use System provided libraries
148     rm -rf ext/boost
149     rm -rf ext/curl
150     rm -rf ext/libsigc++
151     rm -rf ext/yassl
152    
153     # avoid "No such file" during configure
154     touch po/POTFILES.in
155    
156 dmorgan 55928 # ctemplete is now ctemplate and not google anymore
157     for i in `grep -Rl google .`; do
158     sed -i 's/google/ctemplate/g' $i;
159     done
160    
161     %build
162     #export CPPFLAGS="$CPPFLAGS `pkg-config --cflags scintilla`"
163    
164     %if %{build_autotools}
165     NOCONFIGURE=yes ./autogen.sh
166     %endif
167     %define _disable_ld_no_undefined 1
168 dmorgan 100059 export CXXFLAGS="$RPM_OPT_FLAGS -fpermissive"
169     %configure2_5x --disable-debug --enable-mysql-utilities
170 juancho 308061 #fgrep -rlZ pkglib_DATA --include Makefile.am . | xargs -0 sed -i 's/pkglib_DATA/pkgdata_DATA/g'
171 dmorgan 55928 # antibork
172     #find -type f -name Makefile | xargs perl -pi -e "s|-Wl,--as-needed||g"
173    
174     # use the shared libs
175     #find -type f -name Makefile | xargs perl -pi -e "s|%{_libdir}/python%{pyver}/config/libpython%{pyver}.a|-lpython%{pyver}|g"
176    
177     %make
178    
179 dmorgan 100059 pushd ext/mysql-utilities
180     %{__python} setup.py build_man
181     popd
182    
183 dmorgan 55928 %install
184     rm -rf %{buildroot}
185    
186     %makeinstall_std
187    
188 dmorgan 100059 pushd ext/mysql-utilities
189     %{__install} --directory %{buildroot}%{_prefix}/man/man1
190     %{__python} setup.py install --skip-profile --root %{buildroot}
191    
192     %{__install} --directory %{buildroot}%{_mandir}
193     %{__mv} %{buildroot}%{_prefix}/man/man1 %{buildroot}%{_mandir}/man1
194     popd
195 dmorgan 55928 # construct a clean and correct wrapper
196     cat > %{buildroot}%{_bindir}/mysql-workbench << EOF
197     #!/bin/bash
198     export LD_LIBRARY_PATH="%{_libdir}/mysql-workbench:\$LD_LIBRARY_PATH"
199     export MWB_DATA_DIR="%{_datadir}/mysql-workbench"
200     export MWB_LIBRARY_DIR="%{_datadir}/mysql-workbench/libraries"
201     export MWB_MODULE_DIR="%{_libdir}/mysql-workbench/modules"
202     export MWB_PLUGIN_DIR="%{_libdir}/mysql-workbench/plugins"
203     export DBC_DRIVER_PATH="%{_libdir}/mysql-workbench"
204 juancho 308061 %{_libdir}/mysql-workbench-bin \$*
205 dmorgan 55928 EOF
206    
207     # fix some menu entries and stuff...
208     install -d %{buildroot}%{_miconsdir}
209     install -d %{buildroot}%{_iconsdir}
210     install -d %{buildroot}%{_liconsdir}
211    
212     install -d %{buildroot}%{_datadir}/applications
213     rm -f %{buildroot}%{_datadir}/applications/MySQLWorkbench.desktop
214 dmorgan 56019 cat > %{buildroot}%{_datadir}/applications/mysql-workbench.desktop << EOF
215 dmorgan 55928 [Desktop Entry]
216     Name=MySQL Workbench
217     Comment=MySQL Database Design Tool
218     Exec=%{_bindir}/mysql-workbench
219     Terminal=false
220     Type=Application
221     Icon=mysql-workbench
222     Categories=Database;Office;
223     EOF
224    
225     # make some icons
226     convert %{buildroot}%{_datadir}/mysql-workbench/images/MySQLWorkbench-48.png -resize 16x16 %{buildroot}%{_miconsdir}/mysql-workbench.png
227     convert %{buildroot}%{_datadir}/mysql-workbench/images/MySQLWorkbench-48.png -resize 32x32 %{buildroot}%{_iconsdir}/mysql-workbench.png
228     convert %{buildroot}%{_datadir}/mysql-workbench/images/MySQLWorkbench-48.png -resize 48x48 %{buildroot}%{_liconsdir}/mysql-workbench.png
229    
230     # cleanup
231     rm -f %{buildroot}%{_libdir}/mysql-workbench/*.*a
232     rm -f %{buildroot}%{_libdir}/mysql-workbench/lib*.so
233     rm -f %{buildroot}%{_libdir}/mysql-workbench/modules/*.*a
234     rm -f %{buildroot}%{_libdir}/mysql-workbench/plugins/*.*a
235    
236     %clean
237     rm -rf %{buildroot}
238    
239     %files
240 dmorgan 100059 %defattr(-, root, root, -)
241     # NEWS and ChangeLog are empty or outdated
242     %doc AUTHORS COPYING COPYING.LGPL README samples
243     %{_bindir}/%{name}
244 juancho 308061 %{_libdir}/%{name}-bin
245 dmorgan 100080 %{_datadir}/applications/mysql-workbench.desktop
246 dmorgan 100085 %{_miconsdir}/mysql-workbench.png
247     %{_iconsdir}/mysql-workbench.png
248     %{_liconsdir}/mysql-workbench.png
249 juancho 308061 %{_iconsdir}/hicolor/*
250 dmorgan 100059 %{_libdir}/%{name}
251     %{_datadir}/%{name}
252 juancho 308061 %{_datadir}/mime/packages/*
253     %{_datadir}/mime-info/*
254     #%exclude %{_datadir}/doc/%{name}
255 dmorgan 100059
256     %files -n mysql-utilities
257     %defattr(-, root, root, -)
258     %doc ext/mysql-utilities/*.txt
259 dlucio 184054 %{_bindir}/mysqldbcompare
260 dmorgan 100059 %{_bindir}/mysqldbcopy
261     %{_bindir}/mysqldbexport
262     %{_bindir}/mysqldbimport
263     %{_bindir}/mysqldiff
264     %{_bindir}/mysqldiskusage
265 juancho 308061 %{_bindir}/mysqlfailover
266 dmorgan 100059 %{_bindir}/mysqlindexcheck
267     %{_bindir}/mysqlmetagrep
268     %{_bindir}/mysqlprocgrep
269     %{_bindir}/mysqlreplicate
270 juancho 308061 %{_bindir}/mysqlrpladmin
271     %{_bindir}/mysqlrplcheck
272     %{_bindir}/mysqlrplshow
273 dmorgan 100059 %{_bindir}/mysqlserverclone
274 fwang 133440 %{_bindir}/mysqlserverinfo
275 juancho 308061 %{_bindir}/mysqluc
276 dmorgan 100059 %{_bindir}/mysqluserclone
277 juancho 308061 %{_bindir}/wbcopytables
278     %{python_sitelib}/mysql/*
279 dmorgan 100059 %{python_sitelib}/mysql_utilities*
280     %{_mandir}/man1/*
281     # empty file already provided by mysql-connector-python
282     %exclude %{python_sitelib}/mysql/__init*

  ViewVC Help
Powered by ViewVC 1.1.30