[exim-conf] libspf2, exim, конфигуратор под openSUSE

Victor Ustugov victor на corvax.kiev.ua
Вс Июл 11 21:31:20 EEST 2010


приветствую

реализован пробный механизм сборки пакетов libspf2 и exim под openSUSE:
http://mta.org.ua/exim-4.69-conf/suse/

spec файл для сборки пакета libspf2 отличается от аналогичного для
сборки этого пакета под RedHat только отсутствием использования
механизма alternatives.

spec файл для сборки пакета exim основан на spec файле из состава пакета
exim-4.69-70.13 из дистрибутива openSUSE 11.1.
при сборке пакета были применены все соответствующие патчи, применяемые
при сборке соответствующего пакета под RedHat/CentOS/Fedora.
дополнительно при сборке exim 4.69 под openSUSE были применены свежие
патчи, написанные для exim 4.71:
patch-src::hide_expand_error.patch
patch-src::hide_ldap_error.patch
patch-src::hide_ldap_pass.patch

что касается опций сборки, то они несколько отличаются от опций сборки
exim под RedHat/CentOS/Fedora:

- опция --with gnutls не используется, не возникло необходимости в
поддержке gnutls.
- опция --without pie не используется, не требуется совместимость со
старыми версиями дистрибутива, соответственно старыми версиями gcc.
- опция --without sa_exim не используется, в дефолтном spec файле для
сборки exim не используется сборка sa-exim.
- опция --with clam не используется, в дефолтном spec файле для сборки
exim не используется сборка копии clamav.
- опция --with old_tcp_wrappers не используется, не требуется
совместимость со старыми версиями дистрибутива
- опция --with static_pcre не используется, в дефолтном spec файле для
сборки exim не используется статическая линковка exim с pcre. эта опция
уже не используется и при сборке exim 4.71 под RedHat/CentOS/Fedora.
- опция --without greylist не используется, в дефолтном spec файле для
сборки exim не используется сборка с поддержкой greylist из состава
соответствующего дефолтного пакета из состава Fedora.
- опция --without exim_mon переименована в --without eximon. при сборке
следующей версии exim под RedHat/CentOS/Fedora эта опция также будет
переименована.
- опция --without eximstats добавлена
- опция --with perl добавлена, т. к. в дефолтном spec файле нет 
механизма сборки exim с embedded perl.
- опция --without nisplus заменена на --with nisplus, т. к. в дефолтном
spec файле пакета exim для SUSE сборка осуществляется без поддержки
LOOKUP_NISPLUS.
- опция --without mysql заменена на --with mysql, т. к. по умолчанию под
openSUSE сборка exim производится без поддержки MySQL.
- опция --without postgresql заменена на --with pgsql. кроме того, что
по умолчанию под openSUSE сборка exim производится без поддержки
PostgreSQL, сама опция переименована с "postgresql" в "pgsql".
- опция --without sqlite заменена на --with sqlite, т. к. по умолчанию
под openSUSE сборка exim производится без поддержки SQLite.

в общем и целом вот полный список возможных опций сборки (в данном
случае приведено возможное содержимое файла
suse/exim-4.69-70.13.corvax/Makefile.local):

RPMBUILD_OPTIONS+= --without ipv6
RPMBUILD_OPTIONS+= --with mysql
RPMBUILD_OPTIONS+= --with pgsql
RPMBUILD_OPTIONS+= --with sqlite
RPMBUILD_OPTIONS+= --without nis
RPMBUILD_OPTIONS+= --with nisplus
RPMBUILD_OPTIONS+= --with spf2
RPMBUILD_OPTIONS+= --without openldap
RPMBUILD_OPTIONS+= --without eximon
RPMBUILD_OPTIONS+= --without eximstats
RPMBUILD_OPTIONS+= --with perl
RPMBUILD_OPTIONS+= --with dlfunc
RPMBUILD_OPTIONS+= --with lmtp_extern
RPMBUILD_OPTIONS+= --with experimental_user_unknown_fail
RPMBUILD_OPTIONS+= --with experimental_rfc2231_support
RPMBUILD_OPTIONS+= --with experimental_rfc2047_utf8_fix
RPMBUILD_OPTIONS+= --with experimental_rfc2047_mimelen
RPMBUILD_OPTIONS+= --with spamd_next_try
RPMBUILD_OPTIONS+= --with expand_primary_hostname
RPMBUILD_OPTIONS+= --with hide_ldap_pass
RPMBUILD_OPTIONS+= --with hide_ldap_error
RPMBUILD_OPTIONS+= --with hide_expand_error

сборка без единой опции (при отсутствующем или пустом файле
suse/exim-4.69-70.13.corvax/Makefile.local) будет эквивалента сборке
exim со spec файлом из стандартной поставки openSUSE.

сейчас создан пробный yum рипозитарий для пакетов, собранных под openSUSE:
http://mta.org.ua/updates/openSUSE/

файл рипозитария находится в подкаталоге, соответствующем версии ОС:
http://mta.org.ua/updates/openSUSE/11.1/mta.org.ua.repo

устанавливать пакеты из рипозитария можно с помощью утилиты zypper. при
этом файл http://mta.org.ua/updates/openSUSE/11.1/mta.org.ua.repo нужно
сохранить в каталоге /etc/zypp/repos.d

пакеты exim для рипозитария собраны со следующим набором опций сборки:

RPMBUILD_OPTIONS+= --without ipv6
RPMBUILD_OPTIONS+= --with mysql
RPMBUILD_OPTIONS+= --with sqlite
RPMBUILD_OPTIONS+= --without nis
RPMBUILD_OPTIONS+= --with spf2
RPMBUILD_OPTIONS+= --without eximon
RPMBUILD_OPTIONS+= --without eximstats
RPMBUILD_OPTIONS+= --with perl
RPMBUILD_OPTIONS+= --with dlfunc
RPMBUILD_OPTIONS+= --with lmtp_extern
RPMBUILD_OPTIONS+= --with experimental_user_unknown_fail
RPMBUILD_OPTIONS+= --with experimental_rfc2231_support
RPMBUILD_OPTIONS+= --with experimental_rfc2047_utf8_fix
RPMBUILD_OPTIONS+= --with experimental_rfc2047_mimelen
RPMBUILD_OPTIONS+= --with spamd_next_try
RPMBUILD_OPTIONS+= --with hide_expand_error


это наиболее близкий набор опций сборки к тому, который применяется при
сборке пакетов exim под RedHat/CentOS/Fedora для рипозитария
http://mta.org.ua/updates/.


что касается непосредственно сборки конфигурационного файла exim, то в
случае использования openSUSE в качестве значений переменных
confEXIM_USER и confEXIM_GROUP будет использовано "mail", как и в
Gentoo. в отличии от RedHat/CentOS/Fedora, в которых в качестве значения
confEXIM_USER используется "exim".


т. к. все это пока является пробным вариантом, в ближайшее время могут
поменяться значения некоторых опций сборки, пути, значения переменных и
т. д.


в ближайшее время я соберу libspf2 и exim под openSUSE 11.2. регулярных 
сборок под openSUSE может и не быть. равно как и сборок exim'а до выхода 
соответствующих официальных сборок под openSUSE. т. е. адаптировать spec 
файл exim для 4.71 до того, как это сделает меинтейнер пакета exim в 
openSUSE, я не буду. хотя все зависит от того, будет ли использоваться 
openSUSE у моих коммерческих клиентов.

-- 
Best wishes Victor Ustugov   mailto:victor на corvax.kiev.ua
public GnuPG/PGP key:        http://victor.corvax.kiev.ua/corvax.asc
ICQ UIN: 77186900, 371808614 nic-handle: CRV-UANIC





Подробная информация о списке рассылки exim-conf