Landon Fuller | 1 Apr 2007 03:31
Favicon

Re: Hacking in Universal -- Don't!


On Mar 31, 2007, at 2:38 PM, Jordan K. Hubbard wrote:

> Which private API are you referring to?
>
> I know that the port was *broken* until I changed it to use the  
> right command API, but that had nothing to do with building  
> universal, that was a very hacky way of building the static archive.

http://trac.macports.org/projects/macports/changeset/22776

Specifically, the use of "command" -- which is undocumented and  
subject to change (it changed, as you noted when you fixed the port).

The static library support someone added some time ago was also  
pretty nasty, no doubt about that.

I implemented a two-line patch to clean up the static library  
building, and pipping implemented a similar patch for Universal. The  
port practically gleams, now:
	http://trac.macports.org/projects/macports/browser/trunk/dports/ 
archivers/zlib/Portfile?rev=23429

Of course, it'd be nice to be able to use variant universal { }  
instead of variant_isset, but you can't have everything.

-landonf

(Continue reading)

Greg | 1 Apr 2007 03:47

Cached configure?

Hi, I was wondering if there is a way to force ports to use the -C  
option when running configure.  It would speed up the compilation  
process a whole lot, and there's no reason for configure to run the  
same tests over and over, especially during the installing of a  
single port.

Thanks,

- Greg
Yves de Champlain | 1 Apr 2007 05:53
Favicon

replace reinplace

Hi

Any reason reinplace does not call sed with -E (extended grep  
patterns) ?

yves

Vincent Lefevre | 1 Apr 2007 06:05

Re: lynx port

On 2007-03-31 03:34:50 -0500, Ryan Schmidt wrote:
>  With CFLAGS, LDFLAGS and friends, we have to be careful not to
>  overwrite but merely to append, in case some things are already
>  defined in those variables. For example, CFLAGS by default includes
>  -O2; if we overwrite CFLAGS we've just dropped optimization back to
>  -O0, which may not have been intended.

Another problem is that flags can be appended in an incorrect order.
When using CPATH and LIBRARY_PATH at the MacPorts level, one makes
sure that particular port settings have the precedence over the
system (here MacPorts) settings.

>  Do we have the same problem with CPATH and LIBRARY_PATH, or can I
>  assume that they are empty to begin with and just set them to what
>  I want?

The port command *must* override the values of these variables. As
they are environment variables, they may contain values set up by
the user for his own use when port is executed. And these values
can conflict with MacPorts.

BTW, there can be problems with software that uses pkg-config when
there are conflicting paths. You'll have to check xrender installation
in particular (and fix its Portfile if need be), since I had problems
in the past:

  http://trac.macosforge.org/projects/macports/ticket/5165

If I understand correctly, for this particular software, one needs to
give -I/opt/local/include explicitly *before* -I/usr/X11R6/include.
(Continue reading)

Ryan Schmidt | 1 Apr 2007 08:03
Favicon

Re: replace reinplace


On Mar 31, 2007, at 22:53, Yves de Champlain wrote:

> Any reason reinplace does not call sed with -E (extended grep  
> patterns) ?

Wouldn't most of the existing invocations of reinplace break if we  
change that now?

Cédric Luthi | 1 Apr 2007 09:02
Picon

Re: replace reinplace

On 1 avr. 07, at 08:03, Ryan Schmidt wrote:

> Wouldn't most of the existing invocations of reinplace break if we  
> change that now?

I'd say no. Replacing sed -E by sed would break all those who  
actually use extended syntax but probably not the other way round. I  
don't think there are non-extended expressions that would fail as an  
extended expressions.

Cédric

Randall Wood | 1 Apr 2007 11:53
Picon

Bad Portfiles

Commiters:

Pay attention to emails from source_changes@... with subject  
[xxxxx] trunk/dports/PortIndex!

Here's the log message from the most recent one:

Log Message

Total number of ports parsed:	3845
Ports successfully parsed:	3843	
Ports failed:			2

Failed to parse file archivers/zlib/Portfile: invalid command name  
"configure.universal_args"
Failed to parse file sysutils/passogva/Portfile: invalid command name  
"fetch.ignore_sslcert"

Randall Wood
rhwood@...

"The rules are simple: The ball is round. The game lasts 90 minutes.  
All the
rest is just philosophy."

Yves de Champlain | 1 Apr 2007 15:39
Favicon

Re: replace reinplace


Le 07-04-01 à 03:02, Cédric Luthi a écrit :

> On 1 avr. 07, at 08:03, Ryan Schmidt wrote:
>
>> Wouldn't most of the existing invocations of reinplace break if we  
>> change that now?
>
> I'd say no. Replacing sed -E by sed would break all those who  
> actually use extended syntax but probably not the other way round.  
> I don't think there are non-extended expressions that would fail as  
> an extended expressions.

There might be some breakage indeed, but certainly not a lot.  But  
such a change would also have to be syncchronized with a release, so  
I was mostly wondering why in the first place was it chosen not to  
use it ?

On the other hand, maybe some grepper could translate that in 'basic  
mode' for me ?

sed -E 's|\$\(DESTDIR\)[[:space:]]+\$\(|\$\(DESTDIR\)\$\(|g'

Now that is the first level question.

yves

Elias Pipping | 1 Apr 2007 15:46
Favicon

Re: [23439] trunk/dports/archivers/zlib/Portfile

Hi,

I noticed you removed the line

   configure.universal_args ${configure.args}

the line should have read

   configure.universal_args {}

which would still break 1.4 but work as expected when running the trunk.

the reason the line can't simply be removed (doing so broke zlib  
+universal) is that the default universal variant is used, which  
includes CPPFLAGS, LDFLAGS and configure.args (--disable-dependency- 
tracking). Whereas the flags are fine and needed, the configure.args  
are not:

   <snip> ./configure <snip> --disable-dependency-tracking'
   unknown option: --disable-dependency-tracking

so i overwrote them. one way or another that has to be done - only  
way around it would be to override the default universal variant and  
add the flags in there manually, which is a pain. i tried and it  
doesn't work:

variant universal {
     set f "-arch i386 -arch ppc"
     configure.env-append \
     CFLAGS="\${CFLAGS} -isysroot /Developer/SDKs/MacOSX10.4u.sdk $ 
(Continue reading)

Elias Pipping | 1 Apr 2007 16:05
Favicon

Re: replace reinplace

On Apr 1, 2007, at 3:39 PM, Yves de Champlain wrote:

> On the other hand, maybe some grepper could translate that in  
> 'basic mode' for me ?
>
> sed -E 's|\$\(DESTDIR\)[[:space:]]+\$\(|\$\(DESTDIR\)\$\(|g'

sed 's|\$(DESTDIR)[[:space:]][[:space:]]*\$(|FOO|g'

changes

   $(DESTDIR) $(

to

   FOO

if that is what you want.

Regards,

Elias

Gmane