Package: hyperestraier
Version: 1.3.5-1
Severity: wishlist
Tags: patch
Upstream provides native Perl bindings by the means of XS.
Attached is a patch that enables the building of a libestraier-perl
package.
Note that it hasn't been heavily tested but the example scripts do work.
Is there a reason why this wasn't enabled in the first place?
Regards,
Faidon
diff -u hyperestraier-1.3.5/debian/rules hyperestraier-1.3.5/debian/rules
--- hyperestraier-1.3.5/debian/rules
+++ hyperestraier-1.3.5/debian/rules
@@ -42,7 +42,7 @@
--includedir=\$${prefix}/include/estraier \
--libexecdir=\$${prefix}/lib/estraier
-BINARY_PKGS = hyperestraier libestraier8 libestraier-dev libestraier-ruby1.8
+BINARY_PKGS = hyperestraier libestraier8 libestraier-dev libestraier-ruby1.8
libestraier-perl
JAVA_UNSUPPORTED_CPUS = zhppaz zmipsz zmipselz
JAVA_UNSUPPORTED_SYSTEMS = zgnuz zkfreebsd-gnuz zknetbsd-gnuz
@@ -62,6 +62,7 @@
--enable-regex
cd rubypure && $(CONFIGURE_VARS) ./configure $(CONFIGURE_SWITCHES)
cd rubynative && $(CONFIGURE_VARS) ./configure $(CONFIGURE_SWITCHES)
+ cd perlnative && $(CONFIGURE_VARS) ./configure $(CONFIGURE_SWITCHES)
ifeq "$(BUILD_JAVA)" "true"
cd javapure && $(CONFIGURE_VARS) ./configure $(CONFIGURE_SWITCHES) \
--libdir=\$${prefix}/share/hyperestraier
@@ -78,6 +79,7 @@
$(MAKE)
$(MAKE) estseek.fcgi
cd rubynative && $(MAKE)
+ cd perlnative && $(MAKE)
ifeq "$(BUILD_JAVA)" "true"
cd javanative && $(MAKE)
endif
@@ -102,6 +104,7 @@
-$(MAKE) distclean
-cd rubypure && $(MAKE) distclean
-cd rubynative && $(MAKE) distclean
+ -cd perlnative && $(MAKE) distclean
-cd javapure && $(MAKE) distclean
-cd javanative && $(MAKE) distclean
ifneq "$(wildcard /usr/share/misc/config.sub)" ""
@@ -139,6 +142,11 @@
#cd rubynative && $(MAKE) install \
# DESTDIR=$(CURDIR)/debian/libestraier-ruby1.8 \
# MYRBLIBDIR=$(RUBYLIBDIR)
+ cd perlnative && $(MAKE) install \
+ DESTDIR=$(CURDIR)/debian/libestraier-perl
+ rm -rf $(CURDIR)/debian/libestraier-perl/usr/share/perl5
+ pod2man --section=3 perlnative/estraier-doc.pod \
+ >
$(CURDIR)/debian/libestraier-perl/usr/share/man/man3/Estraier.3pm
install -m 755 rubynative/estcmd.rb \
$(CURDIR)/debian/libestraier-ruby1.8/usr/bin
install -m 644 rubynative/estraier-doc.rb \
@@ -189,7 +197,7 @@
dh_strip
dh_compress
dh_fixperms
-# dh_perl
+ dh_perl
# dh_python
dh_makeshlibs
dh_installdeb
diff -u hyperestraier-1.3.5/debian/control hyperestraier-1.3.5/debian/control
--- hyperestraier-1.3.5/debian/control
+++ hyperestraier-1.3.5/debian/control
@@ -52,6 +52,15 @@
This package provides the Ruby interface for the Node API for
Hyper Estraier.
+Package: libestraier-perl
+Architecture: any
+Depends: ${shlibs:Depends}, ${perl:Depends}
+Suggests: hyperestraier
+Description: Hyper Estraier Node API Libraries for Perl
+ Hyper Estraier is a full-text search system.
+ This package provides the Perl interface for the Node API for
+ Hyper Estraier.
+
Package: libestraier-java
Architecture: any
Section: libs
--- hyperestraier-1.3.5/perlnative/Makefile.in
+++ hyperestraier-1.3.5/perlnative/Makefile.in
@@ -29,10 +29,10 @@
PERL = @PERL@
POD2HTML = @POD2HTML@
CC = gcc
-INC = -I. -I../.. -I$(HOME)/include -I/usr/local/include
+INC = -I. -I.. -I../.. -I/usr/include/estraier -I/usr/include/qdbm
OPTIMIZE = -O3 -fomit-frame-pointer
LD = ld
-LIBS = -L../.. -L$(HOME)/lib -L/usr/local/lib @LIBS@
+LIBS = -L.. -L../.. -L$(HOME)/lib -L/usr/local/lib -lestraier @LIBS@
RUNENV =
LD_LIBRARY_PATH=.:..:/lib:/usr/lib:$(HOME)/lib:/usr/local/lib:@MYRUNPATH@
@@ -60,7 +60,7 @@
install :
- cd src && $(RUNENV) make install
+ cd src && $(RUNENV) make install_vendor
mkdir -p $(DESTDIR)$(MYPLBINDIR)
cp -Rf $(MYPLBINS) $(DESTDIR)$(MYPLBINDIR)
@printf '\n'
--- hyperestraier-1.3.5/debian/libestraier-perl.dirs
+++ hyperestraier-1.3.5/debian/libestraier-perl.dirs
@@ -0,0 +1,3 @@
+usr/lib/perl5
+usr/share/man/man3
+usr/bin
--- hyperestraier-1.3.5/debian/libestraier-perl.examples
+++ hyperestraier-1.3.5/debian/libestraier-perl.examples
@@ -0,0 +1 @@
+perlnative/example/example*