summaryrefslogtreecommitdiff
path: root/databases/tokyocabinet
diff options
context:
space:
mode:
authorobache <obache@pkgsrc.org>2009-12-19 12:56:45 +0000
committerobache <obache@pkgsrc.org>2009-12-19 12:56:45 +0000
commit5a9bff91e0f3b128a6ec13025a5bfeae358ca154 (patch)
tree1a43c0d52ff39401d6386696855fa36dc5efc749 /databases/tokyocabinet
parent73d9de712957ac291b6b09fe9c87d9d5131f743e (diff)
downloadpkgsrc-5a9bff91e0f3b128a6ec13025a5bfeae358ca154.tar.gz
Introduce PKG_OPTIONS for database/tokyocabinet to select compression support
(zlib/bzip2/lzo/lzma and enabled by default for former two). LZO and LZMA supports are exclusive, optional and should be selected by user's use-case (priority of data compression ratio, compression speed, or so on). Furthermore, Tokyocabinet uses archives/lzmalib for lzma support, but lzmalib conflicts with archivers/xz. It means if tokyocabinet is installed with lzma, failed to install xz, and result in failure of "make extract" for packages using .lzma/.xz distfiles. This issue also resolved by optionify lzma support and disabled by default. This changes also make tokyocabinet ABI changes, so bump PKGREVISION and recursive bump. OKed to commit in freeze by wiz@.
Diffstat (limited to 'databases/tokyocabinet')
-rw-r--r--databases/tokyocabinet/Makefile12
-rw-r--r--databases/tokyocabinet/buildlink3.mk19
-rw-r--r--databases/tokyocabinet/options.mk40
3 files changed, 60 insertions, 11 deletions
diff --git a/databases/tokyocabinet/Makefile b/databases/tokyocabinet/Makefile
index fd0c058d2f1..97b05a7ba23 100644
--- a/databases/tokyocabinet/Makefile
+++ b/databases/tokyocabinet/Makefile
@@ -1,7 +1,8 @@
-# $NetBSD: Makefile,v 1.35 2009/11/25 11:33:56 obache Exp $
+# $NetBSD: Makefile,v 1.36 2009/12/19 12:56:45 obache Exp $
#
DISTNAME= tokyocabinet-1.4.32
+PKGREVISION= 1
CATEGORIES= databases
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=tokyocabinet/}
@@ -18,17 +19,10 @@ USE_LANGUAGES= c99
PKGCONFIG_OVERRIDE+= tokyocabinet.pc.in
-CONFIGURE_ARGS+= --enable-zlib
-CONFIGURE_ARGS+= --enable-bzip
-CONFIGURE_ARGS+= --enable-exlzma
-CONFIGURE_ARGS+= --enable-exlzo
+.include "options.mk"
TEST_TARGET= check
-.include "../../archivers/bzip2/buildlink3.mk"
-.include "../../archivers/lzmalib/buildlink3.mk"
-.include "../../archivers/lzo/buildlink3.mk"
-.include "../../devel/zlib/buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
PTHREAD_AUTO_VARS= yes
.if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} == "none"
diff --git a/databases/tokyocabinet/buildlink3.mk b/databases/tokyocabinet/buildlink3.mk
index 71ff54918d9..9d1b90e81f9 100644
--- a/databases/tokyocabinet/buildlink3.mk
+++ b/databases/tokyocabinet/buildlink3.mk
@@ -1,4 +1,4 @@
-# $NetBSD: buildlink3.mk,v 1.5 2009/03/21 05:32:04 obache Exp $
+# $NetBSD: buildlink3.mk,v 1.6 2009/12/19 12:56:45 obache Exp $
BUILDLINK_TREE+= tokyocabinet
@@ -6,13 +6,28 @@ BUILDLINK_TREE+= tokyocabinet
TOKYOCABINET_BUILDLINK3_MK:=
BUILDLINK_API_DEPENDS.tokyocabinet+= tokyocabinet>=1.3.7
-BUILDLINK_ABI_DEPENDS.tokyocabinet+= tokyocabinet>=1.4.10
+BUILDLINK_ABI_DEPENDS.tokyocabinet+= tokyocabinet>=1.4.32nb1
BUILDLINK_PKGSRCDIR.tokyocabinet?= ../../databases/tokyocabinet
+pkgbase := tokyocabinet
+.include "../../mk/pkg-build-options.mk"
+
+.if !empty(PKG_BUILD_OPTIONS.tokyocabinet:Mbzip2)
.include "../../archivers/bzip2/buildlink3.mk"
+.endif
+
+.if !empty(PKG_BUILD_OPTIONS.tokyocabinet:Mlzma)
.include "../../archivers/lzmalib/buildlink3.mk"
+.endif
+
+.if !empty(PKG_BUILD_OPTIONS.tokyocabinet:Mlzo)
.include "../../archivers/lzo/buildlink3.mk"
+.endif
+
+.if !empty(PKG_BUILD_OPTIONS.tokyocabinet:Mzlib)
.include "../../devel/zlib/buildlink3.mk"
+.endif
+
.include "../../mk/pthread.buildlink3.mk"
.endif # TOKYOCABINET_BUILDLINK3_MK
diff --git a/databases/tokyocabinet/options.mk b/databases/tokyocabinet/options.mk
new file mode 100644
index 00000000000..23621721ee1
--- /dev/null
+++ b/databases/tokyocabinet/options.mk
@@ -0,0 +1,40 @@
+# $NetBSD: options.mk,v 1.1 2009/12/19 12:56:45 obache Exp $
+#
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.tokyocabinet
+PKG_SUPPORTED_OPTIONS= zlib bzip2
+PKG_OPTIONS_OPTIONAL_GROUPS= codec
+PKG_OPTIONS_GROUP.codec= lzma lzo
+PKG_SUGGESTED_OPTIONS= zlib bzip2
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mzlib)
+.include "../../devel/zlib/buildlink3.mk"
+CONFIGURE_ARGS+= --enable-zlib
+CONFIGURE_ARGS+= --with-zlib=${BUILDLINK_PREFIX.zlib}
+.else
+CONFIGURE_ARGS+= --disable-zlib
+.endif
+
+.if !empty(PKG_OPTIONS:Mbzip2)
+.include "../../archivers/bzip2/buildlink3.mk"
+CONFIGURE_ARGS+= --enable-bzip
+CONFIGURE_ARGS+= --with-bzip=${BUILDLINK_PREFIX.bzip2}
+.else
+CONFIGURE_ARGS+= --disable-bzip
+.endif
+
+.if !empty(PKG_OPTIONS:Mlzma)
+.include "../../archivers/lzmalib/buildlink3.mk"
+CONFIGURE_ARGS+= --enable-exlzma
+.else
+CONFIGURE_ARGS+= --disable-exlzma
+.endif
+
+.if !empty(PKG_OPTIONS:Mlzo)
+.include "../../archivers/lzo/buildlink3.mk"
+CONFIGURE_ARGS+= --enable-exlzo
+.else
+CONFIGURE_ARGS+= --disable-exlzo
+.endif