Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 92889 - emake calls 'make' unconditionally
Summary: emake calls 'make' unconditionally
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core (show other bugs)
Hardware: All FreeBSD
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS
Depends on:
Blocks:
 
Reported: 2005-05-17 03:58 UTC by Diego Elio Pettenò (RETIRED)
Modified: 2005-05-18 11:41 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Diego Elio Pettenò (RETIRED) gentoo-dev 2005-05-17 03:58:18 UTC
[I set normal serverity because it's major severity for G/FBSD project, it's an enhancement from G/Linux point of view, so I took a compromise]

Currently, calling 'emake' in ebuilds directly calls 'make' binary, which, on G/FBSD, it's bsd's make. Unfortunately a couple of packages uses non-portable syntax which breaks when called without gmake.
Aliasing make='gmake' works for make install calls, but it doesn't for emake because it's an external script.

One of the solutions found which can fix the problem is to call ${MAKE:-make} instead of make in emake script, so that G/FBSD needs only to set MAKE="gmake" in make.defaults.
This also has the side effect of allowing users to select their 'make' command if there's another make which is 100% gmake compatible.

Fortunately, most of auto* packages works fine with both makes, but some of them, like, for example, gawk, doesn't work at all because they use something like $(RM) which is an internal reference for gmake, but not for bsdmake. (the option of just adding a check in configure.in to check for RM so to have $(RM) defined on every make was already rejected in bug #90847.

Thanks in advance,
Diego
Comment 1 Jason Stubbs (RETIRED) gentoo-dev 2005-05-17 07:08:11 UTC
Mike? This one's for you! 
Comment 2 SpanKY gentoo-dev 2005-05-17 08:47:39 UTC
changing emake to run '${MAKE:-make}' instead of 'make' works for me
Comment 3 Diego Elio Pettenò (RETIRED) gentoo-dev 2005-05-18 11:41:11 UTC
Thanks works fine now :)