File install.include of Package mysql-community-server-55
x
1
# install the debug server first, so that we don't overwrite the standard
2
# /usr/sbin/mysqld
3
mkdir -p %buildroot%_libdir/mysql
4
make -C _build-debug/sql install DESTDIR=%buildroot
5
mv %buildroot/usr/sbin/mysqld %buildroot/usr/sbin/mysqld-debug
6
install -m 644 _build-debug/sql/mysqld.sym %buildroot%_libdir/mysql/mysqld-debug.sym
7
# install the client, extra tools, libraries and the standard server
8
make -C _build install DESTDIR=%buildroot benchdir_root=/usr/share/
9
install -m 644 _build/sql/mysqld.sym %buildroot%_libdir/mysql/mysqld.sym
10
# remove most static libs (FIXME: don't build them at all...)
11
rm -f %buildroot%_libdir/libmysqlclient*a
12
rm -f %buildroot%_libdir/mysql/*.a %buildroot%_libdir/mysql/*.la
13
rm -f %buildroot%_libdir/mysql/plugin/*a
14
# XXX: package these? The ndb tools are linked statically atm
15
rm -f %buildroot%_libdir/mysql/libndbclient.*
16
rm -f %{buildroot}/usr/share/mysql-test/mysql-test-run
17
rm -f %{buildroot}/usr/share/mysql-test/mtr
18
ln -sf mysql-test-run.pl %{buildroot}/usr/share/mysql-test/mtr
19
ln -sf mysql-test-run.pl %{buildroot}/usr/share/mysql-test/mysql-test-run
20
mv %{buildroot}/usr/share/mysql-test/lib/My/SafeProcess/my_safe_process %{buildroot}%{_bindir}
21
# generate filelist for binaries and their manpages (easier than enumerating
22
# all the binaries and manapages manually, esp. when there are new manpages in
23
# each release)
24
filelist()
25
{
26
echo '%%defattr(-, root, root)'
27
pushd %buildroot >/dev/null
28
for i; do
29
if test -e usr/sbin/"$i"; then
30
echo /usr/sbin/"$i"
31
fi
32
if test -e usr/bin/"$i"; then
33
echo /usr/bin/"$i"
34
fi
35
if ls usr/share/man/*/"$i".[1-9]* >/dev/null 2>&1; then
36
echo "%%doc %_mandir/*/$i.[1-9]*"
37
fi
38
done
39
popd >/dev/null
40
}
41
filelist innochecksum my_print_defaults myisam_ftdump myisamchk myisamlog myisampack mysql_fix_extensions mysql_fix_privilege_tables mysql_install_db mysql_secure_installation mysql_upgrade mysqlbug mysqld mysqld_multi mysqld_safe mysqlbinlog mysqldumpslow mysqlmanager resolve_stack_dump resolveip {m,}aria_chk {m,}aria_dump_log {m,}aria_ftdump {m,}aria_pack {m,}aria_read_log xtstat >mysql.files
42
filelist mysql mysqladmin mysqlcheck mysqldump mysqlimport mysqlshow mysql_embedded mysql_plugin >mysql-client.files
43
filelist mysql_config >libmysqlclient-devel.files
44
filelist mysqlslap >mysql-bench.files
45
filelist mysql_client_test mysql_client_test_embedded mysql_waitpid mysqltest mysqltest_embedded >mysql-test.files
46
# all binaries that don't need to be in a "default" install (mysql.rpm +
47
# mysql-client.rpm)
48
filelist msql2mysql mysql_convert_table_format mysql_find_rows mysql_setpermission mysql_tzinfo_to_sql mysql_zap mysqlaccess mysqlhotcopy perror replace >mysql-tools.files
49
filelist ndbd ndbmtd ndbd_redo_log_reader >mysql-ndb-storage.files
50
filelist ndb_mgmd >mysql-ndb-management.files
51
filelist ndb_{config,desc,error_reporter,mgm,print_backup_file,print_schema_file,print_sys_file,restore,select_all,select_count,show_tables,size.pl,test_platform,waiter} >mysql-ndb-tools.files
52
filelist ndb_{cpcd,delete_all,drop_index,drop_table} >mysql-ndb-extra.files
53
### files not installed by make install
54
# Create directory structure
55
DOCS=(COPYING README EXCEPTIONS-CLIENT %_sourcedir/README.debug %_sourcedir/README.SuSE)
56
DOCDIR=%buildroot%_defaultdocdir/%name
57
install -d -m 755 ${DOCDIR}
58
install -d -m 755 %buildroot/etc/logrotate.d
59
install -d -m 755 %buildroot/etc/init.d
60
install -m 644 _build/support-files/mysql-log-rotate %buildroot/etc/logrotate.d/mysql
61
%if 0%{?prefered} > 0
62
install -m 644 _buildlibmysqld/*.so* %buildroot%_libdir
63
ln -s libmysqld.so.0.0.1 %buildroot%_libdir/libmysqld.so.0
64
ln -s libmysqld.so.0.0.1 %buildroot%_libdir/libmysqld.so
65
%endif
66
install -m 660 _build/support-files/my-medium.cnf %buildroot/etc/my.cnf
67
install -m 640 scripts/mysqlaccess.conf %buildroot/etc/mysqlaccess.conf
68
install -m 644 "${DOCS[@]}" ${DOCDIR} || true
69
install -m 755 %_sourcedir/rc.mysql-multi %buildroot/etc/init.d/mysql
70
ln -sf ../../etc/init.d/mysql %buildroot/usr/sbin/rcmysql
71
# this is used by the init script
72
install -m 755 -d %buildroot/var/run/mysql
73
# SuSEfirewall service description
74
install -D -m 644 %_sourcedir/mysql.SuSEfirewall2 \
75
%buildroot/etc/sysconfig/SuSEfirewall2.d/services/mysql
76
# testsuite
77
mkdir -p '%buildroot'/usr/share/mysql-test/
78
install -m 755 suse-test-run '%buildroot'/usr/share/mysql-test/
79
# XXX this should go under /var/..., but some tests get confused by a symlink
80
# var -> ../../../var/...
81
#ln -sf ../../../var/lib/mysql/mysql-test %buildroot/usr/share/mysql-test/var
82
mkdir '%buildroot'/usr/share/mysql-test/var
83
# Final fixes
84
find '%buildroot'/usr/share/mysql-test -name '*.orig' -delete
85
%if 0%{?suse_version} > 1030
86
%fdupes -s '%buildroot'/usr/share/mysql-test
87
%endif
88
%if 0%{?fedora_version} > 8
89
fdupes -q -n -r '%buildroot'/usr/share/mysql-test
90
%endif
91
dos2unixConversion() {
92
%{__sed} -i 's/\r//g' "$1"
93
}
94
for i in `grep -Rl '\r' '%buildroot'/usr/share/sql-bench`; do
95
dos2unixConversion "$i"
96
done
97
%if ! 0%{cluster} > 0
98
cat mysql-ndb-storage.files mysql-ndb-management.files \
99
mysql-ndb-tools.files mysql-ndb-extra.files | \
100
sed 's|^%%doc\ ||' | while read tmp; do
101
cd '%buildroot'
102
rm -f .$tmp
103
done
104
%endif
105
%if ! 0%{prefered} > 0
106
cat libmysqlclient-devel.files | while read tmp; do
107
cd '%buildroot'
108
rm -f .$tmp
109
done
110
rm -rf '%buildroot'/%_libdir/libmysqld.*
111
rm -rf '%buildroot'/%_libdir/*.la
112
rm -rf '%buildroot'/%_libdir/*.so
113
rm -rf '%buildroot'/%_libdir/*.a
114
rm -rf '%buildroot'/%_includedir
115
rm -rf '%buildroot'/%_datadir/man/*/mysql_config*
116
rm -rf '%buildroot'/%_datadir/aclocal
117
%endif
118
sed -i 's|doc/packages/mysql|doc/packages/%{name}|g' '%buildroot'/etc/init.d/mysql
119
ln -s mysqlcheck '%buildroot'%_bindir/mysqlrepair
120
ln -s mysqlcheck '%buildroot'%_bindir/mysqlanalyze
121
ln -s mysqlcheck '%buildroot'%_bindir/mysqloptimize
122
if [ -f '%buildroot'/usr/bin/mysqlaccess.conf ]; then
123
mv '%buildroot'/usr/bin/mysqlaccess.conf '%buildroot'/etc/mysqlaccess.conf
124
fi
125
mkdir -p '%buildroot'/etc/mysql
126
[ -z "`ls -1 %_sourcedir/*.cnf`" ] || cp %_sourcedir/*.cnf '%buildroot'/etc/mysql
127