hivex: support all optional bindings

This commit is contained in:
tnn 2018-10-04 16:01:40 +00:00
parent df0fa24684
commit b64d9b245d
6 changed files with 121 additions and 14 deletions

View file

@ -1,6 +1,7 @@
# $NetBSD: Makefile,v 1.2 2018/10/03 21:57:37 tnn Exp $
# $NetBSD: Makefile,v 1.3 2018/10/04 16:01:40 tnn Exp $
DISTNAME= hivex-1.3.15
PKGREVISION= 1
CATEGORIES= sysutils
MASTER_SITES= http://download.libguestfs.org/hivex/
@ -18,11 +19,6 @@ USE_PKGLOCALEDIR= yes
PKGCONFIG_OVERRIDE+= hivex.pc.in
CONFIGURE_ARGS+= --disable-nls
CONFIGURE_ARGS+= --disable-ocaml
CONFIGURE_ARGS+= --disable-perl
CONFIGURE_ARGS+= --disable-python
CONFIGURE_ARGS+= --disable-ruby
CONFIGURE_ARGS+= --without-readline
REPLACE_SH+= sh/hivexget
@ -38,5 +34,7 @@ PLIST.tools=yes
.include "../../textproc/libxml2/buildlink3.mk"
.endif
.include "options.mk"
.include "../../converters/libiconv/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"

View file

@ -1,11 +1,28 @@
@comment $NetBSD: PLIST,v 1.2 2018/10/03 21:57:37 tnn Exp $
${PLIST.tools}bin/hivexget
${PLIST.tools}bin/hivexml
${PLIST.tools}bin/hivexsh
@comment $NetBSD: PLIST,v 1.3 2018/10/04 16:01:40 tnn Exp $
bin/hivexget
bin/hivexml
bin/hivexsh
${PLIST.perl}bin/hivexregedit
include/hivex.h
lib/libhivex.la
${PLIST.ocaml}${OCAML_SITELIB}/hivex/META
${PLIST.ocaml}${OCAML_SITELIB}/hivex/dllmlhivex.so
${PLIST.ocaml}${OCAML_SITELIB}/hivex/hivex.cmi
${PLIST.ocaml}${OCAML_SITELIB}/hivex/hivex.cmx
${PLIST.ocaml}${OCAML_SITELIB}/hivex/hivex.mli
${PLIST.ocaml}${OCAML_SITELIB}/hivex/libmlhivex.a
${PLIST.ocaml}${OCAML_SITELIB}/hivex/mlhivex.a
${PLIST.ocaml}${OCAML_SITELIB}/hivex/mlhivex.cma
${PLIST.ocaml}${OCAML_SITELIB}/hivex/mlhivex.cmxa
lib/pkgconfig/hivex.pc
${PLIST.tools}man/man1/hivexget.1
${PLIST.tools}man/man1/hivexml.1
${PLIST.tools}man/man1/hivexsh.1
${PLIST.python}${PYSITELIB}/hivex/__init__.py
${PLIST.python}${PYSITELIB}/hivex/hive_types.py
${PLIST.python}${PYSITELIB}/libhivexmod.la
${PLIST.ruby}${RUBY_SITELIB}/hivex.rb
${PLIST.ruby}${RUBY_SITEARCHLIB}/_hivex.${RUBY_DLEXT}
man/man1/hivexget.1
man/man1/hivexml.1
man/man1/hivexsh.1
${PLIST.perl}man/man1/hivexregedit.1
man/man3/hivex.3
${PLIST.ocaml}@pkgdir lib/ocaml/site-lib

View file

@ -1,6 +1,8 @@
$NetBSD: distinfo,v 1.1 2018/10/03 20:09:00 tnn Exp $
$NetBSD: distinfo,v 1.2 2018/10/04 16:01:40 tnn Exp $
SHA1 (hivex-1.3.15.tar.gz) = 0b93f6947223bfa16012cb23d29437b8074fd29f
RMD160 (hivex-1.3.15.tar.gz) = 31a243d63822006026ec239ecc6ac33ac1b68981
SHA512 (hivex-1.3.15.tar.gz) = 7ce4fd6842c7545a41dc4c4268db5f0629d618a17f29a68dda6990a0dd4530cdf0e0c654f00104274c57e792aa4bcf712bcac1c76e2fd2dbce9aeae1e5751517
Size (hivex-1.3.15.tar.gz) = 1542436 bytes
SHA1 (patch-ocaml_Makefile.in) = de989be1269d59bc626bd2ddb42785102b695de6
SHA1 (patch-perl_Makefile.in) = a5776c1b6b382af85e3f8927a83cfd147105e3ee

60
sysutils/hivex/options.mk Normal file
View file

@ -0,0 +1,60 @@
# $NetBSD: options.mk,v 1.1 2018/10/04 16:01:40 tnn Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.hivex
PKG_SUPPORTED_OPTIONS= ocaml perl python readline ruby
PKG_SUGGESTED_OPTIONS= ocaml
.include "../../mk/bsd.options.mk"
PLIST_VARS+= ocaml
.if !empty(PKG_OPTIONS:Mocaml)
PLIST.ocaml= yes
INSTALL_ENV+= OCAML_SITELIBDIR=${OCAML_SITELIBDIR}
OCAML_USE_FINDLIB= yes
CONFIGURE_ARGS+= --enable-ocaml
.include "../../mk/ocaml.mk"
.else
CONFIGURE_ARGS+= --disable-ocaml
.endif
PLIST_VARS+= perl
.if !empty(PKG_OPTIONS:Mperl)
USE_TOOLS+= perl:run
PLIST.perl= yes
CONFIGURE_ARGS+= --enable-perl
DEPENDS+= p5-IO-stringy-[0-9]*:../../devel/p5-IO-stringy
PERL5_PACKLIST= auto/Win/Hivex/.packlist
REPLACE_PERL+= regedit/hivexregedit
.include "../../lang/perl5/packlist.mk"
.include "../../lang/perl5/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-perl
.endif
PLIST_VARS+= python
.if !empty(PKG_OPTIONS:Mpython)
PLIST.python= yes
CONFIGURE_ARGS+= --enable-python
PY_PATCHPLIST= yes
.include "../../lang/python/extension.mk"
.else
CONFIGURE_ARGS+= --disable-python
.endif
.if !empty(PKG_OPTIONS:Mreadline)
CONFIGURE_ARGS+= --with-readline
.include "../../devel/readline/buildlink3.mk"
.else
CONFIGURE_ARGS+= --without-readline
.endif
PLIST_VARS+= ruby
.if !empty(PKG_OPTIONS:Mruby)
PLIST.ruby= yes
CONFIGURE_ARGS+= --enable-ruby
CONFIGURE_ENV+= ac_cv_prog_RUBY=${PREFIX}/bin/${RUBY_NAME}
CONFIGURE_ENV+= ac_cv_prog_RAKE=${PREFIX}/bin/${RAKE_NAME}
.include "../../lang/ruby/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-ruby
.endif

View file

@ -0,0 +1,15 @@
$NetBSD: patch-ocaml_Makefile.in,v 1.1 2018/10/04 16:01:40 tnn Exp $
Fix OCaml install directory.
--- ocaml/Makefile.in.orig 2018-02-26 10:53:35.000000000 +0000
+++ ocaml/Makefile.in
@@ -1853,7 +1853,7 @@ uninstall-am:
@HAVE_OCAML_TRUE@install-data-hook:
@HAVE_OCAML_TRUE@ mkdir -p $(DESTDIR)$(OCAMLLIB)/stublibs
@HAVE_OCAML_TRUE@ $(OCAMLFIND) install \
-@HAVE_OCAML_TRUE@ -ldconf ignore -destdir $(DESTDIR)$(OCAMLLIB) \
+@HAVE_OCAML_TRUE@ -ldconf ignore -destdir $(DESTDIR)$(PREFIX)/$(OCAML_SITELIBDIR) \
@HAVE_OCAML_TRUE@ $(PACKAGE_NAME) \
@HAVE_OCAML_TRUE@ $(install_files)

View file

@ -0,0 +1,15 @@
$NetBSD: patch-perl_Makefile.in,v 1.1 2018/10/04 16:01:40 tnn Exp $
Install as vendor module.
--- perl/Makefile.in.orig 2018-02-26 10:53:35.000000000 +0000
+++ perl/Makefile.in
@@ -1372,7 +1372,7 @@ EXTRA_DIST = \
@HAVE_PERL_TRUE@ MAKE=$(MAKE) \
@HAVE_PERL_TRUE@ ../run
-@HAVE_PERL_TRUE@INSTALLDIRS = site
+@HAVE_PERL_TRUE@INSTALLDIRS = vendor
all: all-am
.SUFFIXES: