and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.
For example, "make show-buildlink3" in fonts/Xft2 displays:
zlib
fontconfig
iconv
zlib
freetype2
expat
freetype2
Xrender
renderproto
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
makeinfo if no native makeinfo executable exists. Honor TEXINFO_REQD
when determining whether the native makeinfo can be used.
* Remove USE_MAKEINFO and replace it with USE_TOOLS+=makeinfo.
* Get rid of all the "split" argument deduction for makeinfo since
the PLIST module already handles varying numbers of split info files
correctly.
NOTE: Platforms that have "makeinfo" in the base system should check
that the makeinfo entries of pkgsrc/mk/tools.${OPSYS}.mk are
correct.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
Changes:
0.6.6 (29 May 2004)
Runtime engine:
* GetManifestResourceNames internalcall (Russell Stuart).
* Add the --trace option to ilrun (Gopal V).
* Fix some I4/I/M/T cases in the verifier (Rhys Weatherley, Gopal V).
* Fix to Directory.GetFiles internalcall (Russell Stuart).
* Many fixes and speedups to the monitor implementation (Thong Nguyen).
* Remap some gtk# dll references (Ilyak Kasnacheev).
* Automatically load assemblies during "GetType" (Gopal V).
* Handling for interruptes and aborts (Thong Nguyen).
* Verification of indirect method calls (Gopal V).
* Resolve classes properly before layout (Gopal V).
* Support for Interlocked* functions (Thong Nguyen).
* Looser association of real threads with engine threads, to make
it easier to move to app domains in the future (Thong Nguyen).
* Asynchronous delegates (Thong Nguyen).
* Better shutdown logic for multi-threaded programs (Thong Nguyen).
* ILExecThreadBoxNoValue (Thong Nguyen).
* Dynamic invocation of methods with out/ref parameters (Thong Nguyen).
* Include inherited interfaces in return from "GetInterfaces" (Gopal V).
* Entry points must be in .exe's, not .dll's (Gopal V).
* Problems in OutputExceptionTable with nested try/catch (Rhys W).
* Fixes to make ilrun compile with gcc 3.4.0 (Norbert Bellow).
* Implement Thread.Abort (Thong Nguyen).
* Use interlocked increments for profile counts (Thong Nguyen).
C# Compiler:
* Stack underflow problem in codegen for "switch" (Rhys Weatherley).
* Problem with 8-bit characters in pre-processor lines (Rhys Weatherley).
* "/recurse" option for compiler compat mode (Gopal V).
* Fix semantic analysis for identifers and member accesses (Gopal V).
* Resolve aliases for fully qualified namespaces (Gopal V).
* "goto case" should emit a leave inside a "try" (Russell Stuart).
* Bug with ';' in #endregion directives (Russell Stuart).
* Handle "protected internal" across assemblies (Richard Baumann).
* Disambiguate static members and types with the same name (Gopal V).
C Compiler:
* Add dependency options to the pre-processor (-M, -MD, etc) (Rhys W).
* Fixes for bit field accesses (Rhys Weatherley).
* Complex structure initializers (Rhys Weatherley).
* Array access on managed arrays (Gopal V).
Linker:
* Strong alias linking for vararg methods (Rhys Weatherley).
Csant:
* Comma-separated lists of target dependencies (Russell Stuart).
* Directory deletion and copying (Russell Stuart).
Platform Support:
* Win32-specific filename expansion (Rhys Weatherley).
* Disable zlib under mingw32 because of dependency issues (Rhys W).
* Fixes for Win32 file operations (Thong Nguyen).
* Integrate libgc version 6.3alpha6 (Thong Nguyen).
* Overflow bugs in time routines (Thong Nguyen).
* ILGetSinceRebootTime for Windows (Thong Nguyen).
Changes:
0.6.4 (13 March 2004)
Runtime engine:
* Write Reflection.Emit binaries in "wb" mode.
* Set the execute bit on binaries written by Reflection.Emit.
* Fixes to unsafe-mode verification rules regarding pointers.
* Verification fixes for storing managed pointers via "stind.i".
* Modify internalcalls for "WaitAll" and "WaitAny" to work
around "MarshalByRefObject" adding a new field.
* Internalcalls for file lengths and attributes (Russell Stuart).
* Pass pointer parameters to delegates correctly (Gopal V).
C# Compiler:
* Fixes to reference type coercion.
* "params" array matching only on the last parameter (Gopal V).
* Filter out instance members when searching nested parent scopes.
* Assignment of arrays to pointer variables in "fixed" statements.
* Implement pointer comparison, addition, and subtraction.
C Compiler:
* Rewrite the type system to use native layout.
* Thread-specific variables.
* Fix casts from function pointer types to "void *".
* Computed goto support.
* Register parameters of the form "register type".
* Fix semantic analysis for expression statements.
* Add C#-style casts and coercions.
* Make "long double" an alias for "double" because MS runtime engines
don't handle the "native float" IL type correctly.
* Improve the visibility of C definitions to C# applications.
* Add some C# and Managed C++ syntax to aid with interoperation.
* Allow C# strings to be defined with S"foo".
* "using" and "using namespace" to import C# types into C programs.
* Output the parameter types for PInvoke declarations.
* Bug in the declaration of functions returning function pointers.
* Set the default PInvoke calling convention to "cdecl".
* Handle string initializations of the form {"foo"}.
* Convert constants of the form 123L into native ints, not int64.
Linker:
* Improve detection of unresolved references in C applications.
* Use C type names in error messages where appropriate.
* Use "OpenSystem.C.GlobalScopeAttribute" to export C# definitions
into the global C scope.
* Use ordinary names like "libc" for C modules instead of "$Module$".
* Remove C "memory models", which aren't needed any more.
Loader and Metadata:
* Allow custom modifiers within a "byref" type.
* Look for "pinvoke.map" files when resolving PInvoke libraries.
Csant:
* Missing options for mcs compiles (Ilyak Kasnacheev).
Documentation:
* Rewrite the C user's guide and move it into "pnettools.texi".
* Update the C ABI specification to reflect changes to the C compiler.
Platform Support:
* Enable FreeBSD pthreads support (Adam Ballai).
* Use the tm_gmtoff field for timezones (Ole Guldberg Jensen).
* Explicitly invoke the shell when configuring libgc and libffi.
* Work around bugs with read-write locks on systems with NPTL.
* Use $(EXEEXT) on install lines that need it, for mingw32.
* Fixup SOCKETLIBS and suppress libm under mingw32 environments.
Other:
* Check in a copy of gcc's cpp so that we can avoid system cpp bugs.
* Add the "#using#" directive to cpp.
* Update the "pnet.spec.in" file (Russell Stuart).
by moving the inclusion of buildlink3.mk files outside of the protected
region. This bug would be seen by users that have set PREFER_PKGSRC
or PREFER_NATIVE to non-default values.
BUILDLINK_PACKAGES should be ordered so that for any package in the
list, that package doesn't depend on any packages to the left of it
in the list. This ordering property is used to check for builtin
packages in the correct order. The problem was that including a
buildlink3.mk file for <pkg> correctly ensured that <pkg> was removed
from BUILDLINK_PACKAGES and appended to the end. However, since the
inclusion of any other buildlink3.mk files within that buildlink3.mk
was in a region that was protected against multiple inclusion, those
dependencies weren't also moved to the end of BUILDLINK_PACKAGES.
The goal of this project is to build a suite of Free Software tools
to build and execute .NET applications, including a C# compiler,
assembler, disassembler, and runtime engine.