Traversing the source directories

Craig Treleaven ctreleaven at cogeco.ca
Sun Apr 1 18:17:26 PDT 2012


Hi:

I'm experiencing a weird error--neither fs_traverse or system "find . 
blah" will consistently walk through _all_ of the directories in the 
source of the port.

Background:  for reasons unknown, I'm getting Makefiles that include 
-L<blank> in the LIBS = line.  There are 78 Makefiles and the 
expedient thing to do is find them all and strip out the bad bits.  I 
ran the port configure step (this patching is done post-configure) 
and it took MANY tries to finally get all 78 Makefiles searched and 
patched.  Many times, it was apparent that _some_ of the Makefiles 
had been patched; but not all.  I thought it was my inexperience with 
tcl so I gave up on fs_traverse.  Once or twice, it seemed "find . 
-name "Makefile" -exec sed -i '' 's/ -L / /g' {} \;" _also_ stopped 
midway but then it worked.  I thought I'd found the magic formula.

Shortly after I achieved my first successful build of MythTV doing it 
step by step.  (Port fetch ... port install.)  I wanted to start 
fresh so I uninstalled and did a port clean then kicked off a port 
install.  The portfile and the debug log are linked below.

http://dl.dropbox.com/u/26787680/Portfile.2012Apr01
http://dl.dropbox.com/u/26787680/Post_configure%20error%202012Apr01.txt

The find command then quit after finding 22 of the 78 Makefiles. 
(Because of the problems I've been having, I print them out to the 
log first and then patch them all.)  Of course, linking then fell 
over after receiving one of the blasted -L<blank>s that it hates so 
much.

Is it possible that some of the Makefiles are still in use/open for 
access when this command is running and that is causing fs_traverse 
and/or find to silently give up the search?  Or something else? 
Should I do this step pre-build for some reason?

Any help gratefully accepted.

Craig


More information about the macports-dev mailing list