ports/176618: Suuport for lj.so plugin
Thomas Quinot
thomas at frebsd.org
Sun Mar 3 16:20:02 UTC 2013
>Number: 176618
>Category: ports
>Synopsis: Suuport for lj.so plugin
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Sun Mar 03 16:20:01 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator: Thomas Quinot
>Release: FreeBSD 8.3-STABLE amd64
>Organization:
>Environment:
System: FreeBSD melamine.cuivre.fr.eu.org 8.3-STABLE FreeBSD 8.3-STABLE #4: Sat Jul 14 15:27:47 CEST 2012 thomas at melamine.cuivre.fr.eu.org:/usr/obj/usr/src/sys/GENERIC amd64
>Description:
This is a proposal to introduce a change in the hpijs driver
to allow loading a binary-only plugin provided by HP allowing
to print to a variety of consumer-grade printers.
The plugin is a Linux shared object, but it depends on few enough
interfaces that it can actually run unmodified on a FreeBSD system,
provided that symbol "stderr" is made available.
>How-To-Repeat:
>Fix:
Add the following patch to port print/hplib:
diff -ru hplip-3.11.12.DIST/Makefile.in hplip-3.11.12/Makefile.in
--- Makefile.in 2011-12-09 12:23:55.000000000 +0100
+++ Makefile.in 2011-12-30 16:28:26.255313535 +0100
@@ -503,7 +503,7 @@
@HPIJS_INSTALL_TRUE@@HPLIP_BUILD_TRUE@ $(am__DEPENDENCIES_1)
hpijs_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CXXLD) $(hpijs_CXXFLAGS) $(CXXFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
+ $(AM_LDFLAGS) $(LDFLAGS) -Wl,--export-dynamic -o $@
am__hplipjs_SOURCES_DIST = prnt/filters/hplipjs.c
@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE at am_hplipjs_OBJECTS = \
@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@ hplipjs.$(OBJEXT)
Only in hplip-3.11.12: dd
diff -ru hplip-3.11.12.DIST/prnt/hpijs/hpijs.cpp hplip-3.11.12/prnt/hpijs/hpijs.cpp
--- prnt/hpijs/hpijs.cpp 2011-12-09 12:18:33.000000000 +0100
+++ prnt/hpijs/hpijs.cpp 2011-12-30 16:27:10.976752128 +0100
@@ -43,6 +43,9 @@
#include "hpijs.h"
#include "services.h"
+#undef stderr;
+FILE *stderr;
+
extern void SendDbusMessage (const char *dev, const char *printer, int code,
const char *username, const int jobid, const char *title);
@@ -586,6 +589,7 @@
int status = EXIT_FAILURE;
int ret, n, i, kn=0, width, k_width;
+ stderr = __stderrp;
openlog("hpijs", LOG_PID, LOG_DAEMON);
if (argc > 1)
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list