History log of /src/Makefile.libcompat (Results 251 – 275 of 393)
Revision Date Author Comments
# 91da7698 05-Apr-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Remove leftover _LDSCRIPTROOT missed in r297270.

Sponsored by: EMC / Isilon Storage Division


# d6084013 04-Apr-2016 Glen Barber <gjb@FreeBSD.org>

MFH

Sponsored by: The FreeBSD Foundation


# ce6c8db5 31-Mar-2016 Bryan Drewery <bdrewery@FreeBSD.org>

LIB32+WITHOUT_TOOLCHAIN: Fix build by staging includes.

This is the same fix as r297281 for the normal build.

Sponsored by: EMC / Isilon Storage Division


# 497e8091 30-Mar-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Remove the old depend (mkdep) code and make FAST_DEPEND the one true way.

Reviewed by: emaste, hselasky (partial), brooks (brief)
Discussed on: arch@
Sponsored by: EMC / Isilon Storage Division
Diff

Remove the old depend (mkdep) code and make FAST_DEPEND the one true way.

Reviewed by: emaste, hselasky (partial), brooks (brief)
Discussed on: arch@
Sponsored by: EMC / Isilon Storage Division
Differential Revision: https://reviews.freebsd.org/D5742

show more ...


# 17e3ebb1 25-Mar-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Fix libcompat not handling some external toolchain flags.

- Use libc++ with GCC.
- Use CROSS_BINUTILS_PREFIX with -B (r280980 addressed this mostly already)

Sponsored by: EMC / Isilon Storage Divis

Fix libcompat not handling some external toolchain flags.

- Use libc++ with GCC.
- Use CROSS_BINUTILS_PREFIX with -B (r280980 addressed this mostly already)

Sponsored by: EMC / Isilon Storage Division

show more ...


# 1b337a34 25-Mar-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Build libcompat (lib32) with a --sysroot pointing into its stage directory.

This overrides the cross-compiler's default sysroot to use the WORLD32's
sysroot for building the lib32 libraries. Previo

Build libcompat (lib32) with a --sysroot pointing into its stage directory.

This overrides the cross-compiler's default sysroot to use the WORLD32's
sysroot for building the lib32 libraries. Previously the cross-compiler
would default the sysroot to the 64bit WORLDTMP and -B/-L/-isystem flags
were used to build using the lib32 files. This leads to multiple issues
discussed later. Some extra headers are now needed to be staged since the
64bit WORLDTMP is not referenced at all for headers. The 64bit WORLDTMP
is still used via PATH for build tools. Overriding the default
target/arch is retained in the CC/CXX overrides.

This allows reverting the LDSCRIPT rewriting in installworld from r296921 and
r235122, thus allowing read-only objdirs to work for installing again.

This removes the need for _LDSCRIPTROOT.

This allows progressing the change to always use --sysroot for the build
rather than only relying on the cross-compiler's default sysroot. The
work for that is in D3970 and needed to resolve WITHOUT_CROSS_COMPILER
not using a --sysroot [1].

PR: 196193 [1]
Sponsored by: EMC / Isilon Storage Division

show more ...


# 429882e6 25-Mar-2016 Bryan Drewery <bdrewery@FreeBSD.org>

LIBRARIES_ONLY should only be defined during install32.

r245561 added it to prevent extra files from being installed during
the install32 phase (to prevent duplicates in the meta log with -DNO_ROOT)

LIBRARIES_ONLY should only be defined during install32.

r245561 added it to prevent extra files from being installed during
the install32 phase (to prevent duplicates in the meta log with -DNO_ROOT).
The flag should not be passed during build32 though since it may
prevent staging of includes during the 'make includes' phase on
library directories.

Sponsored by: EMC / Isilon Storage Division

show more ...


# 37a8c977 24-Mar-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Explicit 'make obj' for library dirs in build32 is not needed.

In r138291 some directories were explicitly made to run 'make obj',
but each target in 'make libraries' already runs 'make obj' for
eac

Explicit 'make obj' for library dirs in build32 is not needed.

In r138291 some directories were explicitly made to run 'make obj',
but each target in 'make libraries' already runs 'make obj' for
each library since r161580.

Sponsored by: EMC / Isilon Storage Division

show more ...


# 53835448 14-Mar-2016 Glen Barber <gjb@FreeBSD.org>

MFH

Sponsored by: The FreeBSD Foundation


# bb52d711 12-Mar-2016 Warner Losh <imp@FreeBSD.org>

Use the newly minted Makefile.libcompat to implement libsoft libraries
for the armv6 ABI switch. This also make WITH_LIBSOFT functional on
the arm platform. As a transition thing, this seems to work

Use the newly minted Makefile.libcompat to implement libsoft libraries
for the armv6 ABI switch. This also make WITH_LIBSOFT functional on
the arm platform. As a transition thing, this seems to work even
without switching the ABI (we basically build the same libraries
twice when MK_LIBSOFT=yes until the ABI cut over next
month). MK_LIBSOFT remains default no.

show more ...


# 048ce093 12-Mar-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Follow-up r296709: Fix build32 not properly building all libraries.

Pointyhat to: bdrewery
Reported by: antoine


# dba75e9f 11-Mar-2016 Bryan Drewery <bdrewery@FreeBSD.org>

Move Makefile.lib32 to Makefile.libcompat and generalize it.

This is in preparation for LIBSOFT.

This file only supports *1* LIBCOMPAT value currently and must be capitalized.
In Makefile.libcompat

Move Makefile.lib32 to Makefile.libcompat and generalize it.

This is in preparation for LIBSOFT.

This file only supports *1* LIBCOMPAT value currently and must be capitalized.
In Makefile.libcompat given LIBCOMPAT=FOO there can be values set for
LIBFOOCFLAGS, LIBFOOCPUFLAGS, LIBFOOWMAKEENV, LIBFOOWMAKEFLAGS, LIBFOOCPUFLAGS,
and LIBFOODTRACE. These will have the standard cross-build values appended
onto them.

This could be extended to support multiple libcompat libraries in the future
once there is a need.

Reviewed by: imp
Sponsored by: EMC / Isilon Storage Division
Differential Revision: https://reviews.freebsd.org/D5612

show more ...


# e84374d3 22-Aug-2025 Jessica Clarke <jrtc27@FreeBSD.org>

Makefile.libcompat: Use same PATH for _lc_build-tools as _build-tools

Without this, we end up with just the host's tools in PATH during
_lc_build-tools. In particular, sed on GNU/Linux systems will

Makefile.libcompat: Use same PATH for _lc_build-tools as _build-tools

Without this, we end up with just the host's tools in PATH during
_lc_build-tools. In particular, sed on GNU/Linux systems will be GNU
sed, whose -i option has different semantics, and this causes the lib32
build of ncurses to fail trying to create curses.h with:

sed: can't read s|...|...|g: No such file or directory

This has always been a bug in Makefile.libcompat but previously it
didn't end up mattering; this is the first known case.

Fixes: 1cc020eba69e ("ncurses: Provide reproducible paths")
MFC after: 1 week

show more ...


# c6778f3a 17-Aug-2025 Lexi Winter <ivy@FreeBSD.org>

Makefile.libcompat: Tweak krb5 compat dirs

krb5/util contains both programs and libraries; trying to build that
for compat confuses bsd.prog.mk and results in unwanted files being
created in the sou

Makefile.libcompat: Tweak krb5 compat dirs

krb5/util contains both programs and libraries; trying to build that
for compat confuses bsd.prog.mk and results in unwanted files being
created in the source tree. Remove krb5/util and instead list only
the directories underneath krb5/util which contain libraries.

The libdata change from the diff isn't included; that will be fixed
in a different way.

Fixes: fb13ae28b2e8 ("Makefile.libcompat: Add krb5/util")
Reviewed by: ngie (previous version)
Differential Revision: https://reviews.freebsd.org/D51937

show more ...


# fb13ae28 16-Aug-2025 Lexi Winter <ivy@FreeBSD.org>

Makefile.libcompat: Add krb5/util

This fixes missing libraries (libcom_err, libkrb5profile, ...)
for the 32-bit build, since these libraries live in krb5/util.

Reviewed by: ngie, des
Differential R

Makefile.libcompat: Add krb5/util

This fixes missing libraries (libcom_err, libkrb5profile, ...)
for the 32-bit build, since these libraries live in krb5/util.

Reviewed by: ngie, des
Differential Revision: https://reviews.freebsd.org/D51926

show more ...


# 7e35117e 11-Jun-2025 Cy Schubert <cy@FreeBSD.org>

Makefile: Hook MIT KRB5 into the build

Add tests for MK_MITKRB5. If "yes" build MIT KRB5. If "no" build Heimdal.
The default is MK_MITKRB5 = no, added by "krb5: Add build plumbing".

At some point w

Makefile: Hook MIT KRB5 into the build

Add tests for MK_MITKRB5. If "yes" build MIT KRB5. If "no" build Heimdal.
The default is MK_MITKRB5 = no, added by "krb5: Add build plumbing".

At some point we will change the default to MK_MITKRB5 = yes. A ports
exp-run will need to be successfully run first.

Sponsored by: The FreeBSD Foundation
Differential revision: https://reviews.freebsd.org/D50815

show more ...


# 8e358007 05-Jun-2025 Brooks Davis <brooks@FreeBSD.org>

build: remove the last vestiges of lint support

Commit 1cbb58886a47 (shipped in 12.0.0) removed all lint infrastructure.
A bunch of NO_LINT definitions remained (perhaps as a bootstrapping
measture)

build: remove the last vestiges of lint support

Commit 1cbb58886a47 (shipped in 12.0.0) removed all lint infrastructure.
A bunch of NO_LINT definitions remained (perhaps as a bootstrapping
measture). Remove them.

Reviewed by: emaste
Differential Revision: https://reviews.freebsd.org/D50704

show more ...


# e9ac4169 15-Jul-2024 Warner Losh <imp@FreeBSD.org>

Remove residual blank line at start of Makefile

This is a residual of the $FreeBSD$ removal.

MFC After: 3 days (though I'll just run the command on the branches)
Sponsored by: Netflix


# 834f73d2 22-Aug-2023 John Baldwin <jhb@FreeBSD.org>

build{libcompat}: Pass UNIVERSE_TOOLCHAIN_PATH to the _lc_build-tools submake

This fixes make UNIVERSE_TOOLCHAIN=yes with libcompats.

Reviewed by: jrtc27
Differential Revision: https://reviews.free

build{libcompat}: Pass UNIVERSE_TOOLCHAIN_PATH to the _lc_build-tools submake

This fixes make UNIVERSE_TOOLCHAIN=yes with libcompats.

Reviewed by: jrtc27
Differential Revision: https://reviews.freebsd.org/D41535

show more ...


# d0b2dbfa 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line sh pattern

Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/


# 8aaa1230 10-Aug-2023 Jessica Clarke <jrtc27@FreeBSD.org>

Makefile.libcompat: Fix DTRACE variable

Back when Makefile.lib32 was turned into Makefile.libcompat, a typo was
introduced; it should have been LIBCOMPATDTRACE, but instead gained a
dollar sign in i

Makefile.libcompat: Fix DTRACE variable

Back when Makefile.lib32 was turned into Makefile.libcompat, a typo was
introduced; it should have been LIBCOMPATDTRACE, but instead gained a
dollar sign in it as LIB$COMPATDTRACE (and with COMPATDTRACE not being
defined, was equivalent to ${LIB:U${DTRACE}}). This then meant it was
not converted to LIB${_LIBCOMPAT}DTRACE in 91d7edd549f5 ("Generalise
libcompat to be a list rather than a single option") and instead left
broken. Belatedly fix this long-standing seemingly-inconsequential bug.

Fixes: dba75e9fa5a9 ("Move Makefile.lib32 to Makefile.libcompat and generalize it.")

show more ...


# 1c024976 01-Aug-2023 John Baldwin <jhb@FreeBSD.org>

Makefile.inc1: Enable requesting the universe toolchain.

make universe builds a cross toolchain under HOST_OBJTMP/tmp via the
universe-toolchain target. However, doing a plain 'make buildworld'
aft

Makefile.inc1: Enable requesting the universe toolchain.

make universe builds a cross toolchain under HOST_OBJTMP/tmp via the
universe-toolchain target. However, doing a plain 'make buildworld'
after a universe/tinderbox run (e.g. to reproduce a failure and test
the fix for it), will try to build a new cross toolchain under
OBJTMP/tmp which can be tedious. This commit adds a make variable
(UNIVERSE_TOOLCHAIN) which can be used similar to CROSS_TOOLCHAIN to
request an external toolchain. If this variable is set (value doesn't
matter), the the universe toolchain is used as an external toolchain.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D40777

show more ...


# a1b67573 25-Jul-2023 Mike Karels <karels@FreeBSD.org>

arm64 lib32: enable building of lib32 on arm64

Enable LIB32 option on aarch64, defaulting to YES; it had defaulted
to "broken". Add required variables for how to compile lib32 on
arm. Use /usr/inc

arm64 lib32: enable building of lib32 on arm64

Enable LIB32 option on aarch64, defaulting to YES; it had defaulted
to "broken". Add required variables for how to compile lib32 on
arm. Use /usr/include/arm for armv7 (32-bit) headers, analogous to
/usr/include/i386 on amd64. Omit libomp from lib32; it is not
supported on armv7.

Reviewed by: jrtc27
Differential Revision: https://reviews.freebsd.org/D40945

show more ...


# 5d4f8df4 14-Jul-2023 Jessica Clarke <jrtc27@FreeBSD.org>

Makefile.libcompat: Make quoting for CC/CXX/CPP more future-proof

bmake's :Q is for quoting outside of double quotes, but here is inside
double quotes, and as a result it ends up quoting characters

Makefile.libcompat: Make quoting for CC/CXX/CPP more future-proof

bmake's :Q is for quoting outside of double quotes, but here is inside
double quotes, and as a result it ends up quoting characters that don't
have a special meaning inside double quotes. On the surface this would
seem harmless, but POSIX sh has a strange behaviour (differing from
outside double quotes) that, inside double quotes, a backslash before a
character that never has a special meaning inside double quotes is
passed through. As a result, should LIB${_LIBCOMPAT}CFLAGS contain
something like -DFOO\(x\)=x, we would form "... -DFOO\\\(x\\\)=x ...",
which would be parsed as -DFOO\\(x\\)=x, since the parentheses are never
special inside double quotes (but the backslash itself is), not the
original -DFOO\(x\)=x as intended.

Instead, construct the whole string as a bmake expression and use :Q on
that, without the manual double quotes around everything. Note that the
:L modifier lets you treat an expression like a variable expansion and
apply modifiers to it, i.e. ${expr:L:...} is the same as tmp=expr
${tmp:...} (in essence, ignoring possible differences due to deferred
substitution).

Improves: 537f945fc89f ("Makefile.libcompat: Quote CFLAGS and CXXFLAGS for sub-make")

show more ...


# 0a5e35a7 14-Jul-2023 Jessica Clarke <jrtc27@FreeBSD.org>

Makefile.libcompat: Be consistent about not installing includes

Currently we only pass MK_INCLUDES=no for distribute and install, since
it's only in LIB${_LIBCOMPAT}IMAKE, which means that we enable

Makefile.libcompat: Be consistent about not installing includes

Currently we only pass MK_INCLUDES=no for distribute and install, since
it's only in LIB${_LIBCOMPAT}IMAKE, which means that we enable includes
during libraries and thus install includes into worldtmp, despite it
being shared these days across native and libcompats. This also means
we're at risk of having headers needed for building against a libcompat
that don't get installed to the system, but do end up being installed to
worldtmp. In particular, lib/msun has different fenv.h for aarch64 and
arm, so aarch64 will need arm's copy when it grows lib32 support, and
this would be installed to worldtmp, but not to the system, meaning any
programs that use fenv.h wouldn't be able to be built.

Instead, be consistent, and don't install includes at all during any of
the libcompat phases, so that we can detect these issues and ensure any
needed headers are installed for both worldtmp and the system.

Reviewed by: brooks
Differential Revision: https://reviews.freebsd.org/D41030

show more ...


1...<<111213141516