Bug 140088 - x11/kdelibs3: error creating package - postscript.ppd.gz not found
Summary: x11/kdelibs3: error creating package - postscript.ppd.gz not found
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-kde (group)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-10-29 17:30 UTC by Bengt Ahlgren
Modified: 2009-12-01 22:20 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bengt Ahlgren 2009-10-29 17:30:01 UTC
I am doing a fresh install of 7.2-REL together with the RELEASE_8_0_0
ports tree.  I should also say that I have WITH_CUPS defined in
/etc/make.conf, but I am uncertain whether that makes a difference.

When trying to build a package for x11/kdelibs3, I get this error:

----------
Creating bzip'd tar ball in '/usr/ports/packages/All/kdelibs-3.5.10_2.tbz'
tar: share/cups/model/postscript.ppd.gz: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors.
pkg_create: make_dist: tar command failed with code 256
*** Error code 1

Stop in /usr/ports/x11/kdelibs3.
----------

There is not even a directory /usr/local/share/cups, because
print/cups-base is not installed.

Fix: 

The Makefile for x11/kdelibs3 has an incorrect dependency
specification:

LIB_DEPENDS+=	cups:${PORTSDIR}/print/cups-base

The library is now in print/cups-client.  The library was present, so
print/cups-base was never installed, and thus no share/cups directory
to install postscript.ppd.gz in.

Since the cups library is in cups-client, the dependency above should
be:

LIB_DEPENDS+=	cups:${PORTSDIR}/print/cups-client

But that does not solve the original problem.  A new dependency on
print/cups-base has to be added so that the directory
/usr/local/share/cups/model is created, and kdelibs3 can install
postscript.ppd.gz.  Perhaps:

BUILD_DEPENDS+=	${LOCALBASE}/share/cups/model:${PORTSDIR}/print/cups-base

or should it be a RUN_DEPENDS? The directory needs to be there at
install time.
How-To-Repeat: 1. Start with empty /usr/local
2. cd /usr/ports/x11/kdelibs3
3. make package
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2009-10-29 17:30:12 UTC
Responsible Changed
From-To: freebsd-ports-bugs->kde

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 Bengt Ahlgren 2009-11-13 18:34:31 UTC
FreeBSD-gnats-submit@FreeBSD.org writes:

[...]

> http://www.freebsd.org/cgi/query-pr.cgi?pr=140088
>
>>Category:       ports
>>Responsible:    freebsd-ports-bugs
>>Synopsis:       x11/kdelibs3: error creating package - postscript.ppd.gz not found
>>Arrival-Date:   Thu Oct 29 17:30:01 UTC 2009

May I ask the CUPS maintainer to provide advice on how to properly
depend on CUPS?  The problem the PR refers to should be very simple to
fix!

Bengt
Comment 3 Dirk Meyer freebsd_committer freebsd_triage 2009-11-14 06:49:17 UTC
Responsible Changed
From-To: kde->dinoex

I will take care of it.
Comment 4 Dirk Meyer freebsd_committer freebsd_triage 2009-11-14 08:39:22 UTC
State Changed
From-To: open->feedback


I can not reproduce your problem. 

check yopur ports tree. 
The Version I tested with is: 
# $FreeBSD: ports/x11/kdelibs3/Makefile,v 1.234 2009/08/12 17:36:00 makc Exp $ 

grep cups logfile 
===>   kdelibs-3.5.10_2 depends on shared library: cups - found 
/usr/bin/sed -i.bak "s,%%LOCALBASE%%,/usr/local,g" /data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups/kmcupsmanager.cpp 
/usr/bin/sed -i.bak -e "s,ac_cups_share_test=.*,ac_cups_share_test=`$kde_cups_config --datadir`,g"  -e "s,pcreposix.h,pcre.h,g" /data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/configure 
checking for cups-config... /usr/local/bin/cups-config 
checking for cupsServer in -lcups... yes 
checking cups/cups.h usability... yes 
checking cups/cups.h presence... yes 
checking for cups/cups.h... yes 
config.status: creating kdeprint/cups/Makefile 
config.status: creating kdeprint/cups/cupsdconf2/Makefile 
Making all in cups 
gmake[3]: Entering directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups' 
Making all in cupsdconf2 
gmake[4]: Entering directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups/cupsdconf2' 
echo '#include <kdemacros.h>' > cupsdconf_dummy.cpp;  
echo 'extern "C" int kdemain(int argc, char* argv[]);' >> cupsdconf_dummy.cpp;  
echo 'extern "C" KDE_EXPORT int kdeinitmain(int argc, char* argv[]) { return kdemain(argc,argv); }' >> cupsdconf_dummy.cpp 
[...] 
cupsdoprint.c: In function 'main': 
cupsdoprint.c:246: warning: passing argument 3 of 'cupsPrintFiles' from incompatible pointer type 
mv -f .deps/cupsdoprint.Tpo .deps/cupsdoprint.Po 
/bin/sh /usr/local/bin/libtool --silent --tag=CC   --mode=link cc  -DNDEBUG -O2  -O -pipe -march=pentiumpro -L/usr/local/lib -L/usr/local/lib   -D_THREAD_SAFE -pthread  -L/usr/local/lib -rpath=/usr/lib:/usr/local/lib -o cupsdoprint cupsdoprint.o -lcups -lz -pthread -lm -lcrypt ../../kdecore/libkdefakes.la -Wl,-export-dynamic -L/usr/local/lib -ljpeg  -L/usr/local/lib 
gmake[4]: Leaving directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups' 
gmake[3]: Leaving directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups' 
Making install in cups 
gmake[2]: Entering directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups' 
Making install in cupsdconf2 
gmake[3]: Entering directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups/cupsdconf2' 
gmake[4]: Entering directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups/cupsdconf2' 
/bin/sh /usr/local/bin/libtool --silent   --mode=install /usr/bin/install -c -o root -g wheel  'libkdeinit_cupsdconf.la' '/usr/local/lib/libkdeinit_cupsdconf.la' 
libtool: install: warning: relinking `libkdeinit_cupsdconf.la' 
/bin/sh /usr/local/bin/libtool --silent   --mode=install install -c -p -s -o root -g wheel -m 555 'cupsdconf' '/usr/local/bin/cupsdconf' 
install -c -p -o root -g wheel -m 444 'cups_logo.png' '/usr/local/share/apps/kdeprint/cups_logo.png' 
install -c -p -o root -g wheel -m 444 'cupsd.conf.template' '/usr/local/share/apps/kdeprint/cupsd.conf.template' 
/bin/sh /usr/local/bin/libtool --silent   --mode=install /usr/bin/install -c -o root -g wheel  'cupsdconf.la' '/usr/local/lib/kde3/cupsdconf.la' 
libtool: install: warning: relinking `cupsdconf.la' 
gmake[4]: Leaving directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups/cupsdconf2' 
gmake[3]: Leaving directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups/cupsdconf2' 
gmake[3]: Entering directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups' 
gmake[4]: Entering directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups' 
/bin/sh /usr/local/bin/libtool --silent   --mode=install install -c -p -s -o root -g wheel -m 555 'make_driver_db_cups' '/usr/local/bin/make_driver_db_cups' 
/bin/sh /usr/local/bin/libtool --silent   --mode=install install -c -p -s -o root -g wheel -m 555 'cupsdoprint' '/usr/local/bin/cupsdoprint' 
/bin/sh /usr/local/bin/libtool --silent   --mode=install /usr/bin/install -c -o root -g wheel  'kdeprint_cups.la' '/usr/local/lib/kde3/kdeprint_cups.la' 
libtool: install: warning: relinking `kdeprint_cups.la' 
if test -n "/usr/local/share/cups/model"; then  
install -c -p -o root -g wheel -m 444 ./postscript.ppd.gz /usr/local/share/cups/model/postscript.ppd.gz || true ; 
install -c -p -o root -g wheel -m 444 'cups.print' '/usr/local/share/apps/kdeprint/plugins/cups.print' 
gmake[4]: Leaving directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups' 
gmake[3]: Leaving directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups' 
gmake[2]: Leaving directory `/data/image/usr/ports/x11/kdelibs3/work/kdelibs-3.5.10/kdeprint/cups' 
Registering depends: arts-1.5.10_2,1 gamin-0.1.10_3 gettext-0.17_1 libthai-0.1.5_3 pcre-7.9 libidn-1.14 OpenEXR-1.6.1_2 jasper-1.900.1_8 libart_lgpl-2.3.20,1 tiff-3.9.1 hicolor-icon-theme-0.10_2 kdehier-1.0_11 mDNSResponder-108 cups-base-1.3.10_4 aspell-0.60.6_2 libxslt-1.1.26 libxml2-2.7.5 xorg-fonts-truetype-7.4 encodings-1.0.2,1 qt-3.3.8_10 iceauth-1.0.2. 
Registering conflicts: kdeadmin-3.[0-3].* kdeadmin-3.4.[0-1]* kdeartwork-3.[2-3]* kdebase-3.[0-4]* kdepim-3.2* kdelibs-nocups-[0-9]*.
Comment 5 dirk.meyer 2009-11-18 06:11:42 UTC
Please try this patch:

Index: Makefile
===================================================================
RCS file: /home/pcvs/ports/x11/kdelibs3/Makefile,v
retrieving revision 1.234
diff -u -r1.234 Makefile
--- Makefile	12 Aug 2009 17:36:00 -0000	1.234
+++ Makefile	18 Nov 2009 06:09:40 -0000
@@ -45,7 +45,9 @@
 PLIST=		${.CURDIR}/../kdelibs3-nocups/pkg-plist
 .else
 CONFLICTS+=	kdelibs-nocups-[0-9]*
-LIB_DEPENDS+=	cups:${PORTSDIR}/print/cups-base
+LIB_DEPENDS+=	cups:${PORTSDIR}/print/cups-client
+BUILD_DEPENDS+=	cupsd:${PORTSDIR}/print/cups-base
+RUN_DEPENDS+=	cupsd:${PORTSDIR}/print/cups-base
 .endif
 
 USE_BZIP2=	yes

===================================================================
Comment 6 Dirk Meyer freebsd_committer freebsd_triage 2009-11-29 08:02:30 UTC
Responsible Changed
From-To: dinoex->kde

Over to maintainer foor approval
Comment 7 dfilter service freebsd_committer freebsd_triage 2009-12-01 22:18:07 UTC
makc        2009-12-01 22:17:52 UTC

  FreeBSD ports repository

  Modified files:
    x11/kdelibs3         Makefile 
  Log:
  Fix dependencies on print/cups-*
  Does not affect package, so don't bump PORTREVISION.
  
  PR:             ports/140088
  Reported by:    Bengt Ahlgren <bengta at sics.se>
  Fixed by:       dinoex
  
  Revision  Changes    Path
  1.235     +4 -2      ports/x11/kdelibs3/Makefile
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
Comment 8 Max Brazhnikov freebsd_committer freebsd_triage 2009-12-01 22:18:54 UTC
State Changed
From-To: feedback->closed

Fixed, thanks!