[42620] trunk/dports/databases/mysql5-devel/Portfile
Ryan Schmidt
ryandesign at macports.org
Thu Nov 27 01:49:25 PST 2008
On Nov 26, 2008, at 15:48, illogic-al at macports.org wrote:
> Revision: 42620
> http://trac.macports.org/changeset/42620
> Author: illogic-al at macports.org
> Date: 2008-11-26 13:48:36 -0800 (Wed, 26 Nov 2008)
> Log Message:
> -----------
> Add embedded_server variant. Add revision. Fixes ticket #17410.
I'll have to look at this feature, but I may want to just build this
all the time and forget the variant. (Variants should be created
sparingly and only when really necessary.) I'm just not sure what's
up with the -fPIC and --with-pic business. Can you explain?
Some discussion on this change beforehand would have been good. You
did nothing wrong since the port is openmaintainer, and mysql5-devel
is a low-profile port because nobody should be using -devel ports for
anything important, however mysql5 is a high-profile port and I
strive to keep mysql5 and mysql5-devel in sync in terms of features.
So I'm going to remove openmaintainer from mysql5-devel now. I'm
happy to entertain any changes you want to make, I just need to know
about them and understand them so that I can properly support users
who come to me asking about them.
> Modified Paths:
> --------------
> trunk/dports/databases/mysql5-devel/Portfile
>
> Modified: trunk/dports/databases/mysql5-devel/Portfile
> ===================================================================
> --- trunk/dports/databases/mysql5-devel/Portfile 2008-11-26
> 21:45:29 UTC (rev 42619)
> +++ trunk/dports/databases/mysql5-devel/Portfile 2008-11-26
> 21:48:36 UTC (rev 42620)
> @@ -5,6 +5,7 @@
> name mysql5-devel
> set vers 5.1.29
> version ${vers}-rc
> +revision 2
Note that
a) there was no reason to increase the revision when only adding a
variant, because nothing will change for anyone who already had the
port installed; anyone who wants this variant still has to rebuild
the port with the new variant (though if we change it to build the
embedded server always, and delete the variant, as I suggested above,
then we will have to increase the revision, because that will change
the files that get installed)
b) the default revision is 0, not 1, so if you add a revision line to
a port that didn't have one, in order to increase the revision, the
line should set the revision to 1, not 2
> set branch [join [lrange [split ${version} .] 0 1] .]
> homepage http://www.mysql.com/
> categories databases
> @@ -95,6 +96,13 @@
> configure.cppflags-append -I${worksrcpath}/include
> }
>
> +variant embedded_server description "Build libmysqld embedded
> server" {
> + configure.cflags-append -fPIC
> + configure.cxxflags-append -fPIC
> + configure.args-append --with-embedded-server \
> + --with-pic
> +}
> +
> variant server description {add a startup item} {
> configure.args-delete --without-server
> # Create a startupitem to start/stop the server
> @@ -131,21 +139,21 @@
> # Some directories we must have in all cases
> xinstall -m 755 -d ${destroot}${sysconfdir}
> destroot.keepdirs-append ${destroot}${sysconfdir}
> -
> +
> # It has trouble installing in parallel if this doesn't
> already exist
> # See http://bugs.mysql.com/36560
> xinstall -d ${destroot}${prefix}/mysql-test
> xinstall -d ${destroot}${prefix}/mysql-test/ndb
> -
> +
> # Setup only for server
> if { [variant_isset server] } {
> addgroup ${mysqluser}
> set gid [existsgroup ${mysqluser}]
> adduser ${mysqluser} gid=${gid} realname=MySQL\ Server
> -
> +
> # Some directories we must have only if we're running as a
> server
> xinstall -m 755 -o root -d ${destroot}${prefix}/var/run
> -
> +
> xinstall -m 755 -o ${mysqluser} -g ${mysqluser} -d \
> ${destroot}${dbdir} \
> ${destroot}${prefix}/var/run/${mysql}
> @@ -157,7 +165,7 @@
>
> post-destroot {
> delete ${destroot}${prefix}/mysql-test
> -
> +
> # Fix paths in manpages and sample configuration files
> foreach manpage [glob -type f ${destroot}${prefix}/share/man/
> man\[1-9\]/*] {
> reinplace "s|/etc/my.cnf|${sysconfdir}/my.cnf|g" ${manpage}
> @@ -165,7 +173,7 @@
> foreach samp_conffile [glob -type f ${destroot}${prefix}/share/
> ${mysql}/mysql/my-*.cnf] {
> reinplace "s|/etc/my.cnf|${sysconfdir}/my.cnf|g" $
> {samp_conffile}
> }
> -
> +
> # Symlink mysql binaries into bin directory, with $
> {major_version} appended to the name
> foreach f [glob -tails -directory ${destroot}${bindir} my*] {
> ln -sf ${bindir}/${f} ${destroot}${prefix}/bin/${f}$
> {major_version}
Please don't make stylistic whitespace changes in ports that others
maintain. :) In this case there's again consistency with mysql5 (and
to a lesser extent mysql4) to consider, and it's also just the style
I use in most of my ports so I like to keep it that way.
More information about the macports-dev
mailing list