ports/173573: [patch] editors/semi does not build if WRKDIRPREFIX is set

Joel Ray Holveck joelh at piquan.org
Mon Nov 12 04:30:01 UTC 2012


>Number:         173573
>Category:       ports
>Synopsis:       [patch] editors/semi does not build if WRKDIRPREFIX is set
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Nov 12 04:30:00 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Joel Ray Holveck <joelh at piquan.org>
>Release:        FreeBSD 8.3-STABLE i386
>Organization:
>Environment:
System: FreeBSD thor.piquan.org 8.3-STABLE FreeBSD 8.3-STABLE #1: Mon May 7 13:22:03 PDT 2012 root at thor.piquan.org:/usr/obj/usr/src/sys/THOR i386


Ports tree as of Nov 9 15:43
>Description:
If WRKDIRPREFIX is set, editors/semi will not build.

In several places, the port's Makefile will run "${MAKE} some-target"
where some-target is defined in the Makefile.  When these commands are
run, the current directory will be OBJDIR (e.g.,
/path/to/objs/usr/ports/editors/semi).  Since there's no Makefile in
there, the submake will fail.

>How-To-Repeat:
mkdir -p /usr/obj
echo WRKDIRPREFIX=/usr/obj >> /etc/make.conf
cd /usr/ports/editors/semi
make

>Fix:
Call ${MAKE} with the -C flag.  Patch follows.

--- editors/semi/Makefile.orig	2012-11-11 20:17:12.000000000 -0800
+++ editors/semi/Makefile	2012-11-11 20:19:07.000000000 -0800
@@ -74,35 +74,35 @@
 
 pre-build:
 .if defined(EMACS_PACKAGESDIR) && defined(XEMACS_PKGNAME)
-	@${MAKE} pkg-el-copy
+	@${MAKE} -C ${.CURDIR} pkg-el-copy
 .endif
 
 post-build:
 .if defined(BUILD_INFO_BY_EMACS) && (${BUILD_INFO_BY_EMACS} == "YES")
-	@${MAKE} info-build-by-emacs
+	@${MAKE} -C ${.CURDIR} info-build-by-emacs
 .else
-	@${MAKE} info-build
+	@${MAKE} -C ${.CURDIR} info-build
 .endif
 
 pre-install:
 .if defined(EMACS_PACKAGESDIR) && defined(EMACS_PACKAGES_SUBDIRS)
-	@${MAKE} mkdir-site-packages
+	@${MAKE} -C ${.CURDIR} mkdir-site-packages
 .endif
 .if defined(EMACS_PACKAGESDIR) && defined(XEMACS_PKGNAME)
-	@${MAKE} pkg-el-install
+	@${MAKE} -C ${.CURDIR} pkg-el-install
 .endif
 
 post-install:
 	@${MKDIR} ${LOCALBASE}/share/semi
 	@${TOUCH} ${LOCALBASE}/share/semi/${SEMI_COOKIE}
 .if defined(EMACS_PACKAGESDIR) && defined(MANIFEST)
-	@${MAKE} info-package-install
-	@${MAKE} manifest-install
+	@${MAKE} -C ${.CURDIR} info-package-install
+	@${MAKE} -C ${.CURDIR} manifest-install
 .else
-	@${MAKE} info-install
+	@${MAKE} -C ${.CURDIR} info-install
 .endif
 .if !defined(NOPORTDOCS)
-	@${MAKE} doc-install
+	@${MAKE} -C ${.CURDIR} doc-install
 .endif
 
 ###############################################################################


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-ports-bugs mailing list