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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 56421 - (show annotations) (download)
Tue Feb 22 13:18:00 2011 UTC (13 years, 1 month ago) by dmorgan
Original Path: cauldron/mysql-workbench/current/SPECS/mysql-workbench.spec
File size: 6216 byte(s)
Fix build
1 %define build_java 1
2 %define build_autotools 1
3 %define tartype gpl
4 %define Werror_cflags %nil
5 %define _disable_ld_no_undefined 1
6 # commandline overrides:
7 # rpm -ba|--rebuild --with 'xxx'
8 %{?_with_java: %{expand: %%global build_java 1}}
9 %{?_without_java: %{expand: %%global build_java 0}}
10 %{?_with_autotools: %{expand: %%global build_autotools 1}}
11 %{?_without_autotools: %{expand: %%global build_autotools 0}}
12
13 Summary: Extensible modeling tool for MySQL 5.x
14 Name: mysql-workbench
15 Group: Databases
16 Version: 5.2.30
17 Release: %mkrel 1
18 License: GPL
19 URL: http://wb.mysql.com
20 # Upstream has a mirror redirector for downloads, so the URL is hard to
21 # represent statically. You can get the tarball by following a link from
22 # http://dev.mysql.com/downloads/workbench/
23 Source: http://gd.tuwien.ac.at/db/mysql/Downloads/MySQLGUITools/%{name}-%{tartype}-%{version}-src.tar.gz
24 # don't build extension, use system one
25 # !!! This patch use versioned soname (libmysqlcppconn.so.5) !!!
26 Patch1: %{name}-5.2.28-cppconn.patch
27 Patch2: %{name}-5.2.27-ctemplate.patch
28 Patch3: %{name}-5.2.28-tinyxml.patch
29 Patch4: %{name}-5.2.30-mysql55.patch
30 Patch5: %{name}-5.2.30-gcc.patch
31 Obsoletes: mysql-workbench-oss < 5.2.30
32 Provides: mysql-workbench-oss
33 BuildRequires: autoconf2.5
34 BuildRequires: boost-devel >= 1.35.0
35 BuildRequires: cairo-devel
36 BuildRequires: cairomm-devel
37 BuildRequires: ctemplate-devel >= 0.91
38 BuildRequires: expat-devel
39 BuildRequires: fdupes
40 BuildRequires: file
41 BuildRequires: freetype2-devel >= 2.1.10
42 BuildRequires: gettext
43 BuildRequires: gettext-devel
44 BuildRequires: glib2-devel
45 BuildRequires: glibmm2.4-devel
46 BuildRequires: glitz-devel
47 BuildRequires: gtk2-devel
48 BuildRequires: gtkhtml-3.14-devel
49 BuildRequires: gtkmm2.4-devel >= 2.6
50 BuildRequires: imagemagick
51 BuildRequires: libext2fs-devel
52 BuildRequires: libfcgi-devel
53 BuildRequires: libfontconfig-devel
54 BuildRequires: libglade2.0-devel >= 2.5
55 BuildRequires: libgnome2-devel
56 BuildRequires: libgnomeprint-devel >= 2.2.0
57 BuildRequires: libpng-devel
58 BuildRequires: libsigc++2.0-devel
59 BuildRequires: libslang-devel
60 BuildRequires: libtool
61 BuildRequires: libuuid-devel
62 BuildRequires: libx11-devel
63 BuildRequires: libxext-devel
64 BuildRequires: libxml2-devel
65 BuildRequires: libxrender-devel
66 BuildRequires: libzip-devel
67 BuildRequires: lua5.1-devel
68 BuildRequires: mesagl-devel
69 BuildRequires: mesaglu-devel
70 BuildRequires: mysql-connector-c++-devel
71 BuildRequires: mysql-devel >= 5.0
72 BuildRequires: ncurses-devel
73 BuildRequires: openssl-devel
74 BuildRequires: pcre-devel >= 5.0
75 BuildRequires: pixman-devel >= 0.11.2
76 BuildRequires: pkgconfig
77 BuildRequires: python-devel
78 BuildRequires: readline-devel
79 BuildRequires: scintilla-devel
80 BuildRequires: termcap-devel
81 BuildRequires: sqlite3-devel
82 BuildRequires: libgnome-keyring-devel
83 %if %{build_java}
84 BuildRequires: junit
85 BuildRequires: eclipse-ecj
86 BuildRequires: gcj-tools
87 BuildRequires: jpackage-utils
88 %endif
89 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
90
91 %description
92 MySQL Workbench is modeling tool that allows you to design and generate MySQL
93 databases graphically.
94
95 MySQL Workbench requires OpenGL and a 3D accelerated graphics card with at
96 least 16MB of memory.
97
98 %prep
99
100 %setup -q -n mysql-workbench-gpl-%{version}-src
101 %patch1 -p1 -b .cppconn
102 %patch2 -p1 -b .ctemplate
103 %patch3 -p1 -b .tinyxml
104 %patch4 -p1 -b .mysql55
105 %patch5 -p1 -b .gcc46
106
107 # lib64 fix
108 perl -pi -e "s|/lib/|/%{_lib}/|g" frontend/linux/workbench/program.cpp
109
110 # other small fixes
111 #touch po/POTFILES.in
112
113 # ctemplete is now ctemplate and not google anymore
114 for i in `grep -Rl google .`; do
115 sed -i 's/google/ctemplate/g' $i;
116 done
117
118 %build
119 #export CPPFLAGS="$CPPFLAGS `pkg-config --cflags scintilla`"
120
121 %if %{build_autotools}
122 NOCONFIGURE=yes ./autogen.sh
123 %endif
124 %define _disable_ld_no_undefined 1
125 %configure2_5x --disable-static
126
127 # antibork
128 #find -type f -name Makefile | xargs perl -pi -e "s|-Wl,--as-needed||g"
129
130 # use the shared libs
131 #find -type f -name Makefile | xargs perl -pi -e "s|%{_libdir}/python%{pyver}/config/libpython%{pyver}.a|-lpython%{pyver}|g"
132
133 %make
134
135 %install
136 rm -rf %{buildroot}
137
138 %makeinstall_std
139
140 # construct a clean and correct wrapper
141 cat > %{buildroot}%{_bindir}/mysql-workbench << EOF
142 #!/bin/bash
143 export LD_LIBRARY_PATH="%{_libdir}/mysql-workbench:\$LD_LIBRARY_PATH"
144 export MWB_DATA_DIR="%{_datadir}/mysql-workbench"
145 export MWB_LIBRARY_DIR="%{_datadir}/mysql-workbench/libraries"
146 export MWB_MODULE_DIR="%{_libdir}/mysql-workbench/modules"
147 export MWB_PLUGIN_DIR="%{_libdir}/mysql-workbench/plugins"
148 export DBC_DRIVER_PATH="%{_libdir}/mysql-workbench"
149 %{_bindir}/mysql-workbench-bin \$*
150 EOF
151
152 # fix some menu entries and stuff...
153 install -d %{buildroot}%{_miconsdir}
154 install -d %{buildroot}%{_iconsdir}
155 install -d %{buildroot}%{_liconsdir}
156
157 install -d %{buildroot}%{_datadir}/applications
158 rm -f %{buildroot}%{_datadir}/applications/MySQLWorkbench.desktop
159 cat > %{buildroot}%{_datadir}/applications/mysql-workbench.desktop << EOF
160 [Desktop Entry]
161 Name=MySQL Workbench
162 Comment=MySQL Database Design Tool
163 Exec=%{_bindir}/mysql-workbench
164 Terminal=false
165 Type=Application
166 Icon=mysql-workbench
167 Categories=Database;Office;
168 EOF
169
170 # make some icons
171 convert %{buildroot}%{_datadir}/mysql-workbench/images/MySQLWorkbench-48.png -resize 16x16 %{buildroot}%{_miconsdir}/mysql-workbench.png
172 convert %{buildroot}%{_datadir}/mysql-workbench/images/MySQLWorkbench-48.png -resize 32x32 %{buildroot}%{_iconsdir}/mysql-workbench.png
173 convert %{buildroot}%{_datadir}/mysql-workbench/images/MySQLWorkbench-48.png -resize 48x48 %{buildroot}%{_liconsdir}/mysql-workbench.png
174
175 # cleanup
176 rm -f %{buildroot}%{_libdir}/mysql-workbench/*.*a
177 rm -f %{buildroot}%{_libdir}/mysql-workbench/lib*.so
178 rm -f %{buildroot}%{_libdir}/mysql-workbench/modules/*.*a
179 rm -f %{buildroot}%{_libdir}/mysql-workbench/plugins/*.*a
180
181 %clean
182 rm -rf %{buildroot}
183
184 %files
185 %defattr(-,root,root)
186 %doc COPYING ChangeLog README
187 %{_bindir}/*
188 %{_libdir}/mysql-workbench/lib*.so.*
189 %{_libdir}/mysql-workbench/mysqlcppconn.so
190 %{_libdir}/mysql-workbench/modules
191 %{_libdir}/mysql-workbench/plugins
192 %{_datadir}/mysql-workbench
193 %{_datadir}/applications/mysql-workbench.desktop
194 %{_iconsdir}/mysql-workbench.png
195 %{_liconsdir}/mysql-workbench.png
196 %{_miconsdir}/mysql-workbench.png
197
198

  ViewVC Help
Powered by ViewVC 1.1.30