mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
6d296e5e0a
Replaced hardcoded sover reference with variable. Removed references to added manpages. --- BUG#27769 Cleaned up some things to make building the packages go a little smoother. --- debian/rules really does need to be called from the source root. --- Fixed two problems with the build caused by adding debian to the source tree --- Left off the debian/ prefix to the Makefile filter. --- BUG#27769 - MySQL should include debian packaging dir Changed substitution variables to match already existing autoconf vars. Generate debian/control and debian/defs.mk from autoconf now, since we run that to make a source package. --- Corrected incorrect variable name --- Renamed template files to have shorter names. --- Moved generation of debian/control to dist-hook so make clean won't eat it. --- A few final changes to make debs build from a source tarball dist. debian/libmysqlclientSLIB-dev.README.Maintainer.in: Rename: debian/libmysqlclientMYSOVER-dev.README.Maintainer.in -> debian/libmysqlclientSLIB-dev.README.Maintainer.in debian/libmysqlclientSLIB-dev.dirs.in: Rename: debian/libmysqlclientMYSOVER-dev.dirs.in -> debian/libmysqlclientSLIB-dev.dirs.in debian/libmysqlclientSLIB-dev.docs.in: Rename: debian/libmysqlclientMYSOVER-dev.docs.in -> debian/libmysqlclientSLIB-dev.docs.in debian/libmysqlclientSLIB-dev.examples.in: Rename: debian/libmysqlclientMYSOVER-dev.examples.in -> debian/libmysqlclientSLIB-dev.examples.in debian/libmysqlclientSLIB-dev.files.in: Rename: debian/libmysqlclientMYSOVER-dev.files.in -> debian/libmysqlclientSLIB-dev.files.in debian/libmysqlclientSLIB-dev.links.in: Rename: debian/libmysqlclientMYSOVER-dev.links.in -> debian/libmysqlclientSLIB-dev.links.in debian/libmysqlclientSLIB.README.Debian.in: Rename: debian/libmysqlclientMYSOVER.README.Debian.in -> debian/libmysqlclientSLIB.README.Debian.in debian/libmysqlclientSLIB.dirs.in: Rename: debian/libmysqlclientMYSOVER.dirs.in -> debian/libmysqlclientSLIB.dirs.in debian/libmysqlclientSLIB.docs.in: Rename: debian/libmysqlclientMYSOVER.docs.in -> debian/libmysqlclientSLIB.docs.in debian/libmysqlclientSLIB.files.in: Rename: debian/libmysqlclientMYSOVER.files.in -> debian/libmysqlclientSLIB.files.in debian/libmysqlclientSLIB.postinst.in: Rename: debian/libmysqlclientMYSOVER.postinst.in -> debian/libmysqlclientSLIB.postinst.in debian/libndbclientNLIB-dev.dirs.in: Rename: debian/libndbclientNDBSOVER-dev.dirs.in -> debian/libndbclientNLIB-dev.dirs.in debian/libndbclientNLIB-dev.files.in: Rename: debian/libndbclientNDBSOVER-dev.files.in -> debian/libndbclientNLIB-dev.files.in debian/libndbclientNLIB-dev.links.in: Rename: debian/libndbclientNDBSOVER-dev.links.in -> debian/libndbclientNLIB-dev.links.in debian/libndbclientNLIB.README.Debian.in: Rename: debian/libndbclientNDBSOVER.README.Debian.in -> debian/libndbclientNLIB.README.Debian.in debian/libndbclientNLIB.dirs.in: Rename: debian/libndbclientNDBSOVER.dirs.in -> debian/libndbclientNLIB.dirs.in debian/libndbclientNLIB.files.in: Rename: debian/libndbclientNDBSOVER.files.in -> debian/libndbclientNLIB.files.in debian/libndbclientNLIB.postinst.in: Rename: debian/libndbclientNDBSOVER.postinst.in -> debian/libndbclientNLIB.postinst.in debian/mysql-client-BASE.NEWS.in: Rename: debian/mysql-client-MYVER.NEWS.in -> debian/mysql-client-BASE.NEWS.in debian/mysql-client-BASE.README.Debian.in: Rename: debian/mysql-client-MYVER.README.Debian.in -> debian/mysql-client-BASE.README.Debian.in debian/mysql-client-BASE.dirs.in: Rename: debian/mysql-client-MYVER.dirs.in -> debian/mysql-client-BASE.dirs.in debian/mysql-client-BASE.docs.in: Rename: debian/mysql-client-MYVER.docs.in -> debian/mysql-client-BASE.docs.in debian/mysql-extra-BASE.dirs.in: Rename: debian/mysql-extra-MYVER.dirs.in -> debian/mysql-extra-BASE.dirs.in debian/mysql-extra-BASE.files.in: Rename: debian/mysql-extra-MYVER.files.in -> debian/mysql-extra-BASE.files.in debian/mysql-management-BASE.dirs.in: Rename: debian/mysql-management-MYVER.dirs.in -> debian/mysql-management-BASE.dirs.in debian/mysql-management-BASE.files.in: Rename: debian/mysql-management-MYVER.files.in -> debian/mysql-management-BASE.files.in debian/mysql-management-BASE.mysql-management.init.in: Rename: debian/mysql-management-MYVER.mysql-management.init.in -> debian/mysql-management-BASE.mysql-management.init.in debian/mysql-server-BASE.NEWS.in: Rename: debian/mysql-server-MYVER.NEWS.in -> debian/mysql-server-BASE.NEWS.in debian/mysql-server-BASE.README.Debian.in: Rename: debian/mysql-server-MYVER.README.Debian.in -> debian/mysql-server-BASE.README.Debian.in debian/mysql-server-BASE.dirs.in: Rename: debian/mysql-server-MYVER.dirs.in -> debian/mysql-server-BASE.dirs.in debian/mysql-server-BASE.docs.in: Rename: debian/mysql-server-MYVER.docs.in -> debian/mysql-server-BASE.docs.in debian/mysql-server-BASE.links.in: Rename: debian/mysql-server-MYVER.links.in -> debian/mysql-server-BASE.links.in debian/mysql-server-BASE.logcheck.ignore.paranoid.in: Rename: debian/mysql-server-MYVER.logcheck.ignore.paranoid.in -> debian/mysql-server-BASE.logcheck.ignore.paranoid.in debian/mysql-server-BASE.logcheck.ignore.server.in: Rename: debian/mysql-server-MYVER.logcheck.ignore.server.in -> debian/mysql-server-BASE.logcheck.ignore.server.in debian/mysql-server-BASE.logcheck.ignore.workstation.in: Rename: debian/mysql-server-MYVER.logcheck.ignore.workstation.in -> debian/mysql-server-BASE.logcheck.ignore.workstation.in debian/mysql-server-BASE.mysql-server.logrotate.in: Rename: debian/mysql-server-MYVER.mysql-server.logrotate.in -> debian/mysql-server-BASE.mysql-server.logrotate.in debian/mysql-server-BASE.preinst.in: Rename: debian/mysql-server-MYVER.preinst.in -> debian/mysql-server-BASE.preinst.in debian/mysql-server-BASE.prerm.in: Rename: debian/mysql-server-MYVER.prerm.in -> debian/mysql-server-BASE.prerm.in debian/mysql-server-PREV.preinst.in: Rename: debian/mysql-server-MYOLDVER.preinst.in -> debian/mysql-server-PREV.preinst.in debian/mysql-storage-BASE.dirs.in: Rename: debian/mysql-storage-MYVER.dirs.in -> debian/mysql-storage-BASE.dirs.in debian/mysql-storage-BASE.files.in: Rename: debian/mysql-storage-MYVER.files.in -> debian/mysql-storage-BASE.files.in debian/mysql-storage-BASE.mysql-storage.init.in: Rename: debian/mysql-storage-MYVER.mysql-storage.init.in -> debian/mysql-storage-BASE.mysql-storage.init.in debian/mysql-test-BASE.dirs.in: Rename: debian/mysql-test-MYVER.dirs.in -> debian/mysql-test-BASE.dirs.in debian/mysql-test-BASE.files.in: Rename: debian/mysql-test-MYVER.files.in -> debian/mysql-test-BASE.files.in debian/mysql-tools-BASE.dirs.in: Rename: debian/mysql-tools-MYVER.dirs.in -> debian/mysql-tools-BASE.dirs.in debian/mysql-tools-BASE.files.in: Rename: debian/mysql-tools-MYVER.files.in -> debian/mysql-tools-BASE.files.in Makefile.am: Moved generation of debian/control to dist-hook so make clean won't eat it. --- Need to generate the control file in the dist dir - not the source dir. configure.in: Added variables to support the generation of debian/control and debian/defs.mk from configure --- Moved generation of debian/control to dist-hook so make clean won't eat it. debian/Makefile.am: Distribute the generated control file so that debuild will work naturally. --- Broke the EXTRA_DIST line into separate lines. Added defs.mk.in --- Modified debian/Makefile to use the new shorter template file names. debian/control.in: Changed substitution variables to match already existing autoconf vars. debian/defs.mk.in: Changed substitution variables to match already existing autoconf vars. Made defs.mk.in generated from template. Persisted variables here. --- Corrected incorrect variable name debian/mysql-client-BASE.files.in: Changed substitution variables to match already existing autoconf vars. debian/mysql-client-BASE.lintian-overrides.in: Changed substitution variables to match already existing autoconf vars. debian/mysql-server-BASE.config.in: Changed substitution variables to match already existing autoconf vars. debian/mysql-server-BASE.files.in: Changed substitution variables to match already existing autoconf vars. debian/mysql-server-BASE.lintian-overrides.in: Changed substitution variables to match already existing autoconf vars. debian/mysql-server-BASE.postinst.in: Changed substitution variables to match already existing autoconf vars. debian/mysql-server-BASE.postrm.in: Changed substitution variables to match already existing autoconf vars. debian/mysql-server-BASE.templates.in: Changed substitution variables to match already existing autoconf vars. debian/po/POTFILES.in.in: Changed substitution variables to match already existing autoconf vars. debian/rules: BUG#27769 - MySQL should include debian packaging dir Replaced hardcoded sover reference with variable. Removed references to added manpages. --- Prevented the test suite from being run unless requested. --- Needed a space between ifneq and ( --- The variable substitution was stepping on the Makefile from automake. --- Left off the debian/ prefix to the Makefile filter. --- Changed substitution variables to match already existing autoconf vars. --- Save debian/defs.mk from make distclean debian/source.lintian-overrides.in: Changed substitution variables to match already existing autoconf vars. |
||
---|---|---|
.. | ||
additions | ||
po | ||
changelog | ||
compat | ||
control.in | ||
copyright | ||
copyright.more | ||
defs.mk.in | ||
libmysqlclientSLIB-dev.dirs.in | ||
libmysqlclientSLIB-dev.docs.in | ||
libmysqlclientSLIB-dev.examples.in | ||
libmysqlclientSLIB-dev.files.in | ||
libmysqlclientSLIB-dev.links.in | ||
libmysqlclientSLIB-dev.README.Maintainer.in | ||
libmysqlclientSLIB.dirs.in | ||
libmysqlclientSLIB.docs.in | ||
libmysqlclientSLIB.files.in | ||
libmysqlclientSLIB.postinst.in | ||
libmysqlclientSLIB.README.Debian.in | ||
libndbclientNLIB-dev.dirs.in | ||
libndbclientNLIB-dev.files.in | ||
libndbclientNLIB-dev.links.in | ||
libndbclientNLIB.dirs.in | ||
libndbclientNLIB.files.in | ||
libndbclientNLIB.postinst.in | ||
libndbclientNLIB.README.Debian.in | ||
Makefile.am | ||
mysql-client-BASE.dirs.in | ||
mysql-client-BASE.docs.in | ||
mysql-client-BASE.files.in | ||
mysql-client-BASE.lintian-overrides.in | ||
mysql-client-BASE.NEWS.in | ||
mysql-client-BASE.README.Debian.in | ||
mysql-common.dirs.in | ||
mysql-common.files.in | ||
mysql-common.postrm.in | ||
mysql-common.preinst.in | ||
mysql-common.README.Debian.in | ||
mysql-extra-BASE.dirs.in | ||
mysql-extra-BASE.files.in | ||
mysql-management-BASE.dirs.in | ||
mysql-management-BASE.files.in | ||
mysql-management-BASE.mysql-management.init.in | ||
mysql-server-BASE.config.in | ||
mysql-server-BASE.dirs.in | ||
mysql-server-BASE.docs.in | ||
mysql-server-BASE.files.in | ||
mysql-server-BASE.links.in | ||
mysql-server-BASE.lintian-overrides.in | ||
mysql-server-BASE.logcheck.ignore.paranoid.in | ||
mysql-server-BASE.logcheck.ignore.server.in | ||
mysql-server-BASE.logcheck.ignore.workstation.in | ||
mysql-server-BASE.mysql-server.logrotate.in | ||
mysql-server-BASE.NEWS.in | ||
mysql-server-BASE.postinst.in | ||
mysql-server-BASE.postrm.in | ||
mysql-server-BASE.preinst.in | ||
mysql-server-BASE.prerm.in | ||
mysql-server-BASE.README.Debian.in | ||
mysql-server-BASE.templates.in | ||
mysql-server-PREV.preinst.in | ||
mysql-server.preinst.in | ||
mysql-storage-BASE.dirs.in | ||
mysql-storage-BASE.files.in | ||
mysql-storage-BASE.mysql-storage.init.in | ||
mysql-test-BASE.dirs.in | ||
mysql-test-BASE.files.in | ||
mysql-tools-BASE.dirs.in | ||
mysql-tools-BASE.files.in | ||
README.Maintainer | ||
rules | ||
source.lintian-overrides.in | ||
watch |
########################################################################### # Here are some information that are only of interest to the Debiani # # maintainers of MySQL. # ########################################################################### # # Remarks to dependencies # libwrap0-dev (>= 7.6-8.3) According to bug report 114582 where where build problems on IA-64/sid with at least two prior versions. psmisc /usr/bin/killall in the initscript zlib1g in libmysqlclient-dev: "mysql_config --libs" adds "-lz" Build-Dep: debhelper (>=4.1.16): See po-debconf(7). autoconf (>= 2.13-20), automake1.7 Try to get rid of them. doxygen, tetex-bin, tetex-extra, gs for ndb/docs/*tex mysql-server-5.0: Pre-Depends: mysql-common This was necessary as mysql-server-5.0.preinst checks for unmodified conffiles from mysql-server-4.1 and copies 5.0 ones over them to avoid unnecessary dpkg questions. As mysql-server-5.0 is not unpacked at its pre-inst stage, it had to copy those files from a package that is definetly already unpacked which does not have to be the case with Depends. # # Remarks to the start scripts # ## initscripts rely on mysqladmin from a different package We have the problem that "/etc/init.d/mysql stop" relies on mysqladmin which is in another package (mysql-client) and a passwordless access that's maybe only available if the user configured his /root/.my.cnf. Can this be a problem? * normal mode: not because the user is required to have it. Else: * purge/remove: not, same as normal mode * upgrade: not, same as normal mode * first install: not, it depends on mysql-client which at least is unpacked so mysqladmin is there (to ping). It is not yet configured passwordles but if there's a server running then there's a /root/.my.cnf. Anyways, we simply kill anything that's mysqld. ## Passwordless access for the maintainer scripts Another issue is that the scripts needs passwordless access. To ensure this a debian-sys-maint user is configured which has process and shutdown privs. The file with the randomly (that's important!) generated password must be present as long as the databases remain installed because else a new install would have no access. This file should be used like: mysqladmin --defaults-file=/etc/mysql/debian.cnf restart to avoid providing the password in plaintext on a commandline where it would be visible to any user via the "ps" command. ## When to start the daemon? We aim to give the admin full control on when MySQL is running. Issues to be faced here: OLD: 1. Debconf asks whether MySQL should be started on boot so update-rc.d is only run if the answer has been yes. The admin is likely to forget this decision but update-rc.d checks for an existing line in /etc/runlevel.conf and leaves it intact. 2. On initial install, if the answer is yes, the daemon has to be started. 3. On upgrades it should only be started if it was already running, everything else is confusing. Especiall relying on an debconf decision made month ago is considered suboptimal. See bug #274264 Implementation so far: prerm (called on upgrade before stopping the server): check for a running server and set flag if necessary preinst (called on initial install and before unpacking when upgrading): check for the debconf variable and set flag if necessary postinst (called on initial install and after each upgrade after unpacking): call update-rc.d if debconf says yes call invoce-rc.d if the flag has been set Problems remaining: dpkg-reconfigure and setting mysql start on boot to yes did not start mysql (ok "start on boot" literally does not mean "start now" so that might have been ok) NEW: 1. --- no debconf anymore for the sake of simplicity. We have runlevel.conf, the admin should use it 2. On initial install the server is started. 3. On upgrades the server is started exactly if it was running before so the runlevel configuration is irrelevant. It will be preserved by the mean of update-rc.d's builtin check. Implementation: prerm (called on upgrade before stopping the server): check for a running server and set flag if necessary preinst (called on initial install and before unpacking when upgrading): check for $1 beeing (initial) "install" and set flag postinst (called on initial install and after each upgrade after unpacking): call update-rc.d call invoce-rc.d if the flag has been set