cce4c5d
#http://lists.fedoraproject.org/pipermail/devel/2011-August/155358.html
cce4c5d
%global _hardened_build 1
cce4c5d
bd64a07
%global prever beta2
cce4c5d
a3912a3
#%%global VERSION %%{version}-%%{patchver}
a3912a3
#%%global VERSION %%{version}-%%{prever}
a3912a3
%global VERSION %{version}
cce4c5d
cce4c5d
Summary:  DHCPv4, DHCPv6 and DDNS server from ISC
cce4c5d
Name:     kea
ec70ae3
Version:  1.0.0
85f553b
Release:  2%{?dist}
a3912a3
License:  MPLv2.0 and Boost
cce4c5d
URL:      http://kea.isc.org
cce4c5d
Source0:  http://ftp.isc.org/isc/kea/%{VERSION}/kea-%{VERSION}.tar.gz
cce4c5d
5fc4ba0
# http://kea.isc.org/ticket/3529
05114ad
Patch0:   kea-systemd.patch
cce4c5d
5fc4ba0
# autoreconf
cce4c5d
BuildRequires: autoconf automake libtool
cce4c5d
BuildRequires: boost-devel
5fc4ba0
# %%configure --with-openssl
cce4c5d
BuildRequires: openssl-devel
5fc4ba0
# %%configure --with-dhcp-mysql
5fc4ba0
BuildRequires: mariadb-devel
5fc4ba0
# %%configure --with-dhcp-pgsql
5fc4ba0
BuildRequires: postgresql-devel
cce4c5d
BuildRequires: log4cplus-devel
009db19
%ifnarch s390
cce4c5d
BuildRequires: valgrind-devel
8f23bcc
%endif
cce4c5d
BuildRequires: systemd
cce4c5d
# src/lib/testutils/dhcp_test_lib.sh
cce4c5d
BuildRequires: procps-ng
cce4c5d
f5c22c3
# %%configure --with-gtest
f5c22c3
BuildRequires: gtest-devel
5fc4ba0
85f553b
# in case you ever wanted to use %%configure --enable-generate-parser
85f553b
#BuildRequires: flex bison
85f553b
5fc4ba0
# in case you ever wanted to use %%configure --enable-generate-docs
5fc4ba0
#BuildRequires: elinks asciidoc plantuml
5fc4ba0
cce4c5d
Requires: kea-libs%{?_isa} = %{version}-%{release}
cce4c5d
Requires(post): systemd
cce4c5d
Requires(preun): systemd
cce4c5d
Requires(postun): systemd
cce4c5d
cce4c5d
cce4c5d
%description
cce4c5d
DHCP implementation from Internet Systems Consortium, Inc.
cce4c5d
that features fully functional DHCPv4, DHCPv6 and Dynamic DNS servers.
cce4c5d
Both DHCP servers fully support server discovery,
cce4c5d
address assignment, renewal, rebinding and release. The DHCPv6
cce4c5d
server supports prefix delegation. Both servers support DNS Update
cce4c5d
mechanism, using stand-alone DDNS daemon.
cce4c5d
cce4c5d
%package libs
cce4c5d
Summary: Shared libraries used by Kea DHCP server
cce4c5d
cce4c5d
%description libs
cce4c5d
This package contains shared libraries used by Kea DHCP server.
cce4c5d
cce4c5d
%package devel
cce4c5d
Summary: Development headers and libraries for Kea DHCP server
cce4c5d
Requires: kea-libs%{?_isa} = %{version}-%{release}
cce4c5d
cce4c5d
%description devel
cce4c5d
Header files and API documentation.
cce4c5d
cce4c5d
%prep
cce4c5d
%setup -q -n kea-%{VERSION}
cce4c5d
05114ad
%patch0 -p1 -b .systemd
cce4c5d
b67335b
# install leases db in /var/lib/kea/ not /var/kea/
b67335b
# http://kea.isc.org/ticket/3523
b67335b
sed -i -e 's|@localstatedir@|@sharedstatedir@|g' src/lib/dhcpsrv/Makefile.am
b67335b
85f553b
# to be able to build on ppc64(le)
85f553b
sed -i -e 's|ECHO|YYECHO|g' src/lib/eval/lexer.cc
85f553b
cce4c5d
%build
cce4c5d
autoreconf --verbose --force --install
cce4c5d
cce4c5d
%configure \
7750dd4
    --disable-dependency-tracking \
f5c22c3
    --disable-rpath \
f5c22c3
    --disable-silent-rules \
cce4c5d
    --disable-static \
f5c22c3
    --enable-debug \
5fc4ba0
    --enable-systemd \
5fc4ba0
    --with-dhcp-mysql \
5fc4ba0
    --with-dhcp-pgsql \
ec70ae3
    --with-gnu-ld \
f5c22c3
    --with-gtest \
f5c22c3
    --with-log4cplus \
f5c22c3
    --with-openssl
cce4c5d
cce4c5d
make %{?_smp_mflags}
cce4c5d
cce4c5d
cce4c5d
%check
7750dd4
#make check
cce4c5d
cce4c5d
%install
f5c22c3
make DESTDIR=%{buildroot} install %{?_smp_mflags}
cce4c5d
cce4c5d
# Get rid of .la files
f5c22c3
find %{buildroot} -type f -name "*.la" -delete -print
cce4c5d
cce4c5d
# Start empty lease databases
cce4c5d
mkdir -p %{buildroot}%{_sharedstatedir}/kea/
cce4c5d
touch %{buildroot}%{_sharedstatedir}/kea/kea-leases4.csv
cce4c5d
touch %{buildroot}%{_sharedstatedir}/kea/kea-leases6.csv
cce4c5d
ec70ae3
rm -f %{buildroot}%{_defaultdocdir}/kea/COPYING
cce4c5d
6eda22a
mkdir -p %{buildroot}/run
6eda22a
install -d -m 0755 %{buildroot}/run/kea/
6eda22a
6eda22a
# install /usr/lib/tmpfiles.d/kea.conf
6eda22a
mkdir -p %{buildroot}%{_tmpfilesdir}
6eda22a
cat > %{buildroot}%{_tmpfilesdir}/kea.conf <
6eda22a
# kea needs existing /run/kea/ to create logger_lockfile there
6eda22a
# See tmpfiles.d(5) for details
6eda22a
6eda22a
d /run/kea 0755 root root -
6eda22a
EOF
6eda22a
6eda22a
cce4c5d
%post
cce4c5d
%systemd_post kea-dhcp4.service kea-dhcp6.service kea-dhcp-ddns.service
cce4c5d
cce4c5d
cce4c5d
%preun
cce4c5d
%systemd_preun kea-dhcp4.service kea-dhcp6.service kea-dhcp-ddns.service
cce4c5d
cce4c5d
cce4c5d
%postun
cce4c5d
%systemd_postun_with_restart kea-dhcp4.service kea-dhcp6.service kea-dhcp-ddns.service
cce4c5d
cce4c5d
cce4c5d
%post libs -p /sbin/ldconfig
cce4c5d
cce4c5d
%postun libs -p /sbin/ldconfig
cce4c5d
cce4c5d
cce4c5d
%files
7750dd4
%{_sbindir}/kea-admin
cce4c5d
%{_sbindir}/kea-dhcp-ddns
cce4c5d
%{_sbindir}/kea-dhcp4
cce4c5d
%{_sbindir}/kea-dhcp6
7750dd4
%{_sbindir}/kea-lfc
cce4c5d
%{_sbindir}/keactrl
cce4c5d
%{_sbindir}/perfdhcp
bd64a07
%{_bindir}/kea-msg-compiler
cce4c5d
%{_unitdir}/kea-dhcp4.service
cce4c5d
%{_unitdir}/kea-dhcp6.service
cce4c5d
%{_unitdir}/kea-dhcp-ddns.service
cce4c5d
%dir %{_sysconfdir}/kea/
cce4c5d
%config(noreplace) %{_sysconfdir}/kea/kea.conf
cce4c5d
%config(noreplace) %{_sysconfdir}/kea/keactrl.conf
cce4c5d
%dir %{_datarootdir}/kea/
ec70ae3
%{_datarootdir}/kea/scripts
6eda22a
%dir /run/kea/
6eda22a
%{_tmpfilesdir}/kea.conf
cce4c5d
%{_datarootdir}/kea/dhcp-ddns.spec
cce4c5d
%{_datarootdir}/kea/dhcp4.spec
cce4c5d
%{_datarootdir}/kea/dhcp6.spec
cce4c5d
%dir %{_sharedstatedir}/kea
cce4c5d
%config(noreplace) %{_sharedstatedir}/kea/kea-leases4.csv
cce4c5d
%config(noreplace) %{_sharedstatedir}/kea/kea-leases6.csv
cce4c5d
%{_defaultdocdir}/kea/AUTHORS
cce4c5d
%{_defaultdocdir}/kea/ChangeLog
cce4c5d
%{_defaultdocdir}/kea/README
cce4c5d
%{_defaultdocdir}/kea/examples
cce4c5d
%{_defaultdocdir}/kea/kea-guide.*
ec70ae3
%{_defaultdocdir}/kea/kea-logo-100x70.png
cce4c5d
%{_defaultdocdir}/kea/kea-messages.html
7750dd4
%{_mandir}/man8/kea-admin.8.gz
cce4c5d
%{_mandir}/man8/kea-dhcp-ddns.8.gz
cce4c5d
%{_mandir}/man8/kea-dhcp4.8.gz
cce4c5d
%{_mandir}/man8/kea-dhcp6.8.gz
7750dd4
%{_mandir}/man8/kea-lfc.8.gz
cce4c5d
%{_mandir}/man8/keactrl.8.gz
cce4c5d
%{_mandir}/man8/perfdhcp.8.gz
cce4c5d
cce4c5d
%files libs
ec70ae3
#%%dir %%{_defaultdocdir}/kea/
ec70ae3
#%%{_defaultdocdir}/kea/COPYING
ec70ae3
#%%{_defaultdocdir}/kea/LICENSE_1_0.txt
ec70ae3
%license COPYING
ec70ae3
%license ext/coroutine/LICENSE_1_0.txt
cce4c5d
%{_libdir}/libkea-asiodns.so.*
cce4c5d
%{_libdir}/libkea-asiolink.so.*
cce4c5d
%{_libdir}/libkea-cc.so.*
cce4c5d
%{_libdir}/libkea-cfgclient.so.*
cce4c5d
%{_libdir}/libkea-cryptolink.so.*
cce4c5d
%{_libdir}/libkea-dhcp++.so.*
cce4c5d
%{_libdir}/libkea-dhcp_ddns.so.*
cce4c5d
%{_libdir}/libkea-dhcpsrv.so.*
cce4c5d
%{_libdir}/libkea-dns++.so.*
ec70ae3
%{_libdir}/libkea-eval.so.*
cce4c5d
%{_libdir}/libkea-exceptions.so.*
cce4c5d
%{_libdir}/libkea-hooks.so.*
cce4c5d
%{_libdir}/libkea-log.so.*
0d5b94e
%{_libdir}/libkea-stats.so.*
cce4c5d
%{_libdir}/libkea-threads.so.*
cce4c5d
%{_libdir}/libkea-util-io.so.*
cce4c5d
%{_libdir}/libkea-util.so.*
cce4c5d
cce4c5d
%files devel
cce4c5d
%{_includedir}/kea
cce4c5d
%{_libdir}/libkea-asiodns.so
cce4c5d
%{_libdir}/libkea-asiolink.so
cce4c5d
%{_libdir}/libkea-cc.so
cce4c5d
%{_libdir}/libkea-cfgclient.so
cce4c5d
%{_libdir}/libkea-cryptolink.so
cce4c5d
%{_libdir}/libkea-dhcp++.so
cce4c5d
%{_libdir}/libkea-dhcp_ddns.so
cce4c5d
%{_libdir}/libkea-dhcpsrv.so
cce4c5d
%{_libdir}/libkea-dns++.so
ec70ae3
%{_libdir}/libkea-eval.so
cce4c5d
%{_libdir}/libkea-exceptions.so
cce4c5d
%{_libdir}/libkea-hooks.so
cce4c5d
%{_libdir}/libkea-log.so
0d5b94e
%{_libdir}/libkea-stats.so
cce4c5d
%{_libdir}/libkea-threads.so
cce4c5d
%{_libdir}/libkea-util-io.so
cce4c5d
%{_libdir}/libkea-util.so
cce4c5d
%{_libdir}/pkgconfig/dns++.pc
cce4c5d
cce4c5d
%changelog
85f553b
* Wed Jan 06 2016 Jiri Popelka <jpopelka@redhat.com> - 1.0.0-2
85f553b
- make it build on ppc64(le)
85f553b
a3912a3
* Tue Dec 29 2015 Jiri Popelka <jpopelka@redhat.com> - 1.0.0-1
a3912a3
- 1.0.0
a3912a3
733cf86
* Wed Dec 23 2015 Jiri Popelka <jpopelka@redhat.com> - 1.0.0-0.3.beta2
733cf86
- fix compile error
733cf86
bd64a07
* Wed Dec 23 2015 Jiri Popelka <jpopelka@redhat.com> - 1.0.0-0.2.beta2
bd64a07
- 1.0.0-beta2
bd64a07
bd64a07
* Wed Dec 09 2015 Jiri Popelka <jpopelka@redhat.com> - 1.0.0-0.1.beta
ec70ae3
- 1.0.0-beta
ec70ae3
009db19
* Mon Aug 24 2015 Jiri Popelka <jpopelka@redhat.com> - 0.9.2-3
009db19
- fix valgrind-devel availability
009db19
4cfe76e
* Wed Jul 29 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.2-2
4cfe76e
- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159
4cfe76e
f5c22c3
* Tue Jul 28 2015 Jiri Popelka <jpopelka@redhat.com> - 0.9.2-1
f5c22c3
- 0.9.2
f5c22c3
ee72f77
* Wed Jul 22 2015 David Tardon <dtardon@redhat.com> - 0.9.2-0.2.beta
ee72f77
- rebuild for Boost 1.58
ee72f77
0d5b94e
* Thu Jul 02 2015 Jiri Popelka <jpopelka@redhat.com> - 0.9.2-0.1.beta
0d5b94e
- 0.9.2-beta
0d5b94e
42f535f
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.1-3
42f535f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
42f535f
dabd455
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 0.9.1-2
dabd455
- Rebuilt for GCC 5 C++11 ABI change
dabd455
e31e76d
* Wed Apr 01 2015 Jiri Popelka <jpopelka@redhat.com> - 0.9.1-1
e31e76d
- 0.9.1
e31e76d
6eda22a
* Fri Feb 20 2015 Jiri Popelka <jpopelka@redhat.com> - 0.9.1-0.2.beta
6eda22a
- /run/kea/ (for logger_lockfile)
6eda22a
7750dd4
* Thu Feb 19 2015 Jiri Popelka <jpopelka@redhat.com> - 0.9.1-0.1.beta
7750dd4
- 0.9.1-beta
7750dd4
Petr Machata ad3e6da
* Tue Jan 27 2015 Petr Machata <pmachata@redhat.com> - 0.9-4
Petr Machata ad3e6da
- Rebuild for boost 1.57.0
Petr Machata ad3e6da
b67335b
* Tue Nov 04 2014 Jiri Popelka <jpopelka@redhat.com> - 0.9-3
b67335b
- do not override @localstatedir@ globally
989d346
- include latest upstream kea.conf
b67335b
8f23bcc
* Wed Sep 24 2014 Dan HorĂ¡k <dan[at]danny.cz> - 0.9-2
8f23bcc
- valgrind available only on selected arches
8f23bcc
05114ad
* Mon Sep 01 2014 Jiri Popelka <jpopelka@redhat.com> - 0.9-1
05114ad
- 0.9
05114ad
519215e
* Thu Aug 21 2014 Jiri Popelka <jpopelka@redhat.com> - 0.9-0.5.beta1
519215e
- fix building with PostgreSQL on i686
519215e
- redefine localstatedir to sharedstatedir (kea#3523)
519215e
5fc4ba0
* Wed Aug 20 2014 Jiri Popelka <jpopelka@redhat.com> - 0.9-0.4.beta1
5fc4ba0
- install systemd service units with a proper patch that we can send upstream
5fc4ba0
- build with MySQL & PostgreSQL & Google Test
5fc4ba0
- no need to copy sample configuration, /etc/kea/kea.conf already contains one
5fc4ba0
cce4c5d
* Tue Aug 19 2014 Jiri Popelka <jpopelka@redhat.com> - 0.9-0.3.beta1
cce4c5d
- comment patches
cce4c5d
- use --preserve-timestamps with install
cce4c5d
cce4c5d
* Mon Aug 18 2014 Jiri Popelka <jpopelka@redhat.com> - 0.9-0.2.beta1
cce4c5d
- make it build on armv7
cce4c5d
- BuildRequires procps-ng for %%check
cce4c5d
- use install instead of cp
cce4c5d
- configure.ac: AC_PROG_LIBTOOL -> LT_INIT
cce4c5d
- move license files to -libs
cce4c5d
cce4c5d
* Thu Aug 14 2014 Jiri Popelka <jpopelka@redhat.com> - 0.9-0.1.beta1
cce4c5d
- initial spec