Previously there were at least 5 different ways MACHINE_ARCH could be set,
some statically and some at run time, and in many cases these settings
differed, leading to issues at pkg_add time where there was conflict
between the setting encoded into the package and that used by pkg_install.
Instead, move to a single source of truth where the correct value based on
the host and the chosen (or default) ABI is determined in the bootstrap
script. The value can still be overridden in mk.conf if necessary, e.g.
for cross-compiling.
ABI is now set by default and if unset a default is calculated based on
MACHINE_ARCH. This fixes some OS, e.g. Linux, where the wrong default was
previously chosen.
As a result of the refactoring there is no need for LOWER_ARCH, with
references to it replaced by MACHINE_ARCH. SPARC_TARGET_ARCH is also
removed.
The find-prefix infrastructure was required in a pkgviews world where
packages installed from pkgsrc could have different installation
prefixes, and this was a way for a dependency prefix to be determined.
Now that pkgviews has been removed there is no longer any need for the
overhead of this infrastructure. Instead we use BUILDLINK_PREFIX.pkg
for dependencies pulled in via buildlink, or LOCALBASE/PREFIX where the
dependency is coming from pkgsrc.
Provides a reasonable performance win due to the reduction of `pkg_info
-qp` calls, some of which were redundant anyway as they were duplicating
the same information provided by BUILDLINK_PREFIX.pkg.
each GCC version. Using the variable causes impossible version constraints
when a specific GCC is depended upon but the user is using something newer,
as _GCC_REQD will be set to the higher value.
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
Makefile:
See ${WRKSRC}/libgcc/config/t-slibgcc-darwin: It uses strip(1) to
create a stub library, not just to remove symbols, so we must not
let strip(1) be a no-op regardless of ${INSTALL_UNSTRIPPED} or the
build fails for missing files.
patches/patch-ac:
Remove the whitespace between $(LINKER_RPATH_FLAG) and the path.
Otherwise the flag may be misinterpreted by linker (e.g. Apple's ld)
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
allowed in option names (pkglint has been updated).
---
Module Name: pkgsrc
Committed By: sbd
Date: Wed Apr 4 22:18:30 UTC 2012
Modified Files:
pkgsrc/lang/gcc44: options.mk
Log Message:
Rename option "gcc-c++" to "gcc-cpp" (with legacy support) as pkglint
complains with: "gcc-c++" is not a valid option name.
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 pkgsrc/lang/gcc44/options.mk
GCC 4.4.7 is a bug-fix release containing fixes for regressions and serious
bugs in GCC 4.4.6. This release marks the end of the maintainance of
the GCC 4.4 series.
This is the list of problem reports (PRs) from GCC's bug tracking system
that are known to be fixed in the 4.4.7 release. This list might not be
complete (that is, it is possible that some PRs that have been fixed are
not listed here).
http://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=4.6.2
This package has never built on DragonFly, but it really is not needed as
the base compiler is gcc 4.4.7. The sole package (databases/libcassandra)
that required lang/gcc44 was just changed to remove this requirement when
built on DragonFly. This compiler is not worth the effort to fix for
DragonFly.
Without it, programs using .init sections will just segfault. The
workaround comes from http://www.openssl.org/~appro/values.c
Tested on 5.10, not needed on 5.11.