MacPorts on Other Platforms

Anders F Björklund afb at macports.org
Sun Sep 20 23:54:12 PDT 2009


Ryan Schmidt wrote:

>>> "make -j1" doesn't work on other platforms?
>>
>> Not always, since -j1 is also a parallel build mode so it fails
>> on some makes much the same way as -j2 does. "make" is safer...
>
> We can easily change that of course. I obviously didn't realize  
> there was any difference at all between "make" and "make -j1". I  
> don't see how "make -j1" could be thought to be a parallel build  
> mode, since it will run only 1 job at a time, hence no jobs in  
> parallel...

I think it only runs one at a time anyway, just that the deps fail.
Or something like that, it's not like I actually digged into it...

Just noticed that "make" works and "make -j1" does not. Besides,
that "-j1" argument seemed rather silly to me in the first place ?

>> It's not so much about other OS platforms as it is about different
>> /usr/bin/make, as you can test on Mac OS X by pointing the symlink
>> at bsdmake instead of the default gnumake.
>
> But MacPorts is documented as using GNU make by default. That's  
> build.type. MacPorts should be using GNU make by default on all  
> platforms unless the port sets build.type to bsd. Is this not the  
> case?

If nothing is set for build.type, it uses system make:
     if {![exists build.type]} {
         return [findBinary make $portutil::autoconf::make_path]
     }

So it was using -j1 for bsdmake as well ? Or actually it was using
"fail" (2) for -j until the default value was changed from 0 to 1.

So "whatever the system provides" is the default value, then it
can be explicitly set to GNU for the 0.01% of the ports that care.

>> This makes it less portable, if it requires "Mac OS X" and "Xcode"
>> instead of explicit dependencies like Tcl or GCC... That's all.
>
> Yeah. I guess all we can do is fix things when problems are reported.

No, what you *could* do instead is saying "So what ? We don't care !"
and just have MacPorts require Mac OS X (10.5+ ?) and be done with it.


I don't think that MacPorts could ever be a portable build system,
I was just making sure that it runs on Darwin OS and now FreeBSD...
Partly because I think Open Source is important, and partly because
I don't have a new Mac to join in on the Snow Leopard crash fest...

--anders



More information about the macports-dev mailing list