History log of /freebsd-11-stable/gnu/lib/libstdc++/Makefile
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 302408 07-Jul-2016 gjb

Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle.
Prune svn:mergeinfo from the new branch, as nothing has been merged
here.

Additional commits post-branch will follow.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


/freebsd-11-stable/MAINTAINERS
/freebsd-11-stable/cddl
/freebsd-11-stable/cddl/contrib/opensolaris
/freebsd-11-stable/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print
/freebsd-11-stable/cddl/contrib/opensolaris/cmd/zfs
/freebsd-11-stable/cddl/contrib/opensolaris/lib/libzfs
/freebsd-11-stable/contrib/amd
/freebsd-11-stable/contrib/apr
/freebsd-11-stable/contrib/apr-util
/freebsd-11-stable/contrib/atf
/freebsd-11-stable/contrib/binutils
/freebsd-11-stable/contrib/bmake
/freebsd-11-stable/contrib/byacc
/freebsd-11-stable/contrib/bzip2
/freebsd-11-stable/contrib/com_err
/freebsd-11-stable/contrib/compiler-rt
/freebsd-11-stable/contrib/dialog
/freebsd-11-stable/contrib/dma
/freebsd-11-stable/contrib/dtc
/freebsd-11-stable/contrib/ee
/freebsd-11-stable/contrib/elftoolchain
/freebsd-11-stable/contrib/elftoolchain/ar
/freebsd-11-stable/contrib/elftoolchain/brandelf
/freebsd-11-stable/contrib/elftoolchain/elfdump
/freebsd-11-stable/contrib/expat
/freebsd-11-stable/contrib/file
/freebsd-11-stable/contrib/gcc
/freebsd-11-stable/contrib/gcclibs/libgomp
/freebsd-11-stable/contrib/gdb
/freebsd-11-stable/contrib/gdtoa
/freebsd-11-stable/contrib/groff
/freebsd-11-stable/contrib/ipfilter
/freebsd-11-stable/contrib/ldns
/freebsd-11-stable/contrib/ldns-host
/freebsd-11-stable/contrib/less
/freebsd-11-stable/contrib/libarchive
/freebsd-11-stable/contrib/libarchive/cpio
/freebsd-11-stable/contrib/libarchive/libarchive
/freebsd-11-stable/contrib/libarchive/libarchive_fe
/freebsd-11-stable/contrib/libarchive/tar
/freebsd-11-stable/contrib/libc++
/freebsd-11-stable/contrib/libc-vis
/freebsd-11-stable/contrib/libcxxrt
/freebsd-11-stable/contrib/libexecinfo
/freebsd-11-stable/contrib/libpcap
/freebsd-11-stable/contrib/libstdc++
/freebsd-11-stable/contrib/libucl
/freebsd-11-stable/contrib/libxo
/freebsd-11-stable/contrib/llvm
/freebsd-11-stable/contrib/llvm/projects/libunwind
/freebsd-11-stable/contrib/llvm/tools/clang
/freebsd-11-stable/contrib/llvm/tools/lldb
/freebsd-11-stable/contrib/llvm/tools/llvm-dwarfdump
/freebsd-11-stable/contrib/llvm/tools/llvm-lto
/freebsd-11-stable/contrib/mdocml
/freebsd-11-stable/contrib/mtree
/freebsd-11-stable/contrib/ncurses
/freebsd-11-stable/contrib/netcat
/freebsd-11-stable/contrib/ntp
/freebsd-11-stable/contrib/nvi
/freebsd-11-stable/contrib/one-true-awk
/freebsd-11-stable/contrib/openbsm
/freebsd-11-stable/contrib/openpam
/freebsd-11-stable/contrib/openresolv
/freebsd-11-stable/contrib/pf
/freebsd-11-stable/contrib/sendmail
/freebsd-11-stable/contrib/serf
/freebsd-11-stable/contrib/sqlite3
/freebsd-11-stable/contrib/subversion
/freebsd-11-stable/contrib/tcpdump
/freebsd-11-stable/contrib/tcsh
/freebsd-11-stable/contrib/tnftp
/freebsd-11-stable/contrib/top
/freebsd-11-stable/contrib/top/install-sh
/freebsd-11-stable/contrib/tzcode/stdtime
/freebsd-11-stable/contrib/tzcode/zic
/freebsd-11-stable/contrib/tzdata
/freebsd-11-stable/contrib/unbound
/freebsd-11-stable/contrib/vis
/freebsd-11-stable/contrib/wpa
/freebsd-11-stable/contrib/xz
/freebsd-11-stable/crypto/heimdal
/freebsd-11-stable/crypto/openssh
/freebsd-11-stable/crypto/openssl
/freebsd-11-stable/gnu/lib
/freebsd-11-stable/gnu/usr.bin/binutils
/freebsd-11-stable/gnu/usr.bin/cc/cc_tools
/freebsd-11-stable/gnu/usr.bin/gdb
/freebsd-11-stable/lib/libc/locale/ascii.c
/freebsd-11-stable/sys/cddl/contrib/opensolaris
/freebsd-11-stable/sys/contrib/dev/acpica
/freebsd-11-stable/sys/contrib/ipfilter
/freebsd-11-stable/sys/contrib/libfdt
/freebsd-11-stable/sys/contrib/octeon-sdk
/freebsd-11-stable/sys/contrib/x86emu
/freebsd-11-stable/sys/contrib/xz-embedded
/freebsd-11-stable/usr.sbin/bhyve/atkbdc.h
/freebsd-11-stable/usr.sbin/bhyve/bhyvegc.c
/freebsd-11-stable/usr.sbin/bhyve/bhyvegc.h
/freebsd-11-stable/usr.sbin/bhyve/console.c
/freebsd-11-stable/usr.sbin/bhyve/console.h
/freebsd-11-stable/usr.sbin/bhyve/pci_fbuf.c
/freebsd-11-stable/usr.sbin/bhyve/pci_xhci.c
/freebsd-11-stable/usr.sbin/bhyve/pci_xhci.h
/freebsd-11-stable/usr.sbin/bhyve/ps2kbd.c
/freebsd-11-stable/usr.sbin/bhyve/ps2kbd.h
/freebsd-11-stable/usr.sbin/bhyve/ps2mouse.c
/freebsd-11-stable/usr.sbin/bhyve/ps2mouse.h
/freebsd-11-stable/usr.sbin/bhyve/rfb.c
/freebsd-11-stable/usr.sbin/bhyve/rfb.h
/freebsd-11-stable/usr.sbin/bhyve/sockstream.c
/freebsd-11-stable/usr.sbin/bhyve/sockstream.h
/freebsd-11-stable/usr.sbin/bhyve/usb_emul.c
/freebsd-11-stable/usr.sbin/bhyve/usb_emul.h
/freebsd-11-stable/usr.sbin/bhyve/usb_mouse.c
/freebsd-11-stable/usr.sbin/bhyve/vga.c
/freebsd-11-stable/usr.sbin/bhyve/vga.h
# 291320 25-Nov-2015 bdrewery

META MODE: Don't create .meta files when symlinking sources into the obj directory.

Tracking these leads to situations where meta mode will consider the
file to be out of date if /bin/sh or /bin/ln are newer than the source
file. There's no reason for meta mode to do this as make is already
handling the rebuild dependency fine.

Sponsored by: EMC / Isilon Storage Division


# 275077 25-Nov-2014 bapt

Convert to LIBADD
Reduce overlinking


# 272350 01-Oct-2014 andrew

Remove MK_ARM_EABI, the armeb issues have been fixed. The code to support
the oabi is still in the tree, but it is expected this will be removed
as developers work on surrounding code.

With this commit the ARM EABI is the only supported supported ABI by
FreeBSD on ARMa 32-bit processors.

X-MFC after: never
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D876


# 265895 11-May-2014 dim

Allow libstdc++ and libsupc++ to compile with clang again, after the
bsd.*.mk infrastructure changes. Apparently, you must now modify
CXXFLAGS *before* including bsd.lib.mk, or your changes will be lost.


# 265420 06-May-2014 imp

Use src.opts.mk in preference to bsd.own.mk except where we need stuff
from the latter.


# 259730 22-Dec-2013 dim

To avoid having to explicitly test COMPILER_TYPE for setting
clang-specific or gcc-specific flags, introduce the following new
variables for use in Makefiles:

CFLAGS.clang
CFLAGS.gcc
CXXFLAGS.clang
CXXFLAGS.gcc

In bsd.sys.mk, these get appended to the regular CFLAGS or CXXFLAGS for
the right compiler.

MFC after: 1 week


# 255500 12-Sep-2013 dim

After r255321, clang uses libc++ by default. This leads to a lot of
errors when you enable WITH_GNUCXX to build libstdc++, since it will
include C++ headers from the libc++ installation under ${WORLDTMP}, and
those are not compatible with libstdc++ at all.

To fix this, add -stdlib=libstdc++ to CXXFLAGS when building libstdc++
(and its companion libsupc++) with clang.

Approved by: re (delphij)


# 245539 17-Jan-2013 andrew

Add compiler support for the ARM EABI.

ARM EABI support is disabled by default and can be enabled by setting
WITH_ARM_EABI when building, however only the kernel-toolchain target will
work with this flag until the rest of the support is added.


# 241960 23-Oct-2012 dim

For building GNU libstdc++ and libsupc++, filter out libc++-specific and
-std= flags above c++98 or gnu++98 from CXXFLAGS *after* including
bsd.lib.mk, otherwise some additions to CXXFLAGS done in bsd.*.mk might
not be preserved.

MFC after: 1 week


# 239695 25-Aug-2012 dim

For building libstdc++ and libsupc++, filter out any -stdlib=libc++
option from CXXFLAGS, otherwise these libraries will not build.
Similarly, filter out any -std=xxx options that aren't supported.

Submitted by: Yamaya Takashi <yamayan@kbh.biglobe.ne.jp>
MFC after: 2 weeks


# 233749 31-Mar-2012 theraven

Make libsupc++ build as a shared library and make libstdc++ a filter library
for it.

This allows people to swap out libsupc++ for libcxxrt easily, so we can begin
the libstdc++ -> libc++ migration.

Approved by: dim (mentor)


# 212286 07-Sep-2010 tijl

GCC defines built-ins for atomic instructions found on i486 and higher.
Because FreeBSD no longer supports the 80386 cpu all code targeting
FreeBSD/i386 necessarily runs on i486 or higher so the compiler
built-ins can be used by default inside libstdc++ and in C++ headers.
This allows newly compiled C++ code to inline some atomic operations.
Old binaries continue to use libstdc++ functions.

PR: 148926
Tested by: Yuri Karaban <tech askold net>
Reviewed by: kan
Approved by: kib (mentor)
MFC after: 2 weeks


# 211725 23-Aug-2010 imp

MFtbemd:

Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want
to test of all the CPUs of a given family conform.


# 207995 12-May-2010 obrien

Non-GCC gcc compatible compilers may provide the same multimedia intrinsic
headers as GCC, but of their own implementation. So put the GCC ones into
their own header "namespace".

Requested by: ed


# 202808 22-Jan-2010 sepotvin

Use the new PO_CXXFLAGS from r202807 to remove the '-ffunction-sections'
flag when compiling profiled objects as it's ignored by the compiler.
This removes the associated warning for each file compiled.

MFC after: 1 month


# 186641 31-Dec-2008 imp

There's no need to redundantly redefine atomicity.h.


# 179834 16-Jun-2008 kan

Install extra include files that were forgotten in original GCC 4.2.x
import changes.

PR: 124647
Submitted by: Vlad GALU
MFC after: 2 days


# 171864 16-Aug-2007 kan

Install etx/numeric_traits.h.

PR: gnu/115250
Approved by: re (blanket)


# 169767 19-May-2007 kan

Fix the fallout from over-zealous obsolete files removal. Use correct
atomicity.h file for arm and powerpc.


# 169718 19-May-2007 kan

Update bmake glue to build GCC 4.2.

Also:
Switch FreeBSD to use libgcc_s.so.1.

Use dl_iterate_phdr to locate shared objects' exception frame
info instead of depending on older register_frame_info machinery.
This allows us to avoid depending on libgcc_s.so.1 in binaries
that do not use exception handling directly. As an additional
benefit it breaks circular libc <=> libgcc_s.so.1 dependency too.

Build newly added libgomp.so.1 library, the runtime support
bits for OpenMP.

Build LGPLed libssp library. Our libc provides our own
BSD-licensed SSP callbacks implementation, so this library
is only built to benefit applications that have hadcoded
knowledge of libssp.so and libssp_nonshared.a. When linked
in from command line, these libraries override libc
implementation.


# 163043 05-Oct-2006 obrien

The ARM platform does the setjmp/longjmp type of exception handling.


# 162851 30-Sep-2006 ru

Fix build due to the incomplete removal of demangle.h.


# 148297 22-Jul-2005 kensmith

Bump the shared library version number of all libraries that have not
been bumped since RELENG_5.

Reviewed by: ru
Approved by: re (not needed for commit check but in principle...)


# 145413 22-Apr-2005 trhodes

Enforce style.Makefile(5).

Glanced at by: ru (some time ago).


# 140860 26-Jan-2005 kan

Of all templates only lists need a special implmementation file compiled
to support __GLIBCXX_DEBUG. Add debug_list.cc to the list of files to
compile.


# 140372 17-Jan-2005 cperciva

Add -frandom-seed=RepeatabilityConsideredGood to CFLAGS for building this
library. As the value suggests, this allows the library to be built repeatably;
without this flag, gcc uses a random value in its parsing.

Since the random seed is only used when handling files which do not have any
externally-visible symbols, this change is not needed for any other libraries
in the FreeBSD base system.

Discussed on: freebsd-arch (in early November)
Approved by: kan
MFC after: 1 week


# 134596 01-Sep-2004 ru

Add atomicity.cc to CLEANFILES.


# 132751 28-Jul-2004 kan

Bmake glue for GCC 3.4.2-prerelease.


# 125503 05-Feb-2004 ru

Fixed style of DPADD and LDADD assignments as per style.Makefile(5).


# 124189 06-Jan-2004 kan

Correct the atomicity.h fallback path on architectures which do not
define their own.


# 124153 05-Jan-2004 kan

Do not install files which are not part of GCC 3.3.x anymore.


# 117429 11-Jul-2003 kan

Update bmake bits to build GCC 3.3.1-prerelease.


# 116858 25-Jun-2003 peter

Oops, remove hack to stop libstdc++.so being built now that gcc uses
-lgcc_pic by default on -fpic stuff. I forgot about this here.


# 116335 14-Jun-2003 des

Do not bogusly set CSTD to the empty string.


# 115680 02-Jun-2003 obrien

Something funky is going on here... disabling CSTD makes it go away...


# 115287 24-May-2003 peter

libstdc++.so breaks on amd64 due to bogons in our build, so prevent the
shared library being built for amd64. The problem is that libstdc++.so
is produced with 'cc -shared'. This has an internal -lgcc, which is
not PIC. libstdc++.so uses exceptions and the dwarf2 unwinder, which
are in libgcc.a. As a result, non-PIC code gets pulled into libstdc++.so.
This is fatal on amd64 when certain relocation types cannot be used in
PIC mode. The official FSF solution to this is to have libgcc.so with
internal ELF symbol versioning to solve the ABI problem, but I dont want
to fight that battle yet. I tried making libgcc_pic.a (which worked
fine), but thats not something for the 11th hour before a release.

Approved by: re (amd64 "safe" stuff)


# 110632 10-Feb-2003 kan

Install one more header file which is new with GCC 3.2.2.


# 107639 05-Dec-2002 kan

C++ exceptions with shared libraries are working on sparc64 now.
Build shared libstdc++so on sparc64 platform too.

Approved: re (rwatson)


# 107331 27-Nov-2002 obrien

Remove files no longer part of the gcc_3_2_anoncvs_20021009 libstdc++.

Approved by: re(jhb)


# 104073 27-Sep-2002 peter

Zap now-unused SHLIB_MINOR


# 103456 17-Sep-2002 kan

Bmake bits for GCC 3.2.1-prerelease libstdc++.
Connect two new source and one header file to the build.

Approved by: obrien


# 102806 01-Sep-2002 kan

Connect new files added with GCC 3.2.1 import to the build.

Approved by: obrien


# 99584 08-Jul-2002 peter

Bandaid for sparc64. Do not build libstdc++.so for now on sparc64.
Binaries compiled with it segfault.


# 98413 19-Jun-2002 obrien

Disconnect the docs until we figure out if there are any with v3.


# 97745 02-Jun-2002 obrien

Turn on the math function stub stubs.

Submitted by: Martin Blapp <mb@imp.ch>
I believe OK with: peter


# 97657 31-May-2002 ru

The new bsd.incs.mk is powerful enough to handle this wrinkle.


# 97612 30-May-2002 obrien

The revision 1.31 tweak was to _not_ write .o's in src/contrib/gcc.
Not the other way around as the log message stated.


# 97523 29-May-2002 obrien

Tweak so that .o's are written into src/contrib/gcc


# 97433 28-May-2002 peter

Add some build glue for libstdc++. I'm not a C++ person, but this seems
to work at least for the non-hairy stuff. The main wrinkle here is that
a whole mess of include files get installed and under different names.
An earlier version of this built a shadow include tree first in the obj
directory, but this depends on the 'make includes' functionality.

More tweaking is certainly going to be needed.


# 96462 12-May-2002 ru

Added new bsd.incs.mk which handles installing of header files
via INCS. Implemented INCSLINKS (equivalent to SYMLINKS) to
handle symlinking include files. Allow for multiple groups of
include files to be installed, with the powerful INCSGROUPS knob.
Documentation to follow.

Added standard `includes' and `incsinstall' targets, use them
in Makefile.inc1. Headers from the following makefiles were
not installed before (during `includes' in Makefile.inc1):

kerberos5/lib/libtelnet/Makefile
lib/libbz2/Makefile
lib/libdevinfo/Makefile
lib/libform/Makefile
lib/libisc/Makefile
lib/libmenu/Makefile
lib/libmilter/Makefile
lib/libpanel/Makefile

Replaced all `beforeinstall' targets for installing includes
with the INCS stuff.

Renamed INCDIR to INCSDIR, for consistency with FILES and SCRIPTS,
and for compatibility with NetBSD. Similarly for INCOWN, INCGRP,
and INCMODE.

Consistently use INCLUDEDIR instead of /usr/include.

gnu/lib/libstdc++/Makefile and gnu/lib/libsupc++/Makefile changes
were only lightly tested due to the missing contrib/libstdc++-v3.
I fully tested the pre-WIP_GCC31 version of this patch with the
contrib/libstdc++.295 stuff.

These changes have been tested on i386 with the -DNO_WERROR "make
world" and "make release".


# 96340 10-May-2002 obrien

Bmake bits for Gcc 3.1.

Partially made possible by: Wilko.Bulte@compaq.com


# 74743 24-Mar-2001 obrien

Sigh. I should know better than to commit a one line change from a PR
w/o a full compile test, even when the PR seemed so authoritative on the
subject...

Install sstream, not the non-existent sstring.


# 74737 24-Mar-2001 obrien

Install sstring.

PR: 25927
Submitted by: Jeremy Norris <ishmael27@home.com>


# 61238 04-Jun-2000 obrien

Scoot things over to the temporary *.295 source while I do major construction
on the mainline sources.


# 53173 15-Nov-1999 obrien

Cut over the system compiler from from EGCS 1.1.2 to GCC 2.95.2.


# 50472 27-Aug-1999 peter

$Id$ -> $FreeBSD$


# 49866 16-Aug-1999 obrien

{EGCSDIR}->{SRCDIR} + associated tweaks.
This is in prepreparation of the gcc-2.95 upgrade.


# 49865 16-Aug-1999 obrien

Purely cosmetic changes -- fix Id's


# 46067 25-Apr-1999 obrien

Remove several explicit rules. The two for exceptioni.o and typeionfoi.o
aren't needed as those files aren't part of libstdc++ any longer. Another
isn't needed as Cygnus doesn't compile with -frtti.

Noticed by: bde & my initial mispelling of ".So".


# 45698 15-Apr-1999 obrien

Foo. jdp changed .so to .So during the time I did the EGCS work and I
missed bring in his changes into my work.


# 45465 08-Apr-1999 obrien

Missed a "\" in a continuation line.


# 45454 08-Apr-1999 obrien

Cometic cleanup.

Pre-bdelinted by: bde


# 45419 07-Apr-1999 obrien

Don't generate _G_config.h, use fixed version.
I knew better... too dependant on the environment we generate in, but...

This fixes the
/usr/lib/libstdc++.so: undefined reference to `filebuf virtual table'
/usr/lib/libstdc++.so: undefined reference to `stdiobuf virtual table'
errors seen after the initial bootstrap from gcc 2.7.2 to EGCS.

Agreed with by: bde & jdp


# 45339 05-Apr-1999 obrien

Fix .for loop continuation lines style bugs.

Submitted by: bde


# 45337 05-Apr-1999 obrien

Add iostream Info docs.


# 45299 04-Apr-1999 obrien

Minimum set of changes to switch from Gcc 2.7.2 (in contrib/gcc) to Egcs 1.1.2
(in contrib/egcs)


# 42450 09-Jan-1999 jdp

Switch to using ".So" as the extension for PIC object files rather
than ".so". The old extension conflicted with well-established
naming conventions for dynamically loadable modules.

The "clean" targets continue to remove ".so" files too, to deal with
old systems.


# 42093 27-Dec-1998 bde

Avoid using `ld -O' (as in bsd.lib.mk). `ld -O' seems to have caused only
non-problems for elf -- `ld -elf -O foo.tmp -x -r foo' apparently puts
the result in a.out so it has essentially no effect.


# 40204 11-Oct-1998 peter

libg++ and libstdc++ also have internal calls to libm. Programs using the
shared versions should not need to add -lm unless the program uses libm
itself. Strictly speaking, libg++ depends on libstdc++, but libstdc++
has dynamic dependencies on some exception tables and binutils doesn't
seem to like it when a secondary library has undefined references. It
doesn't seem to care when -lstdc++ is added on the command line to ld
though. Anyway, the c++ driver adds -lstdc++ explicitly, so that should
be OK. c++ also adds -lm explicitly too, even though it wouldn't need
to now. [except for statically linked binaries as .a files don't have an
equivalent of automatic internal shared object dependencies.]


# 34707 20-Mar-1998 bde

Don't use beforedepend to complicate and break things. The usual
fix of putting generated source files in SRCS breaks many special
cases (many dependencies had to be incomplete for ${.ALLSRC}
not to give .h files that would break compiling with c++ -c).
Reduce these special cases to the general case so that SRCS works
normally and bsd.lib.mk handles most of the complications. Now
we only have to duplicate rules from bsd.lib.mk to add special
CFLAGS in some cases.


# 33799 24-Feb-1998 bde

Don't add streambuf.cc to SRCS twice.


# 26049 23-May-1997 asami

Add ${DESTDIR} in front of absolute paths.

Reviewed by: bde


# 25501 05-May-1997 jdp

Bye bye CPLUSPLUSLIB hack! It's not needed any more.

Don't merge this into -2.2 unless you understand the dependencies on
c++rt0, bsd.lib.mk, and gcc -shared. I.e., let me do it.


# 24749 09-Apr-1997 peter

Oops. Missed the Complex number add case of code generation.. :-]
Fixes PR#3239.

Submitted by: Takeshi WATANABE <watanabe@crayon.earth.s.kobe-u.ac.jp>


# 22996 22-Feb-1997 peter

Revert $FreeBSD$ to $Id$


# 21673 14-Jan-1997 jkh

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


# 19786 15-Nov-1996 jkh

STL object files missing from libstdc++ - fix.
This closes PR#1975 and was on my TODO list, so I'm breaking my own "no more
commits before I fly!" rule and taking care of this, since it was at the
very top and Peter shamed me in to taking care of it. This is definitely
a 2.2 candidate.

Submitted-By: Mark Diekhans <markd@Grizzly.COM>


# 18666 03-Oct-1996 peter

Initial shot at a bmakefile for libstdc++