[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Debian patches for pxljr



Le mardi, 20 septembre 2011 18.56:13, Hin-Tak Leung a écrit :
> If you want it to work that way, please supply a proper autoconf/automake
> patch whereby it would work if system libijs or lib ijs-header is not
> present.
> 
> Thanks.

Hi Hin-Tak, and thanks for your fast answer!

What do you think about the attached patch (to be applied on top of
pxljr-1.3.tar.gz [0])? As far as I could test, it has zero-impact on the
standard compilation and adds a --enable-system-ijs configure flag to disable
the build of the complete ijs source and link against the system-wide
installed libijs, using its pkg-config files.

With that patch applied, we could avoid the repack on our side and ship the
untouched pxljr tarball.

Cheers,

OdyX

[0] http://sourceforge.net/projects/hp-pxl-jetready/files/hp-pxl-jetready/1.3/pxljr-1.3.tar.gz
Description: Add --enable-system-ijs to link against the system libijs
 instead of the embedded version.
Author: Didier Raboud <odyx@debian.org>
Last-Update: 2011-09-21
--- a/configure.ac
+++ b/configure.ac
@@ -55,6 +55,17 @@
 AC_CONFIG_SRCDIR(ijs.c)
 AC_REVISION($Revision: 1.1 $)
 
+AC_ARG_ENABLE([system-ijs],
+	AS_HELP_STRING([--enable-system-ijs], [Use the system libijs instead of the embedded version.]),
+	[systemijs=yes],
+	[systemijs=no])
+
+AM_CONDITIONAL(SYSTEM_IJS, test "x$systemijs" != xno)
+
+if test "x$systemijs" != xno; then
+	PKG_CHECK_MODULES([IJS],[ijs >= IJS_VERSION])
+fi
+
 dnl In the following script, there are a the following variants
 dnl of ijs cflags and libs variables
 dnl
--- a/Makefile.am
+++ b/Makefile.am
@@ -36,6 +36,9 @@
 m4datadir = $(datadir)/aclocal
 pkgconfigdatadir = $(prefix)/lib/pkgconfig
 
+if SYSTEM_IJS
+bin_PROGRAMS = ijs_pxljr
+else
 lib_LTLIBRARIES = libijs.la
 
 pkginclude_HEADERS = \
@@ -68,6 +71,7 @@
 #libijs_la_LDFLAGS = \
 # -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
 # -rpath $(libdir)
+endif
 
 
 #ijs_client_example_SOURCES = ijs_client_example.c
@@ -79,6 +83,10 @@
 ijs_pxljr_SOURCES = i_job_footer.c  i_job_header.c i_page_footer.c  i_page_header.c  i_status.c i_stripe.c \
 	 i_write.c i_main.c i_init.c i_exit.c jdatadbf.c i_compress.c pxl_jpeg.c jccolor.c \
 	mode12gray.c mode12color.c pxl_mediasize.c
+if SYSTEM_IJS
+ijs_pxljr_LDADD = -lijs -ljpeg
+ijs_pxljr_CPPFLAGS = -I/usr/include/ijs
+else
 ijs_pxljr_LDADD = libijs.la -ljpeg
 
 ## Data
@@ -109,6 +117,7 @@
 
 # Note that ijs_spec.pdf is included in the dist list above,
 # so the 'doc' target needs to be build for 'make dist' to work.
+endif
 
 ## Clean
 

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: