[bind99] inital import
Jiří Popelka
jpopelka at fedoraproject.org
Thu Mar 12 16:53:34 UTC 2015
commit e0ee5e5f7c2f933a52eae8e0c007876ba1f4f89c
Author: Jiri Popelka <jpopelka at redhat.com>
Date: Thu Mar 12 17:37:18 2015 +0100
inital import
.gitignore | 1 +
bind-9.9.1-P2-multlib-conflict.patch | 70 +++++++++++
bind93-rh490837.patch | 95 +++++++++++++++
bind97-exportlib.patch | 226 +++++++++++++++++++++++++++++++++++
bind97-rh478718.patch | 30 +++++
bind98-rh735103.patch | 40 +++++++
bind99-buildfix.patch | 12 ++
bind99-dont-build-bin.patch | 13 ++
bind99.spec | 176 +++++++++++++++++++++++++++
sources | 1 +
10 files changed, 664 insertions(+)
---
diff --git a/.gitignore b/.gitignore
index e69de29..5c30d09 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/bind-9.9.7.tar.gz
diff --git a/bind-9.9.1-P2-multlib-conflict.patch b/bind-9.9.1-P2-multlib-conflict.patch
new file mode 100644
index 0000000..9fb4737
--- /dev/null
+++ b/bind-9.9.1-P2-multlib-conflict.patch
@@ -0,0 +1,70 @@
+diff -up bind-9.9.7/config.h.in.multlib-conflict bind-9.9.7/config.h.in
+--- bind-9.9.7/config.h.in.multlib-conflict 2015-02-18 02:56:06.000000000 +0100
++++ bind-9.9.7/config.h.in 2015-02-27 16:00:22.715914037 +0100
+@@ -455,7 +455,7 @@ int sigwait(const unsigned int *set, int
+ #undef PORT_NONBLOCK
+
+ /* The size of `void *', as computed by sizeof. */
+-#undef SIZEOF_VOID_P
++/* #undef SIZEOF_VOID_P */
+
+ /* Define to 1 if you have the ANSI C header files. */
+ #undef STDC_HEADERS
+diff -up bind-9.9.7/configure.in.multlib-conflict bind-9.9.7/configure.in
+--- bind-9.9.7/configure.in.multlib-conflict 2015-02-27 16:00:22.716914037 +0100
++++ bind-9.9.7/configure.in 2015-02-27 16:11:34.472001488 +0100
+@@ -2442,8 +2442,11 @@ int getnameinfo(const struct sockaddr *,
+ size_t, char *, size_t, int);],
+ [ return (0);],
+ [AC_MSG_RESULT(size_t for buflen; int for flags)
+- AC_DEFINE(IRS_GETNAMEINFO_SOCKLEN_T, size_t)
+- AC_DEFINE(IRS_GETNAMEINFO_BUFLEN_T, size_t)
++ # Changed to solve multilib conflict on Fedora
++ #AC_DEFINE(IRS_GETNAMEINFO_SOCKLEN_T, size_t)
++ #AC_DEFINE(IRS_GETNAMEINFO_BUFLEN_T, size_t)
++ AC_DEFINE(IRS_GETNAMEINFO_SOCKLEN_T, socklen_t)
++ AC_DEFINE(IRS_GETNAMEINFO_BUFLEN_T, socklen_t)
+ AC_DEFINE(IRS_GETNAMEINFO_FLAGS_T, int)],
+ [AC_MSG_RESULT(not match any subspecies; assume standard definition)
+ AC_DEFINE(IRS_GETNAMEINFO_SOCKLEN_T, socklen_t)
+diff -up bind-9.9.7/isc-config.sh.in.multlib-conflict bind-9.9.7/isc-config.sh.in
+--- bind-9.9.7/isc-config.sh.in.multlib-conflict 2015-02-18 02:56:06.000000000 +0100
++++ bind-9.9.7/isc-config.sh.in 2015-02-27 16:00:22.716914037 +0100
+@@ -21,7 +21,19 @@ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+ exec_prefix_set=
+ includedir=@includedir@
+-libdir=@libdir@
++arch=$(uname -m)
++
++case $arch in
++ x86_64 | amd64 | sparc64 | s390x | ppc64)
++ libdir=/usr/lib64
++ sec_libdir=/usr/lib
++ ;;
++ * )
++ libdir=/usr/lib
++ sec_libdir=/usr/lib64
++ ;;
++esac
++
+
+ usage()
+ {
+@@ -133,6 +145,16 @@ if test x"$echo_libs" = x"true"; then
+ if test x"${exec_prefix_set}" = x"true"; then
+ includes="-L${exec_prefix}/lib"
+ else
++ if [ ! -x $libdir/libisc.so ] ; then
++ if [ ! -x $sec_libdir/libisc.so ] ; then
++ echo "Error: ISC libs not found in $libdir"
++ if [ -d $sec_libdir ] ; then
++ echo "Error: ISC libs not found in $sec_libdir"
++ fi
++ exit 1
++ fi
++ libdir=$sec_libdir
++ fi
+ libs="-L${libdir}"
+ fi
+ if test x"$liblwres" = x"true" ; then
diff --git a/bind93-rh490837.patch b/bind93-rh490837.patch
new file mode 100644
index 0000000..230d7a7
--- /dev/null
+++ b/bind93-rh490837.patch
@@ -0,0 +1,95 @@
+? patch
+? lib/isc/lex.c.rh490837
+Index: lib/isc/lex.c
+===================================================================
+RCS file: /var/snap/bind9/lib/isc/lex.c,v
+retrieving revision 1.86
+diff -p -u -r1.86 lex.c
+--- lib/isc/lex.c 17 Sep 2007 09:56:29 -0000 1.86
++++ lib/isc/lex.c 6 Apr 2009 13:24:15 -0000
+@@ -425,17 +425,14 @@ isc_lex_gettoken(isc_lex_t *lex, unsigne
+ if (source->is_file) {
+ stream = source->input;
+
+-#if defined(HAVE_FLOCKFILE) && defined(HAVE_GETCUNLOCKED)
+- c = getc_unlocked(stream);
+-#else
+- c = getc(stream);
+-#endif
+- if (c == EOF) {
+- if (ferror(stream)) {
+- source->result = ISC_R_IOERROR;
+- result = source->result;
++ result = isc_stdio_fgetc(stream, &c);
++
++ if (result != ISC_R_SUCCESS) {
++ if (result != ISC_R_EOF) {
++ source->result = result;
+ goto done;
+ }
++
+ source->at_eof = ISC_TRUE;
+ }
+ } else {
+Index: lib/isc/include/isc/stdio.h
+===================================================================
+RCS file: /var/snap/bind9/lib/isc/include/isc/stdio.h,v
+retrieving revision 1.13
+diff -p -u -r1.13 stdio.h
+--- lib/isc/include/isc/stdio.h 19 Jun 2007 23:47:18 -0000 1.13
++++ lib/isc/include/isc/stdio.h 6 Apr 2009 13:24:15 -0000
+@@ -72,6 +72,9 @@ isc_stdio_sync(FILE *f);
+ * direct counterpart in the stdio library.
+ */
+
++isc_result_t
++isc_stdio_fgetc(FILE *f, int *ret);
++
+ ISC_LANG_ENDDECLS
+
+ #endif /* ISC_STDIO_H */
+Index: lib/isc/unix/errno2result.c
+===================================================================
+RCS file: /var/snap/bind9/lib/isc/unix/errno2result.c,v
+retrieving revision 1.17
+diff -p -u -r1.17 errno2result.c
+--- lib/isc/unix/errno2result.c 19 Jun 2007 23:47:18 -0000 1.17
++++ lib/isc/unix/errno2result.c 6 Apr 2009 13:24:15 -0000
+@@ -43,6 +43,7 @@ isc__errno2result(int posixerrno) {
+ case EINVAL: /* XXX sometimes this is not for files */
+ case ENAMETOOLONG:
+ case EBADF:
++ case EISDIR:
+ return (ISC_R_INVALIDFILE);
+ case ENOENT:
+ return (ISC_R_FILENOTFOUND);
+Index: lib/isc/unix/stdio.c
+===================================================================
+RCS file: /var/snap/bind9/lib/isc/unix/stdio.c,v
+retrieving revision 1.8
+diff -p -u -r1.8 stdio.c
+--- lib/isc/unix/stdio.c 19 Jun 2007 23:47:18 -0000 1.8
++++ lib/isc/unix/stdio.c 6 Apr 2009 13:24:15 -0000
+@@ -115,3 +115,22 @@ isc_stdio_sync(FILE *f) {
+ return (isc__errno2result(errno));
+ }
+
++isc_result_t
++isc_stdio_fgetc(FILE *f, int *ret) {
++ int r;
++ isc_result_t result = ISC_R_SUCCESS;
++
++#if defined(HAVE_FLOCKFILE) && defined(HAVE_GETCUNLOCKED)
++ r = fgetc_unlocked(f);
++#else
++ r = fgets(f);
++#endif
++
++ if (r == EOF)
++ result = ferror(f) ? isc__errno2result(errno) : ISC_R_EOF;
++
++ *ret = r;
++
++ return result;
++}
++
diff --git a/bind97-exportlib.patch b/bind97-exportlib.patch
new file mode 100644
index 0000000..4468ef5
--- /dev/null
+++ b/bind97-exportlib.patch
@@ -0,0 +1,226 @@
+diff -up bind-9.9.3rc2/isc-config.sh.in.exportlib bind-9.9.3rc2/isc-config.sh.in
+diff -up bind-9.9.3rc2/lib/export/dns/Makefile.in.exportlib bind-9.9.3rc2/lib/export/dns/Makefile.in
+--- bind-9.9.3rc2/lib/export/dns/Makefile.in.exportlib 2013-04-30 08:38:46.000000000 +0200
++++ bind-9.9.3rc2/lib/export/dns/Makefile.in 2013-05-13 10:45:22.574089729 +0200
+@@ -35,9 +35,9 @@ CDEFINES = -DUSE_MD5 @USE_OPENSSL@ @USE_
+
+ CWARNINGS =
+
+-ISCLIBS = ../isc/libisc. at A@
++ISCLIBS = ../isc/libisc-export. at A@
+
+-ISCDEPLIBS = ../isc/libisc. at A@
++ISCDEPLIBS = ../isc/libisc-export. at A@
+
+ LIBS = @LIBS@
+
+@@ -116,29 +116,29 @@ version. at O@: ${srcdir}/version.c
+ -DLIBAGE=${LIBAGE} \
+ -c ${srcdir}/version.c
+
+-libdns. at SA@: ${OBJS}
++libdns-export. at SA@: ${OBJS}
+ ${AR} ${ARFLAGS} $@ ${OBJS}
+ ${RANLIB} $@
+
+-libdns.la: ${OBJS}
++libdns-export.la: ${OBJS}
+ ${LIBTOOL_MODE_LINK} \
+- ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libdns.la \
++ ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libdns-export.la \
+ -rpath ${export_libdir} \
+ -version-info ${LIBINTERFACE}:${LIBREVISION}:${LIBAGE} \
+ ${OBJS} ${ISCLIBS} @DNS_CRYPTO_LIBS@ ${LIBS}
+
+-timestamp: libdns. at A@
++timestamp: libdns-export. at A@
+ touch timestamp
+
+ installdirs:
+ $(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${export_libdir}
+
+ install:: timestamp installdirs
+- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libdns. at A@ \
++ ${LIBTOOL_MODE_INSTALL} ${INSTALL_PROGRAM} libdns-export. at A@ \
+ ${DESTDIR}${export_libdir}/
+
+ clean distclean::
+- rm -f libdns. at A@ timestamp
++ rm -f libdns-export. at A@ timestamp
+ rm -f gen code.h include/dns/enumtype.h include/dns/enumclass.h
+ rm -f include/dns/rdatastruct.h
+
+diff -up bind-9.9.3rc2/lib/export/irs/Makefile.in.exportlib bind-9.9.3rc2/lib/export/irs/Makefile.in
+--- bind-9.9.3rc2/lib/export/irs/Makefile.in.exportlib 2013-04-30 08:38:46.000000000 +0200
++++ bind-9.9.3rc2/lib/export/irs/Makefile.in 2013-05-13 10:45:22.575089729 +0200
+@@ -43,9 +43,9 @@ SRCS = context.c \
+ gai_sterror.c getaddrinfo.c getnameinfo.c \
+ resconf.c
+
+-ISCLIBS = ../isc/libisc. at A@
+-DNSLIBS = ../dns/libdns. at A@
+-ISCCFGLIBS = ../isccfg/libisccfg. at A@
++ISCLIBS = ../isc/libisc-export. at A@
++DNSLIBS = ../dns/libdns-export. at A@
++ISCCFGLIBS = ../isccfg/libisccfg-export. at A@
+
+ LIBS = @LIBS@
+
+@@ -62,26 +62,26 @@ version. at O@: ${srcdir}/version.c
+ -DLIBAGE=${LIBAGE} \
+ -c ${srcdir}/version.c
+
+-libirs. at SA@: ${OBJS} version. at O@
++libirs-export. at SA@: ${OBJS} version. at O@
+ ${AR} ${ARFLAGS} $@ ${OBJS} version. at O@
+ ${RANLIB} $@
+
+-libirs.la: ${OBJS} version. at O@
++libirs-export.la: ${OBJS} version. at O@
+ ${LIBTOOL_MODE_LINK} \
+- ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libirs.la \
++ ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libirs-export.la \
+ -rpath ${export_libdir} \
+ -version-info ${LIBINTERFACE}:${LIBREVISION}:${LIBAGE} \
+ ${OBJS} version. at O@ ${LIBS} ${ISCCFGLIBS} ${DNSLIBS} ${ISCLIBS}
+
+-timestamp: libirs. at A@
++timestamp: libirs-export. at A@
+ touch timestamp
+
+ installdirs:
+ $(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${export_libdir}
+
+ install:: timestamp installdirs
+- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libirs. at A@ \
++ ${LIBTOOL_MODE_INSTALL} ${INSTALL_PROGRAM} libirs-export. at A@ \
+ ${DESTDIR}${export_libdir}/
+
+ clean distclean::
+- rm -f libirs. at A@ libirs.la timestamp
++ rm -f libirs-export. at A@ libirs-export.la timestamp
+diff -up bind-9.9.3rc2/lib/export/isccfg/Makefile.in.exportlib bind-9.9.3rc2/lib/export/isccfg/Makefile.in
+--- bind-9.9.3rc2/lib/export/isccfg/Makefile.in.exportlib 2013-04-30 08:38:46.000000000 +0200
++++ bind-9.9.3rc2/lib/export/isccfg/Makefile.in 2013-05-13 10:45:22.576089729 +0200
+@@ -30,11 +30,11 @@ CINCLUDES = -I. ${DNS_INCLUDES} -I${expo
+ CDEFINES =
+ CWARNINGS =
+
+-ISCLIBS = ../isc/libisc. at A@
+-DNSLIBS = ../dns/libdns. at A@ @DNS_CRYPTO_LIBS@
++ISCLIBS = ../isc/libisc-export. at A@
++DNSLIBS = ../dns/libdns-export. at A@ @DNS_CRYPTO_LIBS@
+
+ ISCDEPLIBS = ../../lib/isc/libisc. at A@
+-ISCCFGDEPLIBS = libisccfg. at A@
++ISCCFGDEPLIBS = libisccfg-export. at A@
+
+ LIBS = @LIBS@
+
+@@ -58,26 +58,26 @@ version. at O@: ${srcdir}/version.c
+ -DLIBAGE=${LIBAGE} \
+ -c ${srcdir}/version.c
+
+-libisccfg. at SA@: ${OBJS}
++libisccfg-export. at SA@: ${OBJS}
+ ${AR} ${ARFLAGS} $@ ${OBJS}
+ ${RANLIB} $@
+
+-libisccfg.la: ${OBJS}
++libisccfg-export.la: ${OBJS}
+ ${LIBTOOL_MODE_LINK} \
+- ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libisccfg.la \
++ ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libisccfg-export.la \
+ -rpath ${export_libdir} \
+ -version-info ${LIBINTERFACE}:${LIBREVISION}:${LIBAGE} \
+ ${OBJS} ${LIBS} ${DNSLIBS} ${ISCLIBS}
+
+-timestamp: libisccfg. at A@
++timestamp: libisccfg-export. at A@
+ touch timestamp
+
+ installdirs:
+ $(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${export_libdir}
+
+ install:: timestamp installdirs
+- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libisccfg. at A@ \
++ ${LIBTOOL_MODE_INSTALL} ${INSTALL_PROGRAM} libisccfg-export. at A@ \
+ ${DESTDIR}${export_libdir}/
+
+ clean distclean::
+- rm -f libisccfg. at A@ timestamp
++ rm -f libisccfg-export. at A@ timestamp
+diff -up bind-9.9.3rc2/lib/export/isc/Makefile.in.exportlib bind-9.9.3rc2/lib/export/isc/Makefile.in
+--- bind-9.9.3rc2/lib/export/isc/Makefile.in.exportlib 2013-04-30 08:38:46.000000000 +0200
++++ bind-9.9.3rc2/lib/export/isc/Makefile.in 2013-05-13 10:45:22.576089729 +0200
+@@ -100,6 +100,10 @@ SRCS = @ISC_EXTRA_SRCS@ \
+
+ LIBS = @LIBS@
+
++# Note: the order of SUBDIRS is important.
++# Attempt to disable parallel processing.
++.NOTPARALLEL:
++.NO_PARALLEL:
+ SUBDIRS = include unix nls @ISC_THREAD_DIR@
+ TARGETS = timestamp
+
+@@ -113,26 +117,26 @@ version. at O@: ${srcdir}/version.c
+ -DLIBAGE=${LIBAGE} \
+ -c ${srcdir}/version.c
+
+-libisc. at SA@: ${OBJS}
++libisc-export. at SA@: ${OBJS}
+ ${AR} ${ARFLAGS} $@ ${OBJS}
+ ${RANLIB} $@
+
+-libisc.la: ${OBJS}
++libisc-export.la: ${OBJS}
+ ${LIBTOOL_MODE_LINK} \
+- ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libisc.la \
++ ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o libisc-export.la \
+ -rpath ${export_libdir} \
+ -version-info ${LIBINTERFACE}:${LIBREVISION}:${LIBAGE} \
+ ${OBJS} ${LIBS}
+
+-timestamp: libisc. at A@
++timestamp: libisc-export. at A@
+ touch timestamp
+
+ installdirs:
+ $(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${export_libdir}
+
+ install:: timestamp installdirs
+- ${LIBTOOL_MODE_INSTALL} ${INSTALL_DATA} libisc. at A@ \
++ ${LIBTOOL_MODE_INSTALL} ${INSTALL_PROGRAM} libisc-export. at A@ \
+ ${DESTDIR}${export_libdir}
+
+ clean distclean::
+- rm -f libisc. at A@ libisc.la timestamp
++ rm -f libisc-export. at A@ libisc-export.la timestamp
+diff -up bind-9.9.3rc2/lib/export/samples/Makefile.in.exportlib bind-9.9.3rc2/lib/export/samples/Makefile.in
+--- bind-9.9.3rc2/lib/export/samples/Makefile.in.exportlib 2013-04-30 08:38:46.000000000 +0200
++++ bind-9.9.3rc2/lib/export/samples/Makefile.in 2013-05-13 10:45:22.577089729 +0200
+@@ -31,15 +31,15 @@ CINCLUDES = -I${srcdir}/include -I../dns
+ CDEFINES =
+ CWARNINGS =
+
+-DNSLIBS = ../dns/libdns. at A@ @DNS_CRYPTO_LIBS@
+-ISCLIBS = ../isc/libisc. at A@
+-ISCCFGLIBS = ../isccfg/libisccfg. at A@
+-IRSLIBS = ../irs/libirs. at A@
++DNSLIBS = ../dns/libdns-export. at A@ @DNS_CRYPTO_LIBS@
++ISCLIBS = ../isc/libisc-export. at A@
++ISCCFGLIBS = ../isccfg/libisccfg-export. at A@
++IRSLIBS = ../irs/libirs-export. at A@
+
+-DNSDEPLIBS = ../dns/libdns. at A@
+-ISCDEPLIBS = ../isc/libisc. at A@
+-ISCCFGDEPLIBS = ../isccfg/libisccfg. at A@
+-IRSDEPLIBS = ../irs/libirs. at A@
++DNSDEPLIBS = ../dns/libdns-export. at A@
++ISCDEPLIBS = ../isc/libisc-export. at A@
++ISCCFGDEPLIBS = ../isccfg/libisccfg-export. at A@
++IRSDEPLIBS = ../irs/libirs-export. at A@
+
+ DEPLIBS = ${DNSDEPLIBS} ${ISCCFGDEPLIBS} ${ISCDEPLIBS}
+
diff --git a/bind97-rh478718.patch b/bind97-rh478718.patch
new file mode 100644
index 0000000..c6ea596
--- /dev/null
+++ b/bind97-rh478718.patch
@@ -0,0 +1,30 @@
+diff -up bind-9.7.0/configure.in.rh478718 bind-9.7.0/configure.in
+--- bind-9.7.0/configure.in.rh478718 2010-03-01 14:50:02.331207076 +0100
++++ bind-9.7.0/configure.in 2010-03-01 14:50:21.501207488 +0100
+@@ -2540,6 +2540,10 @@ main() {
+ AC_MSG_RESULT($arch)
+ fi
+
++if test ! "$arch" = "x86_64" -a "$have_xaddq" = "yes"; then
++ AC_MSG_ERROR([XADDQ present but disabled by Fedora patch!])
++fi
++
+ if test "$have_atomic" = "yes"; then
+ AC_MSG_CHECKING([compiler support for inline assembly code])
+
+diff -up bind-9.7.0/lib/isc/include/isc/platform.h.in.rh478718 bind-9.7.0/lib/isc/include/isc/platform.h.in
+--- bind-9.7.0/lib/isc/include/isc/platform.h.in.rh478718 2010-03-01 14:50:31.421207522 +0100
++++ bind-9.7.0/lib/isc/include/isc/platform.h.in 2010-03-01 14:50:40.313707286 +0100
+@@ -255,7 +255,11 @@
+ * If the "xaddq" operation (64bit xadd) is available on this architecture,
+ * ISC_PLATFORM_HAVEXADDQ will be defined.
+ */
+- at ISC_PLATFORM_HAVEXADDQ@
++#ifdef __x86_64__
++#define ISC_PLATFORM_HAVEXADDQ 1
++#else
++#undef ISC_PLATFORM_HAVEXADDQ
++#endif
+
+ /*
+ * If the "atomic swap" operation is available on this architecture,
diff --git a/bind98-rh735103.patch b/bind98-rh735103.patch
new file mode 100644
index 0000000..77acfa8
--- /dev/null
+++ b/bind98-rh735103.patch
@@ -0,0 +1,40 @@
+diff -up bind-9.8.1rc1/lib/isc/unix/socket.c.rh735103 bind-9.8.1rc1/lib/isc/unix/socket.c
+--- bind-9.8.1rc1/lib/isc/unix/socket.c.rh735103 2011-07-29 04:19:20.000000000 +0200
++++ bind-9.8.1rc1/lib/isc/unix/socket.c 2011-09-07 18:49:54.100215897 +0200
+@@ -57,6 +57,20 @@
+ #include <isc/util.h>
+ #include <isc/xml.h>
+
++/* See task.c about the following definition: */
++#ifdef BIND9
++#ifdef ISC_PLATFORM_USETHREADS
++#define USE_WATCHER_THREAD
++#else
++#define USE_SHARED_MANAGER
++#endif /* ISC_PLATFORM_USETHREADS */
++#else /* BIND9 */
++#undef ISC_PLATFORM_HAVESYSUNH
++#undef ISC_PLATFORM_HAVEKQUEUE
++#undef ISC_PLATFORM_HAVEEPOLL
++#undef ISC_PLATFORM_HAVEDEVPOLL
++#endif /* BIND9 */
++
+ #ifdef ISC_PLATFORM_HAVESYSUNH
+ #include <sys/un.h>
+ #endif
+@@ -76,15 +90,6 @@
+
+ #include "errno2result.h"
+
+-/* See task.c about the following definition: */
+-#ifdef BIND9
+-#ifdef ISC_PLATFORM_USETHREADS
+-#define USE_WATCHER_THREAD
+-#else
+-#define USE_SHARED_MANAGER
+-#endif /* ISC_PLATFORM_USETHREADS */
+-#endif /* BIND9 */
+-
+ #ifndef USE_WATCHER_THREAD
+ #include "socket_p.h"
+ #include "../task_p.h"
diff --git a/bind99-buildfix.patch b/bind99-buildfix.patch
new file mode 100644
index 0000000..ea8db36
--- /dev/null
+++ b/bind99-buildfix.patch
@@ -0,0 +1,12 @@
+diff -up bind-9.9.4b1/bin/tests/system/Makefile.in.buildfix bind-9.9.4b1/bin/tests/system/Makefile.in
+--- bind-9.9.4b1/bin/tests/system/Makefile.in.buildfix 2013-07-15 11:02:23.354667876 +0200
++++ bind-9.9.4b1/bin/tests/system/Makefile.in 2013-07-15 11:04:19.109587522 +0200
+@@ -21,7 +21,7 @@ top_srcdir = @top_srcdir@
+
+ @BIND9_MAKE_INCLUDES@
+
+-SUBDIRS = builtin dlzexternal filter-aaaa lwresd rpz rrl \
++SUBDIRS = builtin filter-aaaa lwresd rpz rrl \
+ rsabigexponent tkey tsiggss
+ TARGETS =
+
diff --git a/bind99-dont-build-bin.patch b/bind99-dont-build-bin.patch
new file mode 100644
index 0000000..b1a517d
--- /dev/null
+++ b/bind99-dont-build-bin.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile.in b/Makefile.in
+index 2c5985f..f832a94 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -21,7 +21,7 @@ top_srcdir = @top_srcdir@
+
+ @BIND9_VERSION@
+
+-SUBDIRS = make unit lib bin doc @LIBEXPORT@
++SUBDIRS = make lib doc @LIBEXPORT@
+ TARGETS =
+
+ MANPAGES = isc-config.sh.1
diff --git a/bind99.spec b/bind99.spec
new file mode 100644
index 0000000..27db70c
--- /dev/null
+++ b/bind99.spec
@@ -0,0 +1,176 @@
+#
+# Red Hat BIND 9.9.x libraries for DHCP package .spec file
+#
+
+%{!?_bind99_libdir:%global _bind99_libdir %{_libdir}/%{name}}
+%{!?_bind99_includedir:%global _bind99_includedir %{_includedir}/%{name}}
+
+#%%global PATCHVER P1
+#%%global PREVER rc2
+%global VERSION %{version}%{?PREVER}%{?PATCHVER:-%{PATCHVER}}
+
+Summary: The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) libraries
+Name: bind99
+# include/bind99/isc/sha2.h: is licensed as BSD (3 clause) and ISC
+# include/bind99/isc/md5.h: is licensed as Public domain and ISC
+License: ISC and BSD and Public Domain
+Version: 9.9.7
+Release: 3%{?PATCHVER:.%{PATCHVER}}%{?PREVER:.%{PREVER}}%{?dist}
+Url: http://www.isc.org/products/BIND/
+Group: Applications/System
+
+Source0: ftp://ftp.isc.org/isc/bind9/%{VERSION}/bind-%{VERSION}.tar.gz
+
+# patches from original BIND package, that are modifying libraries
+Patch0:bind93-rh490837.patch
+Patch1:bind97-rh478718.patch
+Patch2:bind97-exportlib.patch
+Patch3:bind98-rh735103.patch
+Patch4:bind99-buildfix.patch
+Patch5:bind-9.9.1-P2-multlib-conflict.patch
+# Do not build any binaries or tests, just libraries
+Patch6:bind99-dont-build-bin.patch
+
+Requires: coreutils
+BuildRequires: openssl-devel, libtool, autoconf, pkgconfig, libcap-devel, libxml2-devel
+BuildRequires: krb5-devel
+
+%description
+BIND (Berkeley Internet Name Domain) is an implementation of the DNS
+(Domain Name System) protocols. This package set contains only export
+version of BIND libraries, that are used for building ISC DHCP.
+
+%package libs
+Summary: BIND 9.9.x libraries used for building ISC DHCP
+Group: Applications/System
+Requires: %{name}-license = %{version}-%{release}
+
+%description libs
+Contains export version of BIND 9.9.x suite libraries used by ISC DHCP.
+
+%package license
+Summary: License of the BIND DNS suite
+Group: Applications/System
+BuildArch:noarch
+
+%description license
+Contains license of the BIND DNS suite.
+
+%package devel
+Summary: Header files and libraries needed for BIND DNS development
+Group: Development/Libraries
+Requires: %{name}-libs%{?_isa} = %{version}-%{release}
+
+%description devel
+This package contains export version of the header files and libraries
+required for development with ISC BIND 9.9.x. These headers and libraries
+are used for building ISC DHCP.
+
+
+%prep
+%setup -q -n bind-%{VERSION}
+
+%patch0 -p0 -b .rh490837
+%patch1 -p1 -b .rh478718
+%patch2 -p1 -b .exportlib
+%patch3 -p1 -b .rh735103
+%patch4 -p1 -b .buildfix
+%patch5 -p1 -b .multlib-conflict
+%patch6 -p1 -b .dont-build-bin
+
+
+%build
+export CFLAGS="$CFLAGS $RPM_OPT_FLAGS"
+export CPPFLAGS="$CPPFLAGS -DDIG_SIGCHASE"
+export STD_CDEFINES="$CPPFLAGS"
+
+sed -i -e \
+'s/RELEASEVER=\(.*\)/RELEASEVER=\1-RedHat-%{version}-%{release}/' \
+version
+
+libtoolize -c -f; aclocal -I libtool.m4 --force; autoconf -f
+
+%configure \
+ --with-libtool \
+ --localstatedir=%{_localstatedir} \
+ --enable-threads \
+ --enable-ipv6 \
+ --enable-rrl \
+ --with-pic \
+ --disable-static \
+ --disable-openssl-version-check \
+ --enable-exportlib \
+ --with-export-libdir=%{_bind99_libdir} \
+ --with-export-includedir=%{_bind99_includedir} \
+ --includedir=%{_includedir}/bind9 \
+ --libdir=%{_libdir}/bind9 \
+ --with-gssapi=yes \
+ --disable-isc-spnego \
+ --enable-fixed-rrset \
+ --with-docbook-xsl=%{_datadir}/sgml/docbook/xsl-stylesheets
+
+make %{?_smp_mflags}
+
+
+%install
+make DESTDIR=%{buildroot} install
+# Remove unwanted files
+rm -f %{buildroot}/etc/bind.keys
+# Install isc/errno2result.h header
+install -m 644 lib/isc/unix/errno2result.h %{buildroot}%{_bind99_includedir}/isc
+# Remove libtool .la files:
+find %{buildroot}/%{_libdir} -name '*.la' -exec '/bin/rm' '-f' '{}' ';';
+# remove all libraries and headers except *-export ones
+rm -rf %{buildroot}%{_libdir}/bind9
+rm -rf %{buildroot}%{_includedir}/bind9
+# remove all liblwres and tools documentation
+rm -rf %{buildroot}%{_mandir}
+# remove unneeded tools
+rm -f %{buildroot}%{_bindir}/isc-config.sh
+rm -f %{buildroot}%{_bindir}/bind9-config
+
+mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d
+echo "%{_bind99_libdir}" > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+
+
+%post libs -p /sbin/ldconfig
+
+
+%postun libs -p /sbin/ldconfig
+
+
+%files libs
+%doc CHANGES README
+%config(noreplace) %{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
+%dir %{_bind99_libdir}
+%{_bind99_libdir}/libdns-export.so.106*
+%{_bind99_libdir}/libirs-export.so.91*
+%{_bind99_libdir}/libisc-export.so.104*
+%{_bind99_libdir}/libisccfg-export.so.90*
+
+%files license
+%{!?_licensedir:%global license %%doc}
+%license COPYRIGHT
+
+%files devel
+%{_bind99_libdir}/libdns-export.so
+%{_bind99_libdir}/libirs-export.so
+%{_bind99_libdir}/libisc-export.so
+%{_bind99_libdir}/libisccfg-export.so
+%dir %{_bind99_includedir}
+%{_bind99_includedir}/dns
+%{_bind99_includedir}/dst
+%{_bind99_includedir}/irs
+%{_bind99_includedir}/isc
+%{_bind99_includedir}/isccfg
+
+
+%changelog
+* Wed Mar 11 2015 Tomas Hozza <thozza at redhat.com> - 9.9.7-3
+- Fix issues from package review (#1199428#c4)
+
+* Fri Mar 06 2015 Tomas Hozza <thozza at redhat.com> - 9.9.7-2
+- Fix minor issues found by Jiri Popelka in the review bug (#1199428#c1)
+
+* Fri Mar 06 2015 Tomas Hozza <thozza at redhat.com> - 9.9.7-1
+- Initial version of bind99 libraries packages for ISC DHCP
diff --git a/sources b/sources
index e69de29..8da3572 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+5aa989e0f46240316c0b96d1cc78bcbb bind-9.9.7.tar.gz
More information about the scm-commits
mailing list