non port: Mk/Uses/imake.mk |
Number of commits found: 14 |
Thursday, 29 Feb 2024
|
20:21 Tijl Coosemans (tijl)
Mk/*: Build with a clean environment
Both our make and gmake use the MAKEFLAGS environment variable but the
values aren't compatible and the latest version of gmake complains about
that. To rule out that any environment variable can cause problems like
this, add a new command SETENVI=/usr/bin/env -i that clears the
environment, and use it to run upstream build systems with a clean
environment.
Introduce a new variable WRK_ENV that contains the environment to use
with SETENVI in all targets that run upstream build commands. Variables
that are common between CONFIGURE_ENV and MAKE_ENV could be moved to
WRK_ENV but for now it just contains a minimal environment:
HOME=${WRKDIR}: Fixes USES=elixir ports that were using the user's HOME.
OSVERSION: For cross building; determines the output of uname -K and
getosreldate(3); affects net/freebsd-telnetd for example.
PATH: Fixes USES=gem ports that were using the user's PATH.
PWD=$${PWD}: Preserve current working directory; affects USES=go ports.
TERM: To preserve colored output to terminals.
TMPDIR: For users who define that.
UNAME_*: For cross building; determines the output of uname(1); affects
lang/python* for example.
This commit deals with everything under Mk/. Ports that have their own
targets running upstream build commands can switch to SETENVI later.
The ports tree adds its definition of ARCH to the MAKEFLAGS environment
variable, which is interpreted by sub-makes as command line arguments,
which means that any definition of ARCH in upstream makefiles was
overridden. The following ports required fixes now that this is no
longer the case.
games/iortcw, games/q3cellshading, games/tremulous:
These use Quake 3 engine code. Fix use of ARCH. Reduce diff between
FreeBSD code and Linux code.
games/legesmotus:
Remove ARCH related patches.
lang/ocaml:
Patch configure script so it detects amd64 correctly. Also make the
powerpc case consistent with the other architectures. This also affects
other ocaml ports like devel/ocaml-ocamlbuild and math/ocaml-num that
include a Makefile.config installed by lang/ocaml. While here, use
SETENVI in check-test target.
net/libnatpmp:
Use of upstream definition of ARCH triggers installation in PREFIX/lib64
on amd64. Disable this.
PR: 276478
Approved by: portmgr (antoine)
Exp-run by: antoine
572f236 |
Sunday, 24 Apr 2022
|
10:00 Tobias C. Berner (tcberner)
framework: cleanup conditional-indentations in Mk/
Run Tools/scripts/indent_make_if.pl on all of Mk.
These white space changes contribute greatly to the readability of those files.
As we have a version control system, finding out the reasons for the changes
prior to these white space changes is still easily possible
Differential Revision: https://reviews.freebsd.org/D35024
Reviewed by: portmgr (rene, bapt)
aa25396 |
Tuesday, 6 Apr 2021
|
14:27 Mathieu Arnold (mat)
framework: Remove $FreeBSD$
Where appropriate fiddle with a few other things.
5d33e04 |
Sunday, 27 Mar 2016
|
01:23 bapt
Remove the now unneeded ${PORTSDIR} from dependency definition in
The infrastructure Makefiles
PR: 206569
Exp run by: antoine
Differential Revision: D5047
|
Thursday, 15 Oct 2015
|
07:36 bapt
Readd PORTSDIR for now we will only start removing them after 2016Q1 is branched
This gives more time for tools to get updated, available in packages etc before
bothering users
|
Wednesday, 14 Oct 2015
|
16:49 bapt
Drop the necessity to add ${PORTSDIR} to dependency line
Modify make describe to automatically prepend ${PORTSDIR} if the path for the
port is not absolute
Checked with poudriere, portmaster, portupgrade
PR: 203685
Exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D3866
|
Sunday, 28 Sep 2014
|
16:36 tijl
Change the way USES is handled:
- Loop over USES twice, once to define all *_ARGS variables and once to
include Uses/*.mk. This allows all Uses/*.mk to examine arguments given
to other USES entries.
- Always define *_ARGS (possibly empty) and replace commas with spaces.
Similar for _USES_POST.
Adjust all Uses/*.mk:
- defined(u_ARGS) becomes !empty(u_ARGS)
- Eliminate helper variables like _*_ARGS=${*_ARGS:C/,/ /g}
- Some Uses/*.mk used ":" as argument separator instead of ",", but no port
used this form
- Uses/cran.mk: remove unused variable VALID_ARGS and USES+=fortran which
has no effect
- Uses/twisted.mk: simplify handling of the case where neither "build" nor
"run" arguments have been specified
PR: 193931
Exp-run by: antoine
Approved by: portmgr (antoine)
|
Thursday, 18 Sep 2014
|
12:31 mat
Retire MANCOMPRESSED.
Also the compat NO_INSTALL_MANPAGES shim.
Differential Revision: https://reviews.freebsd.org/D730
Reviewed by: antoine
With hat: portmgr
Sponsored by: Absolight
|
Tuesday, 12 Aug 2014
|
16:24 mat
Add a USES=imake:noman to make NO_INSTALL_MANPAGES go away.
CR: D594
Reviewed by: antoine
Sponsored by: Absolight
|
Saturday, 15 Mar 2014
|
10:31 gerald
Move MAINTAINER lines to the end of the initial comment block and
make things a bit more consistent.
Approved by: portmgr (bapt)
|
Monday, 2 Sep 2013
|
13:26 tijl
Two imake related changes:
1) Move -a from XMKMF command variable to a new XMKMF_ARGS variable.
For ports that don't need -a introduce USES=imake:notall.
This way ports no longer have to redefine XMKMF.
2) xmkmf -a runs imake with the flags in IMAKECPPFLAGS as extra arguments
to set CPP, CC and CXX. This creates the top Makefile, and then xmkmf
runs make Makefiles. This Makefiles target runs imake for each
subdirectory but these imake invocations did not have the flags from
IMAKECPPFLAGS so the resulting makefiles used the wrong C preprocessor
when clang is used (/usr/bin/cpp instead of /usr/local/bin/tradcpp).
Instead of letting xmkmf pass IMAKECPPFLAGS from the environment to
imake let imake handle IMAKECPPFLAGS itself just like it handles
IMAKEINCLUDE.
This exposed configure errors in x11-clocks/mouseclock and x11-wm/fvwm.
Approved by: portmgr (bapt)
|
Wednesday, 3 Jul 2013
|
19:23 bapt
Reverting r322247 it breaks too many imake:env users while only fixing a couple,
better to fix the couple that needs it port by port
|
18:54 bapt
LATE_INSTALL_ARGS needs to be defined either in case of imake:env
Reported by: dinoex
|
Friday, 28 Jun 2013
|
11:51 bapt
New USES imake to handle the dependency on imake.
This uses accept 'env' as an argument for ports that do use their own or a
different do-configure target.
Modify xmkmf so it accept IMAKECPPFLAGS as default flags for imake and pass it
to the called imake.
Modify xorg-cf-files (the FreeBSD.cf configuration file) to allow CppCmd to be
overwritten.
Pass CppCmd CcCmd and CplusplusCmd via command line to each call of imake via
IMAKECPPFLAGS
Pass IMAKE_DEFINE with the above arguments to MAKE_ARGS so that imake spawned
from Makefile generated by a previous
imake also inherit the defined CppCmd CcCmd and CplusplusCmd.
Make imake use devel/tradcpp all the time, so that when buidling with clang we
do not depend on gcc's cpp.
Make imake respect CC and CXX
Make imake respect USE_GCC (if set imake will use gcc's cpp).
While here:
- Remove a couple of indefinite articles from comments
- Trim headers
- Fix a couple of ports to build with clang or use: USE_GCC=any
- Fix a now useless redefinition of the extraction chain
- Fix a typo in japanese/Wnn7-lib bundled imake template definitions
- Fix some XMKMF execution with no env specified
- Use options helper in x11/xautolock to simplify the port
|
Number of commits found: 14 |