head 1.9; access; symbols pkgsrc-2013Q2:1.9.0.4 pkgsrc-2013Q2-base:1.9 pkgsrc-2012Q4:1.9.0.2 pkgsrc-2012Q4-base:1.9 pkgsrc-2012Q3:1.8.0.18 pkgsrc-2012Q3-base:1.8 pkgsrc-2012Q2:1.8.0.16 pkgsrc-2012Q2-base:1.8 pkgsrc-2012Q1:1.8.0.14 pkgsrc-2012Q1-base:1.8 pkgsrc-2011Q4:1.8.0.12 pkgsrc-2011Q4-base:1.8 pkgsrc-2011Q3:1.8.0.10 pkgsrc-2011Q3-base:1.8 pkgsrc-2011Q2:1.8.0.8 pkgsrc-2011Q2-base:1.8 pkgsrc-2011Q1:1.8.0.6 pkgsrc-2011Q1-base:1.8 pkgsrc-2010Q4:1.8.0.4 pkgsrc-2010Q4-base:1.8 pkgsrc-2010Q3:1.8.0.2 pkgsrc-2010Q3-base:1.8 pkgsrc-2010Q2:1.7.0.8 pkgsrc-2010Q2-base:1.7 pkgsrc-2010Q1:1.7.0.6 pkgsrc-2010Q1-base:1.7 pkgsrc-2009Q4:1.7.0.4 pkgsrc-2009Q4-base:1.7 pkgsrc-2009Q3:1.7.0.2 pkgsrc-2009Q3-base:1.7 pkgsrc-2009Q2:1.6.0.32 pkgsrc-2009Q2-base:1.6 pkgsrc-2009Q1:1.6.0.30 pkgsrc-2009Q1-base:1.6 pkgsrc-2008Q4:1.6.0.28 pkgsrc-2008Q4-base:1.6 pkgsrc-2008Q3:1.6.0.26 pkgsrc-2008Q3-base:1.6 cube-native-xorg:1.6.0.24 cube-native-xorg-base:1.6 pkgsrc-2008Q2:1.6.0.22 pkgsrc-2008Q2-base:1.6 cwrapper:1.6.0.20 pkgsrc-2008Q1:1.6.0.18 pkgsrc-2008Q1-base:1.6 pkgsrc-2007Q4:1.6.0.16 pkgsrc-2007Q4-base:1.6 pkgsrc-2007Q3:1.6.0.14 pkgsrc-2007Q3-base:1.6 pkgsrc-2007Q2:1.6.0.12 pkgsrc-2007Q2-base:1.6 pkgsrc-2007Q1:1.6.0.10 pkgsrc-2007Q1-base:1.6 pkgsrc-2006Q4:1.6.0.8 pkgsrc-2006Q4-base:1.6 pkgsrc-2006Q3:1.6.0.6 pkgsrc-2006Q3-base:1.6 pkgsrc-2006Q2:1.6.0.4 pkgsrc-2006Q2-base:1.6 pkgsrc-2006Q1:1.6.0.2 pkgsrc-2006Q1-base:1.6 pkgsrc-2005Q4:1.5.0.6 pkgsrc-2005Q4-base:1.5 pkgsrc-2005Q3:1.5.0.4 pkgsrc-2005Q3-base:1.5 pkgsrc-2005Q2:1.5.0.2 pkgsrc-2005Q2-base:1.5 pkgsrc-2005Q1:1.4.0.2 pkgsrc-2005Q1-base:1.4 pkgsrc-2004Q4:1.3.0.6 pkgsrc-2004Q4-base:1.3 pkgsrc-2004Q3:1.3.0.4 pkgsrc-2004Q3-base:1.3 pkgsrc-2004Q2:1.3.0.2 pkgsrc-2004Q2-base:1.3 pkgsrc-2004Q1:1.2.0.4 pkgsrc-2004Q1-base:1.2 pkgsrc-2003Q4:1.2.0.2 pkgsrc-2003Q4-base:1.2; locks; strict; comment @# @; 1.9 date 2012.10.11.09.48.14; author jaapb; state dead; branches; next 1.8; 1.8 date 2010.08.19.08.06.53; author asau; state Exp; branches; next 1.7; 1.7 date 2009.09.07.21.48.13; author tonio; state Exp; branches; next 1.6; 1.6 date 2006.01.16.09.41.48; author adam; state Exp; branches; next 1.5; 1.5 date 2005.03.24.11.32.50; author adam; state Exp; branches; next 1.4; 1.4 date 2005.02.04.21.35.51; author adrianp; state Exp; branches; next 1.3; 1.3 date 2004.04.22.09.18.37; author tron; state Exp; branches; next 1.2; 1.2 date 2003.07.11.07.47.44; author jtb; state Exp; branches; next 1.1; 1.1 date 2003.07.10.07.44.02; author jtb; state Exp; branches; next ; desc @@ 1.9 log @Removed obsolete and/or renamed patches. @ text @$NetBSD: patch-aj,v 1.8 2010/08/19 08:06:53 asau Exp $ --- byterun/Makefile.orig 2010-07-28 17:19:44.000000000 +0400 +++ byterun/Makefile 2010-08-12 14:30:11.000000000 +0400 @@@@ -15,7 +15,7 @@@@ include Makefile.common -CFLAGS=-DCAML_NAME_SPACE -O $(BYTECCCOMPOPTS) $(IFLEXDIR) +CFLAGS+=-DCAML_NAME_SPACE -O $(BYTECCCOMPOPTS) $(IFLEXDIR) DFLAGS=-DCAML_NAME_SPACE -g -DDEBUG $(BYTECCCOMPOPTS) $(IFLEXDIR) OBJS=$(COMMONOBJS) unix.o main.o @@@@ -48,7 +48,7 @@@@ install:: if test -f libcamlrun_shared.so; then \ - cp libcamlrun_shared.so $(LIBDIR)/libcamlrun_shared.so; fi + $(BSD_INSTALL_PROGRAM) libcamlrun_shared.so $(LIBDIR)/libcamlrun_shared.so; fi clean:: rm -f libcamlrun_shared.so @ 1.8 log @Update to O'Caml 3.12.0, add test target. Some of the highlights in release 3.12 are: * Polymorphic recursion is supported, using explicit type declarations on the recursively-defined identifiers. * First-class modules: module expressions can be embedded as values of the core language, then manipulated like any other first-class value, then projected back to the module level. * New operator to modify a signature a posteriori: S with type t := tau denotes signature S where the t type component is removed and substituted by the type tau elsewhere. * New notations for record expressions and record patterns: { lbl } as shorthand for { lbl = lbl }, and { ...; _ } marks record patterns where some labels were intentionally omitted. * Local open let open ... in ... now supported by popular demand. * Type variables can be bound as type parameters to functions; such types are treated like abstract types within the function body, and like type variables (possibly generalized) outside. * The module type of construct enables to recover the module type of a given module. * Explicit method override using the method! keyword, with associated warnings and errors. @ text @d1 1 a1 1 $NetBSD: patch-aj,v 1.7 2009/09/07 21:48:13 tonio Exp $ @ 1.7 log @Update lang/ocaml to 3.11.1 [PR pkg/41695] (Changes that can break existing programs are marked with a "*" ) Language features: - Addition of lazy patterns: "lazy " matches suspensions whose values, after forcing, match the pattern . - Introduction of private abbreviation types "type t = private ", for abstracting the actual manifest type in type abbreviations. - Subtyping is now allowed between a private abbreviation and its definition, and between a polymorphic method and its monomorphic instance. Compilers: - The file name for a compilation unit should correspond to a valid identifier (Otherwise dynamic linking and other things can fail, and a warning is emitted.) * Revised -output-obj: the output name must now be provided; its extension must be one of .o/.obj, .so/.dll, or .c for the bytecode compiler. The compilers can now produce a shared library (with all the needed -ccopts/-ccobjs options) directly. - -dtypes renamed to -annot, records (in .annot files) which function calls are tail calls. - All compiler error messages now include a file name and location, for better interaction with Emacs' compilation mode. - Optimized compilation of "lazy e" when the argument "e" is already evaluated. - Optimized compilation of equality tests with a variant constant constructor. - The -dllib options recorded in libraries are no longer ignored when -use_runtime or -use_prims is used (unless -no_auto_link is explicitly used). - Check that at most one of -pack, -a, -shared, -c, -output-obj is given on the command line. - Optimized compilation of private types as regular manifest types (e.g. abbreviation to float, float array or record types with only float fields). Native-code compiler: - New port: Mac OS X / Intel in 64-bit mode (configure with -cc "gcc -m64"). - A new option "-shared" to produce a plugin that can be dynamically loaded with the native version of Dynlink. - A new option "-nodynlink" to enable optimizations valid only for code that is never dynlinked (no-op except for AMD64). - More aggressive unboxing of floats and boxed integers. - Can select which assembler and asm options to use at configuration time. Run-time system: - New implementation of the page table describing the heap (two-level array in 32 bits, sparse hashtable in 64 bits), fixes issues with address space randomization on 64-bit OS (PR#4448). - New "generational" API for registering global memory roots with the GC, enables faster scanning of global roots. (The functions are caml_*_generational_global_root in .) - New function "caml_raise_with_args" to raise an exception with several arguments from C. - Changes in implementation of dynamic linking of C code: under Win32, use Alain Frisch's flexdll implementation of the dlopen API; under MacOSX, use dlopen API instead of MacOSX bundle API. - Programs may now choose a first-fit allocation policy instead of the default next-fit. First-fit reduces fragmentation but is slightly slower in some cases. Standard library: - Parsing library: new function "set_trace" to programmatically turn on or off the printing of a trace during parsing. - Printexc library: new functions "print_backtrace" and "get_backtrace" to obtain a stack backtrace of the most recently raised exception. New function "record_backtrace" to turn the exception backtrace mechanism on or off from within a program. - Scanf library: fine-tuning of meta format implementation; fscanf behaviour revisited: only one input buffer is allocated for any given input channel; the %n conversion does not count a lookahead character as read. Other libraries: - Dynlink: on some platforms, the Dynlink library is now available in native code. The boolean Dynlink.is_native allows the program to know whether it has been compiled in bytecode or in native code. - Bigarrays: added "unsafe_get" and "unsafe_set" (non-bound-checking versions of "get" and "set"). - Bigarrays: removed limitation "array dimension < 2^31". - Labltk: added support for TK 8.5. - Num: added conversions between big_int and int32, nativeint, int64. More efficient implementation of Num.quo_num and Num.mod_num. - Threads: improved efficiency of mutex and condition variable operations; improved interaction with Unix.fork (PR#4577). - Unix: added getsockopt_error returning type Unix.error. Added support for TCP_NODELAY and IPV6_ONLY socket options. - Win32 Unix: "select" now supports all kinds of file descriptors. Improved emulation of "lockf" (PR#4609). Tools: - ocamldebug now supported under Windows (MSVC and Mingw ports), but without the replay feature. (Contributed by Dmitry Bely and Sylvain Le Gall at OCamlCore with support from Lexifi.) - ocamldoc: new option -no-module-constraint-filter to include functions hidden by signature constraint in documentation. - ocamlmklib and ocamldep.opt now available under Windows ports. - ocamlmklib no longer supports the -implib option. - ocamlnat: an experimental native toplevel (not built by default). Camlp4: * programs linked with camlp4lib.cma now also need dynlink.cma. @ text @d1 1 a1 1 $NetBSD$ d3 2 a4 2 --- byterun/Makefile.orig 2009-05-25 14:25:25.000000000 +0200 +++ byterun/Makefile 2009-06-09 10:51:23.000000000 +0200 d10 2 a11 2 +CFLAGS+=-DCAML_NAME_SPACE $(BYTECCCOMPOPTS) $(IFLEXDIR) DFLAGS=-DCAML_NAME_SPACE -g -DDEBUG $(BYTECCCOMPOPTS) d19 1 a19 1 + ${BSD_INSTALL_PROGRAM} libcamlrun_shared.so $(LIBDIR)/libcamlrun_shared.so; fi @ 1.6 log @Changes 3.09.1: * Bug fixes * New features: - otherlibs/labltk: browser uses menu bars instead of menu buttons Changes 3.09.0: Language features: - Introduction of private row types, for abstracting the row in object and variant types. Type checking: - Polymorphic variants with at most one constructor [< `A of t] are no longer systematically promoted to the exact type [`A of t]. This was more confusing than useful, and created problems with private row types. Native-code compiler (ocamlopt): * Revised implementation of the -pack option (packing of several compilation units into one). The .cmx files that are to be packed with "ocamlopt -pack -o P.cmx" must be compiled with "ocamlopt -for-pack P". In exchange for this additional constraint, ocamlopt -pack is now available on all platforms (no need for binutils). * Fixed wrong evaluation order for arguments to certain inlined functions. * Other (see 'Changes') @ text @d3 3 a5 4 --- byterun/Makefile.orig 2005-11-29 12:57:49.000000000 +0100 +++ byterun/Makefile @@@@ -16,7 +16,7 @@@@ include ../config/Makefile d7 4 a10 3 CC=$(BYTECC) -CFLAGS=-DCAML_NAME_SPACE -O $(BYTECCCOMPOPTS) +CFLAGS+=-DCAML_NAME_SPACE $(BYTECCCOMPOPTS) d13 2 a14 3 OBJS=interp.o misc.o stacks.o fix_code.o startup.o main.o \ @@@@ -48,14 +48,14 @@@@ ocamlrund$(EXE): libcamlrund.a prims.o prims.o libcamlrund.a $(BYTECCLIBS) d16 4 a19 13 install: - cp ocamlrun$(EXE) $(BINDIR)/ocamlrun$(EXE) - cp libcamlrun.a $(LIBDIR)/libcamlrun.a + ${BSD_INSTALL_PROGRAM} ocamlrun$(EXE) $(BINDIR)/ocamlrun$(EXE) + ${BSD_INSTALL_DATA} libcamlrun.a $(LIBDIR)/libcamlrun.a cd $(LIBDIR); $(RANLIB) libcamlrun.a - if test -d $(LIBDIR)/caml; then : ; else mkdir $(LIBDIR)/caml; fi + if test -d $(LIBDIR)/caml; then : ; else ${BSD_INSTALL_DATA_DIR} $(LIBDIR)/caml; fi for i in $(PUBLIC_INCLUDES); do \ sed -f ../tools/cleanup-header $$i > $(LIBDIR)/caml/$$i; \ done - cp ld.conf $(LIBDIR)/ld.conf + ${BSD_INSTALL_DATA} ld.conf $(LIBDIR)/ld.conf d21 2 a22 2 ld.conf: ../config/Makefile echo "$(STUBLIBDIR)" >ld.conf @ 1.5 log @Changes 3.08.3: New features: - support for ocamlopt -pack under Mac OS X (PR#2634, PR#3320) - ignore unknown warning options for forward and backward compatibility - runtime: export caml_compare_unordered (PR#3479) - camlp4: install argl.* files (PR#3439) - ocamldoc: add -man-section option - labltk: add the "solid" relief option (PR#3343) - compiler: ocamlc -i now prints variance annotations Bug fixes: - typing: fix unsoundness in type declaration variance inference. Type parameters which are constrained must now have an explicit variant annotation, otherwise they are invariant. This is not backward compatible, so this might break code which either uses subtyping or uses the relaxed value restriction (i.e. was not typable before 3.07) - typing: erroneous partial match warning for polymorphic variants (PR#3424) - runtime: handle the case of an empty command line (PR#3409, PR#3444) - stdlib: make Sys.executable_name an absolute path in native code (PR#3303) - runtime: fix memory leak in finalise.c - runtime: auto-trigger compaction even if gc is called manually (PR#3392) - stdlib: fix segfault in Obj.dup on zero-sized values (PR#3406) - camlp4: correct parsing of the $ identifier (PR#3310, PR#3469) - windows (MS tools): use link /lib instead of lib (PR#3333) - windows (MS tools): change default install destination - autoconf: better checking of SSE2 instructions (PR#3329, PR#3330) - graphics: make close_graph close the X display as well as the window (PR#3312) - num: fix big_int_of_string (empty string) (PR#3483) - num: fix big bug on 64-bit architecture (PR#3299) - str: better documentation of string_match and string_partial_match (PR#3395) - unix: fix file descriptor leak in Unix.accept (PR#3423) - unix: miscellaneous clean-ups - unix: fix documentation of Unix.tm (PR#3341) - graphics: fix problem when allocating lots of images under Windows (PR#3433) - compiler: fix error message with -pack when .cmi is missing (PR#3028) - cygwin: fix problem with compilation of camlheader (PR#3485) - stdlib: Filename.basename doesn't return an empty string any more (PR#3451) - stdlib: better documentation of Open_excl flag (PR#3450) - ocamlcp: accept -thread option (PR#3511) - ocamldep: handle spaces in file names (PR#3370) - compiler: remove spurious warning in pattern-matching on variants (PR#3424) - windows: better handling of InterpreterPath registry entry (PR#3334, PR#3432) @ text @d3 1 a3 1 --- byterun/Makefile.orig 2004-08-20 15:11:36.000000000 +0000 d31 1 a31 1 ld.conf: @ 1.4 log @- Update from 3.06 to 3.08.2 - Lots of changes/bugfixes - see Changes for all the details @ text @d3 12 a14 3 --- byterun/Makefile.orig 2004-07-16 17:11:33.000000000 +0100 +++ byterun/Makefile 2004-10-15 16:08:41.000000000 +0100 @@@@ -48,14 +48,14 @@@@ @ 1.3 log @Fix various issues with this package: - split patches files - always enable threading which has various advantages - it fixes the build of the Tk library - it greatly simplifies the package list handling - it provides threading support under NetBSD 1.6/1.6.x - correct default dependence in "buildlink2.mk" to "build" Bump package revision because of all these changes. @ text @d3 3 a5 3 --- byterun/Makefile.orig Thu Apr 18 09:27:36 2002 +++ byterun/Makefile Thu Apr 22 10:34:37 2004 @@@@ -48,10 +48,10 @@@@ d19 5 @ 1.2 log @Remove unnecessary register store in the profiling prologue. @ text @d3 4 a6 3 --- asmrun/power-bsd.S.orig +++ asmrun/power-bsd.S @@@@ -13,6 +13,35 @@@@ d8 11 a18 95 /* $Id: power-elf.S,v 1.14 2002/02/08 16:55:32 xleroy Exp $ */ +#if defined(PROFILING) +#define PROFILE_CAML \ + stwu 1, -32(1) \ + mflr 0 \ + stw 0, 4(1) \ + stw 2, 8(1) \ + stw 3, 12(1) \ + stw 4, 16(1) \ + stw 5, 20(1) \ + stw 6, 24(1) \ + stw 7, 28(1) \ + bl _mcount \ + lwz 2, 8(1) \ + lwz 3, 12(1) \ + lwz 4, 16(1) \ + lwz 5, 20(1) \ + lwz 6, 24(1) \ + lwz 7, 28(1) \ + addic 1, 1, 32 + +#define PROFILE_C \ + mflr 0 \ + stw 0, 4(1) \ + bl _mcount +#else +#define PROFILE_CAML +#define PROFILE_C +#endif + #define Addrglobal(reg,glob) \ addis reg, 0, glob@@ha; \ addi reg, reg, glob@@l @@@@ -30,6 +59,7 @@@@ .globl caml_call_gc .type caml_call_gc, @@function caml_call_gc: + PROFILE_CAML /* Set up stack frame */ stwu 1, -0x1A0(1) /* 0x1A0 = 4*32 (int regs) + 8*32 (float regs) + 32 (space for C call) */ @@@@ -182,6 +212,7 @@@@ .globl caml_c_call .type caml_c_call, @@function caml_c_call: + PROFILE_CAML /* Save return address */ mflr 25 /* Get ready to call C function (address in 11) */ @@@@ -210,6 +241,7 @@@@ .globl raise_caml_exception .type raise_caml_exception, @@function raise_caml_exception: + PROFILE_C /* Reload Caml global registers */ Loadglobal(1, caml_exception_pointer, 11) Loadglobal(31, young_ptr, 11) @@@@ -230,6 +262,7 @@@@ .globl caml_start_program .type caml_start_program, @@function caml_start_program: + PROFILE_C Addrglobal(12, caml_program) /* Code shared between caml_start_program and callback */ @@@@ -380,6 +413,7 @@@@ .globl callback_exn .type callback_exn, @@function callback_exn: + PROFILE_C /* Initial shuffling of arguments */ mr 0, 3 /* Closure */ mr 3, 4 /* Argument */ @@@@ -390,6 +424,7 @@@@ .globl callback2_exn .type callback2_exn, @@function callback2_exn: + PROFILE_C mr 0, 3 /* Closure */ mr 3, 4 /* First argument */ mr 4, 5 /* Second argument */ @@@@ -400,6 +435,7 @@@@ .globl callback3_exn .type callback3_exn, @@function callback3_exn: + PROFILE_C mr 0, 3 /* Closure */ mr 3, 4 /* First argument */ mr 4, 5 /* Second argument */ @@@@ -418,4 +454,3 @@@@ .long .L105 + 4 /* return address into callback */ .short -1 /* negative size count => use callback link */ .short 0 /* no roots here */ - @ 1.1 log @* Add support for the profiler on powerpc * Fix i386 profiling. NetBSD calls __mcount while FreeBSD calls .mcount @ text @d5 1 a5 1 @@@@ -13,6 +13,36 @@@@ a11 1 + stw 1, 0(3) \ d41 1 a41 1 @@@@ -30,6 +60,7 @@@@ d49 1 a49 1 @@@@ -182,6 +213,7 @@@@ d57 1 a57 1 @@@@ -210,6 +242,7 @@@@ d65 1 a65 1 @@@@ -230,6 +263,7 @@@@ d73 1 a73 1 @@@@ -380,6 +414,7 @@@@ d81 1 a81 1 @@@@ -390,6 +425,7 @@@@ d89 1 a89 1 @@@@ -400,6 +436,7 @@@@ d97 1 a97 1 @@@@ -418,4 +455,3 @@@@ @