Bug 157530 - databases/postgresql-pltcl: fails at tmp-creation
Summary: databases/postgresql-pltcl: fails at tmp-creation
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: Palle Girgensohn
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-02 17:40 UTC by Kalten
Modified: 2011-06-03 13:30 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 Kalten 2011-06-02 17:40:09 UTC
There seems to be a little error when updating databases/postgresql-pltcl.

---SCHNIPP---
===>>> Currently installed version: postgresql-pltcl-8.4.7_3
===>>> Port directory: /usr/ports/databases/postgresql-pltcl

===>>> Launching 'make checksum' for databases/postgresql-pltcl in background
===>>> Gathering dependency list for databases/postgresql-pltcl from ports
===>>> Launching child to install databases/postgresql-pltcl/../../databases/postgresql84-server
        postgresql-pltcl-8.4.7_3 >> databases/postgresql-pltcl/../../databases/postgresql84-server

===>>> Port directory: /usr/ports/databases/postgresql-pltcl/../../databases/postgresql84-server

mktemp: mkstemp failed on /usr/tmp/f-239-postgresql-8.4.8.tar.bz2-postgresql-pltcl/../../databases/postgresql84-server.FM9wWYao: No such file or directory

===>>> Update for databases/postgresql-pltcl/../../databases/postgresql84-server failed
===>>> Aborting update
---schnapp---

How-To-Repeat: cd /usr/ports/
portmaster -D databases/postgresql-pltcl
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2011-06-02 17:40:19 UTC
Responsible Changed
From-To: freebsd-ports-bugs->girgen

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 Kalten 2011-06-02 18:54:18 UTC
Hello!

Here is a dirty hack:

One problem is, that slave-ports seem not to execute files/patch-*
patches.
So I did apply them manually in the pre-patch hook (not post-patch as
that one happens to be in use by the master port already and leads to
a warning). (The patch is very similar to that in
databases/postgresql84-server/files/patch-src-backend-Makefile ).

Furthermore it did not find its pkg-descr any more and abort with an
error, so I had to hack that too. (see ``DESCR'')

And there is still some problem with the distfiles.
---SCHNIPP---
===>   Registering installation for postgresql-pltcl-8.4.8_3
grep: databases/postgresql84-server/distinfo: No such file or directory
grep: databases/postgresql84-server/distinfo: No such file or directory
===>  Cleaning for postgresql-pltcl-8.4.8_3
---schnapp---

As there had not been any file in files/, one has to call
``patch -p < patch.txt''! (don't forget the ``-p''-switch)

Regards,
 Kalten

--- patch.txt begins here ---
--- Makefile.orig	2010-08-30 22:42:23.000000000 +0200
+++ Makefile	2011-06-02 19:44:51.000000000 +0200
@@ -13,7 +13,9 @@
 MAINTAINER=	girgen@FreeBSD.org
 COMMENT=	A module for using Tcl to write SQL functions
 
-MASTERDIR=	${.CURDIR}/../../databases/postgresql${PGSQL_VER}-server
+DESCR = ${.CURDIR}/pkg-descr
+
+MASTERDIR=	databases/postgresql${PGSQL_VER}-server
 
 RUN_DEPENDS=	postgres:${MASTERDIR}
 
@@ -45,4 +47,11 @@
 BUILD_DIRS=	src/pl/tcl
 SLAVE_ONLY=	yes
 
-.include "${MASTERDIR}/Makefile"
+# post-patch allready used by masterport, and patch in slaveport not automatically executed:
+pre-patch:
+	@cd ${WRKDIR}/${PORTNAME}-* && \
+	for PATCH in ../../files/patch-*; do \
+	 patch < "$${PATCH}"; \
+	done
+
+.include "../../${MASTERDIR}/Makefile"
--- /dev/null	2011-06-02 19:45:23.000000000 +0200
+++ files/patch-src-backend-Makefile	2011-06-02 19:32:56.000000000 +0200
@@ -0,0 +1,10 @@
+--- src/backend/Makefile.orig	2011-04-15 05:17:14.000000000 +0200
++++ src/backend/Makefile	2011-06-02 19:06:03.000000000 +0200
+@@ -113,6 +113,7 @@
+ # Update the commonly used headers before building the subdirectories
+ $(SUBDIRS:%=%-recursive): $(top_builddir)/src/include/parser/gram.h $(top_builddir)/src/include/utils/fmgroids.h $(top_builddir)/src/include/utils/probes.h
+ 
++symlinks: $(top_builddir)/src/include/parser/gram.h $(top_builddir)/src/include/utils/fmgroids.h $(top_builddir)/src/include/utils/probes.h
+ 
+ # The postgres.o target is needed by the rule in Makefile.global that
+ # creates the exports file when MAKE_EXPORTS = true.
--- patch.txt ends here ---
Comment 3 Palle Girgensohn freebsd_committer freebsd_triage 2011-06-03 09:50:48 UTC
It seems it is portmaster that can't cope with MASTERDIR

cd /usr/ports/databases/postgresql-pltcl 
make install

works fine
Comment 4 dfilter service freebsd_committer freebsd_triage 2011-06-03 11:00:33 UTC
girgen      2011-06-03 10:00:18 UTC

  FreeBSD ports repository

  Modified files:
    databases/postgresql-pltcl Makefile 
  Log:
  Fix bug that made portmaster fail
  
  PR: ports/157530
  
  Revision  Changes    Path
  1.23      +3 -1      ports/databases/postgresql-pltcl/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 5 Palle Girgensohn freebsd_committer freebsd_triage 2011-06-03 11:00:41 UTC
State Changed
From-To: open->closed

Fixed the problem by setting RUN_DEPENDS to a path without '/../'
Comment 6 Kalten 2011-06-03 13:09:17 UTC
Hello Palle!

> It seems it is portmaster that can't cope with MASTERDIR
> cd /usr/ports/databases/postgresql-pltcl 
> make install
> works fine
It does.  At least with the new version 1.23 (8.3.15_3).

But the problem remains with your new version:
cd /usr/ports/
portmaster -D databases/postgresql-pltcl

leads to:
--------------------------------------------------------------------------------
===>>> Currently installed version: postgresql-pltcl-8.4.8_3
===>>> Port directory: /usr/ports/databases/postgresql-pltcl

===>>> Launching 'make checksum' for databases/postgresql-pltcl in background
===>>> Gathering dependency list for databases/postgresql-pltcl from ports
===>>> Launching child to install databases/postgresql-pltcl/../../databases/postgresql84-server
        postgresql-pltcl-8.4.8_3 >> databases/postgresql-pltcl/../../databases/postgresql84-server

===>>> Port directory: /usr/ports/databases/postgresql-pltcl/../../databases/postgresql84-server

mktemp: mkstemp failed on /usr/tmp/f-20496-postgresql-8.4.8.tar.bz2-postgresql-pltcl/../../databases/postgresql84-server.a6bF9Tcf: No such file or directory

===>>> Update for databases/postgresql-pltcl/../../databases/postgresql84-server failed
===>>> Aborting update
--------------------------------------------------------------------------------
(Note:
/usr/tmp/f-20496-postgresql-8.4.8.tar.bz2-postgresql-pltcl/../../databases/postgresql84-server.a6bF9Tcf
would be /usr/databases/postgresql84-server.a6bF9Tcf missing, at least, some
``tmp'' after ``/usr/'')

So your correction did not solve the problem with portmaster.
I suppose you should use the patch for the Makefile and the
files/patch-src-backend-Makefile from patch.txt (earlier) in addition to
your other changes.

This matter is---as I do fear---definitely not closed yet :-(

Regards,
 Kalten
Comment 7 Kalten 2011-06-03 13:22:03 UTC
Hello again, Palle!

I am terribly sorry, but those port-numbers did confuse me (8.3.15_3
according to www.freshports.org, but 8.4.8_3 according to compilation
for the older version as well as for the new version!), and I did not
notice, that cvsup.at.FreeBSD.org had not updated this port yet.
Used tarball from freshports now (as cvsup.FreeBSD.org has timeout since
at least two days here), all OK.

Sorry once again!

Regards,
 Kalten