[CentOS] build postfix spec w/ mysql

Sat Nov 19 19:10:14 UTC 2011
Alexander Dalloz <ad+lists at uni-x.org>

Am 19.11.2011 19:11, schrieb Tim Dunphy:
> hello list!
> 
> I am attempting to build an rpm of postfix that includes support for mysql. I've done this before with earlier versions on postfix but I am staring at this spec file until my eyes bleed and I just don't see why when I build the spec with rpmbuild mysql support isn't there. 
> 
>  After I install the rpm I have a look at the modules as such:
>   ldd $(which postfix) | grep -i mysql
> 
>  and nothing's there. 
> 
>  I was hoping someone out there might not mind having a look at the spec file and let me know what I'm missing.

Tim, you certainly noticed the verbose explanations in the spec file below.

> # W A R N I N G -- DO NOT EDIT THIS FILE -- W A R N I N G
> #
> # postfix.spec
> #
> # This file was generated automatically from /home/sjmudd/RPM/SRC/postfix/postfix.spec.in.
> # If you want to build postfix with other options see make-postfix.spec in
> # the same directory for instructions.
> # --
> #
> # File used to generate the distribution-specific postfix.spec file.
> # If you need to make changes to postfix.spec, make them to postfix.spec.in
> # and regenerate the spec file.
> #
> # See make-postfix.spec in %{_sourcedir} for more information.
> #
> # This spec file was built on distribution: rhel-5.0
> #
> # Information imported from postfix.spec.in: DO NOT CHANGE IT BY HAND
> #
> # mysql_paths              - paths where locally installed MySQL resides (or 0)
> #                            - if using this option mysql_paths should be as
> #                              follows: </pathto/mysql/include>:</pathto/mysql/lib>
> #                              e.g.:    /usr/mysql/include:/usr/mysql/lib
> #                            - The order is important and only 2 directories may
> #                              be given.
> # requires_db              - used to add dbX dependencies in the package
> # smtpd_multiline_greeting - my patch to allow multiline banner
> # mps			   - man page suffix, .gz except Mandrake >= 8 which uses .bz2
> # with_cdb                 - include CDB support by Michael Tokarev
> #                            <mjt at corpit.ru>
> # with_dovecot             - include DOVECOT SASL authentication
> # with_ldap                - include LDAP support
> # with_mysql               - include support for www.mysql.com's MySQL rpms
> # with_mysql_redhat        - include support for RedHat's MySQL rpms
> # with_pcre                - include pcre support
> # with_pgsql               - include Postgres database support
> # with_sasl                - include Cyrus SASL/AUTH support (0 to disable sasl,
> #                            1 for sasl v1, or 2 for sasl v2, sasl_library is
> #                            the sasl library to link against, distribution dependent)
> # with_spf                 - include libspf2 library support (EXPERIMENTAL)
> #                            - rpms for libspf can be found at http://www.sosdg.org/rpm/libspf/
> # with_tls                 - include TLS support
> # with_tlsfix              - include TLS fix
> #                            - needed for rh6.2, rh9 and rhel3
> # with_vda                 - add virtual delivery agent patch
> #
> # Please send bugfixes and comments to the packager.
> #
> # distribution which the spec file was built from
> %define distribution rhel-5.0
> 
> %define MYSQL 1

Why did you add that non working define? Above all variables required
are already there. Do not edit the spec file! There is no need to. Just
follow the rpmbuild documentation and set the variable you want to use.

So, you would have to run

rpmbuild -ba --define "with_mysql_redhat 1"

[ ... ]

> Thanks in advance!!
> Tim

Alexander