Skip site navigation (1)Skip section navigation (2)
Date:      Sun,  3 Mar 2013 17:12:42 +0100 (CET)
From:      Thomas Quinot <thomas@frebsd.org>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/176618: Suuport for lj.so plugin
Message-ID:  <20130303161242.8293E187F5@melamine.cuivre.fr.eu.org>
Resent-Message-ID: <201303031620.r23GK23B025961@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>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@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@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:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130303161242.8293E187F5>