INDEX build failed

Oliver Eikemeier eikemeier at fillmore-labs.com
Tue Sep 30 14:19:30 PDT 2003


Kris Kennaway wrote:

> On Tue, Sep 30, 2003 at 03:21:12PM -0400, Charles Swiger wrote:
> 
>>On Monday, September 29, 2003, at 11:53 PM, Joe Marcus Clarke wrote:
>>
>>>>>Did someone add a port called 'clean' or something?
>>>>
>>>>*looking suspiciously at edwin*
>>>
>>>Good look :-).
>>>
>>>[ 16:23 edwin ] Original commit
>>>clean 3.2 sysutils
>>>       New port: sysutils/clean; automatically remove unwanted files
>>>
>>>               New port: clean searches through the filesystem for 
>>>"temporary
>>>               files" left behind by editors and the like which can be
>>>               deleted.  The pattern of regular expressions is 
>>>controllable
>>>               via a ~/.cleanrc.
>>>
>>>       PR:             ports/52881
>>>       Submitted by:   Chuck Swiger <chuck at pkix.net>
>>
>>/usr/ports/devel/patch doesn't seem to conflict with the existence of a 
>>"make patch" target; I don't believe that the ports system should 
>>forbid a port named "clean", or "install", if /usr/bin/install was a 
>>port rather than part of the base system.
> 
> The reason is that the patch target is not used by bsd.port.subdir.mk,
> but the others are, and that file also defines targets for each entry
> in SUBDIR.  Both of these features are in use by the ports collection,
> so neither can simply be removed.
> 
>>Should the port be renamed?
> 
> It looks like that's the only way to handle it.

How about something like:

--- bsd.port.subdir.mk.patch begins here ---
diff -u -r1.49 bsd.port.subdir.mk
--- bsd.port.subdir.mk	6 Jul 2003 23:57:41 -0000	1.49
+++ bsd.port.subdir.mk	30 Sep 2003 20:59:38 -0000
@@ -99,7 +99,7 @@
 .for __target in ${TARGETS}
 .if !target(${__target})
 .if defined(SUBDIR) && !empty(SUBDIR)
-${__target}: ${SUBDIR:S/$/.${__target}/}
+${__target}: ${SUBDIR:S/^/_/:S/$/.${__target}/}
 .else
 ${__target}:
 .endif
@@ -109,18 +109,18 @@
 .if defined(SUBDIR) && !empty(SUBDIR)
 
 .for __target in ${TARGETS} checksubdirs readmes
-${SUBDIR:S/$/.${__target}/}: _SUBDIRUSE
+${SUBDIR:S/^/_/:S/$/.${__target}/}: _SUBDIRUSE
 .endfor
 
 _SUBDIRUSE: .USE
-	@OK=""; sub=${.TARGET:R}; \
+	@OK=""; sub=${.TARGET:S/^_//:R}; \
 	for dud in $$DUDS; do \
 		if [ $${dud} = $$sub ]; then \
 			OK="false"; \
 			${ECHO_MSG} "===> ${DIRPRFX}$$sub skipped"; \
 		fi; \
 	done; \
-	if test -d ${.CURDIR}/${.TARGET:R}.${MACHINE_ARCH}; then \
+	if test -d ${.CURDIR}/${sub}.${MACHINE_ARCH}; then \
 		edir=$${sub}.${MACHINE_ARCH}; \
 	elif test -d ${.CURDIR}/$${sub}; then \
 		edir=$${sub}; \
@@ -135,7 +135,7 @@
 			DIRPRFX=${DIRPRFX}$$edir/; \
 	fi
 
-.for _subdir in ${SUBDIR}
+.for _subdir in ${SUBDIR:S/^/_/}
 ${_subdir}::   ${_subdir:S/$/.all/}
 .endfor
 
@@ -150,14 +150,14 @@
 .endif
 install: afterinstall
 afterinstall: realinstall
-realinstall: beforeinstall ${SUBDIR:S/$/.realinstall/}
+realinstall: beforeinstall ${SUBDIR:S/^/_/:S/$/.realinstall/}
 .endif
 
 IGNOREDIR=	CVS Mk Templates Tools distfiles packages pkg
 
 .if !target(checksubdirs)
 .if defined(PORTSTOP)
-checksubdirs: checksubdir ${SUBDIR:S/$/.checksubdirs/}
+checksubdirs: checksubdir ${SUBDIR:S/^/_/:S/$/.checksubdirs/}
 .else
 checksubdirs: checksubdir
 .endif
@@ -187,7 +187,7 @@
 .endif
 
 .if !target(readmes)
-readmes: readme ${SUBDIR:S/$/.readmes/}
+readmes: readme ${SUBDIR:S/^/_/:S/$/.readmes/}
 .endif
 
 .if !target(readme)
--- bsd.port.subdir.mk.patch ends here ---

It's a quick hack and needs review, but it is a start and build the INDEX:

# awk '/^clean-[0-9._,]+\|/ { print }' INDEX
clean-3.2|/usr/ports/sysutils/clean|/usr/local|Automatically remove unwanted files|/usr/ports/sysutils/clean/pkg-descr|chuck at pkix.net|sysutils|||http://sourceforge.net/projects/clean




More information about the freebsd-ports mailing list