diff options
author | Hajimu UMEMOTO <ume@FreeBSD.org> | 2007-01-23 15:19:53 +0000 |
---|---|---|
committer | Hajimu UMEMOTO <ume@FreeBSD.org> | 2007-01-23 15:19:53 +0000 |
commit | 2369209682751d2a0c48588d74ef639ca75535c6 (patch) | |
tree | 50f884cd5f96b6b0505d4bd34a3bda78ce59e378 /dns | |
parent | ba253a3a39c4ca0f924b9872785232334a5e040c (diff) | |
download | ports-2369209682751d2a0c48588d74ef639ca75535c6.tar.gz ports-2369209682751d2a0c48588d74ef639ca75535c6.zip |
Add WITH_COMPAT5X option. It is to build nss_resinit.so which is able
to work with the 5.X binaries such as p4 on 6.X after importing the
BIND9's resolver.
Requested by: bms
Notes
Notes:
svn path=/head/; revision=183079
Diffstat (limited to 'dns')
-rw-r--r-- | dns/nss_resinit/Makefile | 7 | ||||
-rw-r--r-- | dns/nss_resinit/files/patch-nss_resinit.c | 22 |
2 files changed, 29 insertions, 0 deletions
diff --git a/dns/nss_resinit/Makefile b/dns/nss_resinit/Makefile index 55ddefe1ae7a..3d5c17acfa08 100644 --- a/dns/nss_resinit/Makefile +++ b/dns/nss_resinit/Makefile @@ -25,4 +25,11 @@ MANCOMPRESSED= yes IGNORE= name-service switch support in libc is required .endif +.if defined(WITH_COMPAT5X) +.if ${OSVERSION} > 700017 +BROKEN= 7.X and later do not have compat syms for the old resolver +.endif +MAKE_ARGS+= CC="${CC} -DWITH_COMPAT5X" +.endif + .include <bsd.port.post.mk> diff --git a/dns/nss_resinit/files/patch-nss_resinit.c b/dns/nss_resinit/files/patch-nss_resinit.c new file mode 100644 index 000000000000..d489b6295fc9 --- /dev/null +++ b/dns/nss_resinit/files/patch-nss_resinit.c @@ -0,0 +1,22 @@ +Index: nss_resinit.c +diff -u -p nss_resinit.c.orig nss_resinit.c +--- nss_resinit.c.orig Wed Apr 12 20:29:35 2006 ++++ nss_resinit.c Tue Jan 23 09:48:22 2007 +@@ -44,6 +44,17 @@ __RCSID("$Mahoroba: src/nss_resinit/nss_ + + #ifndef res_ninit + typedef struct __res_state *res_state; ++#endif ++ ++#ifdef WITH_COMPAT5X ++extern struct __res_state *___res(void); ++#undef _res ++#define _res (*___res()) ++#undef res_ninit ++#undef __res_vinit ++#endif ++ ++#ifndef res_ninit + #define res_ninit(res) res_init() + #define __res_vinit(res, preinit) (res_close(), res_init()) + #endif |