From e7f0e71c179b9fc92988f2a67271280252575b8b532f522f9ed279436ae3b01d Mon Sep 17 00:00:00 2001 From: Olaf Hering Date: Mon, 30 Sep 2019 14:23:43 +0000 Subject: [PATCH] - Increase ulimit -s on ppc64 in dune macros Required for at least ocaml-camomile - Show external-lib-deps also for dune runtest - Provide a ocaml_create_file_list macro - Optional extra args for dune commands - Pass --verbose to dune commands - moved ocaml-rpm-macros from ocaml.spec to separate pkg OBS-URL: https://build.opensuse.org/package/show/devel:languages:ocaml/ocaml-rpm-macros?expand=0&rev=1 --- .gitattributes | 23 ++ .gitignore | 1 + ocaml-rpm-macros.changes | 706 +++++++++++++++++++++++++++++++++++++++ ocaml-rpm-macros.spec | 222 ++++++++++++ 4 files changed, 952 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 ocaml-rpm-macros.changes create mode 100644 ocaml-rpm-macros.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/ocaml-rpm-macros.changes b/ocaml-rpm-macros.changes new file mode 100644 index 0000000..9b2f830 --- /dev/null +++ b/ocaml-rpm-macros.changes @@ -0,0 +1,706 @@ +------------------------------------------------------------------- +Mon Sep 30 14:15:16 UTC 2019 - ohering@suse.de + +- Increase ulimit -s on ppc64 in dune macros + Required for at least ocaml-camomile +- Show external-lib-deps also for dune runtest +- Provide a ocaml_create_file_list macro +- Optional extra args for dune commands +- Pass --verbose to dune commands + +------------------------------------------------------------------- +Mon Sep 30 12:34:56 UTC 2019 - ohering@suse.de + +- moved ocaml-rpm-macros from ocaml.spec to separate pkg + +------------------------------------------------------------------- +Tue Sep 24 16:55:33 UTC 2019 - ohering@suse.de + +- Provide various macros to unify dune $cmd usage + +------------------------------------------------------------------- +Mon Sep 23 16:35:39 UTC 2019 - ohering@suse.de + +- Disable LTO for all packages that use ocaml_preserve_bytecode + +------------------------------------------------------------------- +Fri Aug 30 14:37:07 UTC 2019 - Stefan BrĂ¼ns + +- Use separate package for emacs mode files, following upstreams + move of the files to a separate repository + (https://github.com/ocaml/ocaml/pull/2182). This reduces the + build dependency chain of OCaml significantly, and in turn of + every package depending on OCaml. +- Move caml-mode specific patches to new package: + * ocaml-3.00-camldebug_el.patch + * ocaml-3.04-ocamltags--no-site-start.patch + * ocaml-3.09-emacs_localcompile.patch + +------------------------------------------------------------------- +Thu Aug 22 11:16:03 UTC 2019 - ohering@suse.de + +- Move /etc/rpm/macros.ocaml to /usr/lib/rpm/macros.d/macros.ocaml + +------------------------------------------------------------------- +Wed Apr 24 18:27:34 UTC 2019 - ohering@suse.de + +- Disable LTO (bsc#1133269) + +------------------------------------------------------------------- +Mon Jul 2 12:29:28 UTC 2018 - guillaume.gardet@opensuse.org + +- Tag license files with %license, not %doc +- Backport patch to fix build on aarch64: 'AArch64 GOT fixed' + https://github.com/ocaml/ocaml/pull/1330: + * ocaml-fix_aarch64_build.patch + (bsc#1151745) + +------------------------------------------------------------------- +Tue Apr 24 14:26:24 UTC 2018 - kstreitova@suse.com + +- update ocaml-4.05.0-CVE-2018-9838.patch that causes "undefined + reference to `caml_umul_overflow`" build failure. Replace this + function that is not available in ocaml 4.05 (added in ocaml + 4.06) with the present caml_ba_multov() that is basically the + same [bnc#1088591] [CVE-2018-9838] + +------------------------------------------------------------------- +Fri Apr 13 14:08:55 UTC 2018 - kstreitova@suse.com + +- add ocaml-4.05.0-CVE-2018-9838.patch to fix integer overflows + when unmarshaling a bigarray. Malicious or corrupted marshaled + data can result in a bigarray with impossibly large dimensions + that cause overflow when computing the in-memory size of the + bigarray. Disaster ensues when the data is read in a too small + memory area [bnc#1088591] [CVE-2018-9838] + +------------------------------------------------------------------- +Wed Apr 4 09:20:09 UTC 2018 - kstreitova@suse.com + +- run spec-cleaner +- update URL to www.ocaml.org +- the language is officially called OCaml and not Objective Caml, + rename it in summaries and descriptions +- tweak summaries and descriptions +- remove definition of %{_rpmconfigdir} macro - it should be + defined on all distros by default now + +------------------------------------------------------------------- +Wed Apr 4 06:57:00 UTC 2018 - ohering@suse.de + +- Remove info and html documentation because it is not as free + as it should be. Drop ocaml-docs package. (bsc#1080640) +- adjust ocaml-3.09-emacs_localcompile.patch and + ocaml-3.08.3-gcc4.patch for autosetup + +------------------------------------------------------------------- +Thu Aug 10 14:49:59 UTC 2017 - ohering@suse.de + +- Provide ocaml(ocaml_base_version) for camlp4 + +------------------------------------------------------------------- +Tue Jul 25 13:04:54 UTC 2017 - ohering@suse.de + +- Use Group: Development/Languages/OCaml + +------------------------------------------------------------------- +Mon Jul 17 20:24:18 UTC 2017 - ohering@suse.de + +- update version 4.05.0 + * http://caml.inria.fr/pub/distrib/ocaml-4.05/notes/Changes +- build with -no-cplugins (CVE-2017-9772) + +------------------------------------------------------------------- +Mon Jul 17 10:48:58 UTC 2017 - ohering@suse.de + +- Remove autodeps for pre openSUSE 12.1 releases + +------------------------------------------------------------------- +Tue Jun 6 19:21:06 UTC 2017 - ohering@suse.de + +- Clear _find_debuginfo_dwz_opts to avoid file conflicts due + to identical contents in .dwz sections + +------------------------------------------------------------------- +Wed May 31 10:46:48 UTC 2017 - ohering@suse.de + +- Install libasmrun_pic to fix build with gcc7 + +------------------------------------------------------------------- +Thu Jun 30 06:11:26 UTC 2016 - ohering@suse.de + +- Correct .TH macro creation in ocamldoc (ocaml#7281) + ocamldoc-man-th.patch + +------------------------------------------------------------------- +Thu Jun 16 14:26:17 UTC 2016 - ohering@suse.de + +- Install ocamltags in emacs site-lisp, do not add a shebang anymore + +------------------------------------------------------------------- +Mon Jun 13 14:02:36 UTC 2016 - ohering@suse.de + +- Provide various macros to unify oasis ocaml setup.ml $cmd usage + +------------------------------------------------------------------- +Tue Jun 7 11:11:04 UTC 2016 - ohering@suse.de + +- ocaml-compiler-libs requires ncurses-devel for some bytecode + compilation + +------------------------------------------------------------------- +Fri May 27 16:32:01 UTC 2016 - ohering@suse.de + +- Add Provides/Requires for ocamlfind() from META files + +------------------------------------------------------------------- +Wed May 18 21:44:47 UTC 2016 - ohering@suse.de + +- update version 4.03.0 (fate#320836) + * http://caml.inria.fr/pub/distrib/ocaml-4.03/notes/Changes + drop ocaml-ppc64.patch + drop ocaml-ppc64le.patch + drop ocaml-arch-rlimit-stacksize.patch + drop ocaml-4.02.3-bufferoverflow_infoleak.patch + +------------------------------------------------------------------- +Wed May 4 13:49:38 UTC 2016 - kstreitova@suse.com + +- add ocaml-4.02.3-bufferoverflow_infoleak.patch to prevent buffer + overflow and information leak [bsc#977990], [CVE-2015-8869] +- use spec-cleaner to clean the specfile + +------------------------------------------------------------------- +Wed Nov 11 09:58:32 UTC 2015 - ohering@suse.de + +- Increase rlimit stack size on ppc64 + ocaml-arch-rlimit-stacksize.patch + +------------------------------------------------------------------- +Tue Nov 10 10:18:47 UTC 2015 - ohering@suse.de + +- Add hardcoded Provides for pre 12.1 repos + +------------------------------------------------------------------- +Wed Sep 16 06:12:49 UTC 2015 - ohering@suse.de + +- update version 4.02.3 + * http://caml.inria.fr/pub/distrib/ocaml-4.02/notes/Changes + +------------------------------------------------------------------- +Tue Aug 4 08:05:33 UTC 2015 - kstreitova@suse.com + +- use spec-cleaner + +------------------------------------------------------------------- +Tue Jun 23 08:50:31 UTC 2015 - ohering@suse.de + +- update version 4.02.2 + * http://caml.inria.fr/pub/distrib/ocaml-4.02/notes/Changes + +------------------------------------------------------------------- +Thu Oct 23 10:49:37 UTC 2014 - ohering@suse.de + +- Recognize macros provided by prjconf to disable ocamlopt and + run testsuite + +------------------------------------------------------------------- +Thu Oct 23 10:47:28 UTC 2014 - ohering@suse.de + +- New subpackage ocaml-rpm-macros + +------------------------------------------------------------------- +Wed Oct 22 14:42:09 UTC 2014 - ohering@suse.de + +- update version 4.02.1 + * http://caml.inria.fr/pub/distrib/ocaml-4.02/notes/Changes + +------------------------------------------------------------------- +Mon Oct 20 09:39:25 UTC 2014 - ohering@suse.de + +- Update ppc64/ppc64le patch (bnc#901836) + +------------------------------------------------------------------- +Wed Oct 8 10:14:20 UTC 2014 - ohering@suse.de + +- update version 4.02.0 + * http://caml.inria.fr/pub/distrib/ocaml-4.02/notes/Changes + drop ocaml-rpath.patch, can be done with make args + drop ocaml-yacc-Use-mkstemp-instead-of-mktemp.patch, upstream + drop unused postscript docs +- Removed Camlp4 and Labltk from the distribution, now available as + third-party software. + +------------------------------------------------------------------- +Wed Aug 27 09:30:55 CEST 2014 - ohering@suse.de + +- Require as/gcc for ocamlopt (bnc#891177) + +------------------------------------------------------------------- +Thu May 1 20:06:12 UTC 2014 - dvaleev@suse.com + +- Enable opt for ppc64le (ocaml-ppc64le.patch) + +------------------------------------------------------------------- +Sat Feb 1 09:33:43 CET 2014 - ohering@suse.de + +- Disable opt on aarch64 + +------------------------------------------------------------------- +Thu Jan 30 11:49:10 CET 2014 - ohering@suse.de + +- Provide ocaml(ocaml.opt)==version if available + +------------------------------------------------------------------- +Fri Dec 6 20:41:25 UTC 2013 - matz@suse.de + +- Disable opt on ppc64le (ocaml-ppc64.patch doesn't support ELVv2) + +------------------------------------------------------------------- +Thu Sep 19 12:01:09 CEST 2013 - ohering@suse.de + +- update version 4.01.0 + * http://caml.inria.fr/pub/distrib/ocaml-4.01/notes/Changes + add ocaml-yacc-Use-mkstemp-instead-of-mktemp.patch + rename obsolete ocaml-rpmoptflags.patch to + ocaml-configure-Allow-user-defined-C-compiler-flags.patch + remove obsolete ocaml-tcl86.patch + remove obsolete ocaml-3.08.3.patch + +------------------------------------------------------------------- +Tue Sep 10 15:37:04 UTC 2013 - guillaume@opensuse.org + +- Fix ARM build + +------------------------------------------------------------------- +Thu Aug 1 15:31:39 UTC 2013 - max@suse.com + +- Added ocaml-tcl86.patch to fix build with Tcl 8.6. + +------------------------------------------------------------------- +Mon Jun 3 09:23:34 CEST 2013 - ohering@suse.de + +- Recompress with xz + +------------------------------------------------------------------- +Fri Mar 22 13:52:52 UTC 2013 - dvaleev@suse.com + +- refresh ocaml-ppc64.patch +- increase stack size for ppc64 +- package back *cmxs files for ppc + +------------------------------------------------------------------- +Thu Feb 21 17:53:47 CET 2013 - ohering@suse.de + +- add hard requires ocaml-compiler-libs in ocaml-camlp4 in + versions before 12.1 due to lack of autorequires in old rpm + +------------------------------------------------------------------- +Thu Feb 21 15:07:04 CET 2013 - ohering@suse.de + +- disable opt on ia64 + +------------------------------------------------------------------- +Fri Feb 15 12:10:35 UTC 2013 - i@marguerite.su + +- update version 4.00.1 + * http://caml.inria.fr/pub/distrib/ocaml-4.00/notes/Changes +- remove ocaml-3.04-info.patch, upstream fixed. +- remove arm-add-type-directive.patch, upstream fixed. + +------------------------------------------------------------------- +Mon Jan 14 10:07:21 CET 2013 - ohering@suse.de + +- change Requires: version-release to just Requires: version + +------------------------------------------------------------------- +Wed Jan 2 17:06:58 CET 2013 - ohering@suse.de + +- update specfile to handle disabled do_opt variable + +------------------------------------------------------------------- +Wed Jun 27 10:51:13 UTC 2012 - dvaleev@suse.com + +- refresh ppc64 patch +- Link dllthreads.so with -lpthread so that pthread_atfork + is included statically. + +------------------------------------------------------------------- +Thu May 10 07:46:01 UTC 2012 - cfarrell@suse.com + +- license update: QPL-1.0 and SUSE-LGPL-2.0-with-linking-exception + Use SPDX format (http://www.spdx.org/licenses). Where there is no + suitable shortname available on spdx.org check the spreadsheet linked at + license.opensuse.org + +------------------------------------------------------------------- +Tue Jan 31 10:53:26 UTC 2012 - dvaleev@suse.com + +- *.cmxs doesn't built for ppc + +------------------------------------------------------------------- +Mon Dec 19 09:55:25 UTC 2011 - coolo@suse.com + +- fix Source references to contain original upstream + +------------------------------------------------------------------- +Mon Nov 14 00:21:40 CET 2011 - dmueller@suse.de + +- add add .type directive for code symbols (needed on arm) + +------------------------------------------------------------------- +Tue Nov 8 12:40:17 UTC 2011 - dvaleev@suse.com + +- enable ppc64 build + +------------------------------------------------------------------- +Thu Sep 15 13:10:33 UTC 2011 - ampsaltis@gmail.com + +- Explicitly require the ocaml-runtime package in the ocaml package + +------------------------------------------------------------------- +Thu Sep 15 01:34:36 UTC 2011 - ampsaltis@gmail.com + +- The ocaml package does not provide the runtime any more. + +------------------------------------------------------------------- +Fri Jul 22 00:23:13 UTC 2011 - ampsaltis@gmail.com + +- Unremove code block regarding removing -fomit-frame-pointer within RPM_OPT_FLAGS for ix86 architectures + +------------------------------------------------------------------- +Thu Jul 21 21:22:02 UTC 2011 - ampsaltis@gmail.com + +- Enable optimizations (Fedora does this) +- More cleanup done + +------------------------------------------------------------------- +Thu Jul 21 15:24:38 UTC 2011 - ampsaltis@gmail.com + +- Clean up spec file +- Remove ocaml-3.12-fix-size-directive.patch + +------------------------------------------------------------------- +Tue Jul 5 14:36:05 UTC 2011 - ampsaltis@gmail.com + +- New upstream version 3.12.1, providing many bugfixes. +- ocaml-3.12-fix-size-directive.patch is no longer needed. + +------------------------------------------------------------------- +Sun Jun 19 03:48:56 UTC 2011 - ampsaltis@gmail.com + +- Add compiler library packages + +------------------------------------------------------------------- +Sun Jun 19 01:01:42 UTC 2011 - ampsaltis@gmail.com + +- Obsolete old "camlp4" package + +------------------------------------------------------------------- +Fri Jun 17 03:25:15 UTC 2011 - ampsaltis@gmail.com + +- Split (and rename) camlp4 package. Add provide for consistency. +- Decomment some stuff. + +------------------------------------------------------------------- +Fri May 27 21:57:20 UTC 2011 - ampsaltis@gmail.com + +- Make the spec work with older versions of RPM +- Split some parts of packages for devel-ness + +------------------------------------------------------------------- +Tue May 24 07:54:53 UTC 2011 - coolo@novell.com + +- add provides required by the rpm-4.9 auto provides + +------------------------------------------------------------------- +Mon May 23 11:43:49 UTC 2011 - coolo@novell.com + +- fix for last change to also include interpreter + +------------------------------------------------------------------- +Sat May 21 13:51:04 CEST 2011 - jslaby@suse.de + +- fix build with rpm 4.9.0 + +------------------------------------------------------------------- +Wed Apr 27 10:02:51 UTC 2011 - vcizek@novell.com + +- license correction to GPLv2 and QPL +- removed author from spec + +------------------------------------------------------------------- +Tue Apr 26 11:43:56 UTC 2011 - idoenmez@novell.com + +- Add ocaml-3.12-fix-size-directive.patch: + incorrect .size directives generated for x86-32 and x86-64 + +------------------------------------------------------------------- +Tue Aug 24 17:52:02 CEST 2010 - anicka@suse.cz + +- update to 3.12.0 + * While fixing PR#4824, also corrected a gaping hole in the type checker, + which allowed instantiating separately object parameters and instance + variables in an interface. This hole was here since the beginning of + ocaml, and as a result many programs using object inheritance in a non + trivial way will need to be corrected. You can look at lablgtk2 for an + example. + * new language features, bugfixes + +------------------------------------------------------------------- +Mon Jan 11 16:19:39 CET 2010 - vuntz@opensuse.org + +- Remove unneeded gtk-devel BuildRequires. + +------------------------------------------------------------------- +Fri Dec 11 11:15:55 CET 2009 - anicka@suse.cz + +- update to 1.11.1 + * bug fixes + * Improved wording of various error messages + * Support for 64-bit mode in Solaris/x86 (PR#4670). + +------------------------------------------------------------------- +Tue Jun 9 16:14:04 CEST 2009 - coolo@novell.com + +- filter out fomit-frame-pointer from rpm_opt_flags to fix build + +------------------------------------------------------------------- +Tue Feb 17 16:15:23 CET 2009 - anicka@suse.cz + +- update to 1.11.0 + * major relase with many changes, language enhancements and bugfixes + * backward incompatible changes: + * 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. + * programs linked with camlp4lib.cma now also need dynlink.cma +- remove type_punning and tk8.5 patches (not needed anymore) +- drop ppc64 patch +- use %fdupes macro to reduce size of the package + +------------------------------------------------------------------- +Thu Jul 24 17:51:37 CEST 2008 - anicka@suse.cz + +- fix loading caml-mode in emacs (bnc#411232) + +------------------------------------------------------------------- +Thu Jul 10 10:20:11 CEST 2008 - olh@suse.de + +- build also on ppc64 (fate#304103) + +------------------------------------------------------------------- +Wed Apr 9 15:35:20 CEST 2008 - anicka@suse.cz + +- update to 3.10.2 + * PR#1217 (partial) Typo in ocamldep man page + * PR#3952 (partial) ocamlopt: allocation problems on ARM + * PR#4339 (continued) ocamlopt: problems on HPPA + * PR#4455 str.mli not installed under Windows + * PR#4473 crash when accessing float array with polymorphic method + * PR#4480 runtime would not compile without gcc extensions + * PR#4481 wrong typing of exceptions with object arguments + * PR#4490 typo in error message + * Random crash on 32-bit when major_heap_increment >= 2^22 + * Big performance bug in Weak hashtables + * Small bugs in the make-package-macosx script + * Bug in typing of polymorphic variants (reported on caml-list) + +------------------------------------------------------------------- +Mon Apr 7 11:54:06 CEST 2008 - anicka@suse.cz + +- fix build for tk 8.5 + +------------------------------------------------------------------- +Mon Mar 10 14:41:05 CET 2008 - anicka@suse.cz + +- update to 3.10.1 + - made configure script work on PlayStation 3 + - ARM port: brought up-to-date for Debian 4.0 (Etch) + - many other small changes and bugfixes in camlp4, ocamlbuild, labltk, + emacs files, + - Added virtual instance variables in classes "val virtual v : t" + * Changed the behaviour of instance variable overriding; the new + definition replaces the old one, rather than creating a new + variable. + - ocamlbuild: compilation manager for OCaml applications and libraries. + See draft documentation at http://gallium.inria.fr/~pouillar/ + * Camlp4: heavily revised implementation, new API. + - Faster type-checking of functor applications. + - Referencing an interface compiled with -rectypes from a module + not compiled with -rectypes is now an error. + - Revised the "fragile matching" warning. + - Print a stack backtrace on an uncaught exception. + (Compile and link with ocamlopt -g; execute with OCAMLRUNPARAM=b.) + Supported on Intel/AMD in 32 and 64 bits, PPC in 32 and 64 bits. + - Stack overflow detection on MS Windows 32 bits (courtesy O. Andrieu). + - Stack overflow detection on MacOS X PPC and Intel. + - Intel/AMD 64 bits: generate position-independent code by default. + - Fixed bug involving -for-pack and missing .cmx files (PR#4124). + - Fixed bug causing duplication of literals (PR#4152). + - C/Caml interface functions take "char const *" arguments + instead of "char *" when appropriate. + - Faster string comparisons (fast case if strings are ==). + +------------------------------------------------------------------- +Wed Nov 28 18:25:00 CET 2007 - ro@suse.de + +- added -O0 to optflags for now on x86 (#343760) + +------------------------------------------------------------------- +Sun Nov 4 14:37:03 CET 2007 - ro@suse.de + +- updated rpmlintrc + +------------------------------------------------------------------- +Fri Jun 15 11:30:26 CEST 2007 - ro@suse.de + +- clean up specfile a bit (thanks to dirk stoecker) + +------------------------------------------------------------------- +Wed May 16 16:17:21 CEST 2007 - ro@suse.de + +- split up package similar to f-e +- update to 3.09.3 + * featurelist + - ocamldoc: name resolution in cross-referencing {!name}: if name is not + found, then it is searched in the parent module/class, and in the parent + of the parent, and so on until it is found. + - ocamldoc: new option -short-functors to use a short form to display + functors in html generator PR#4017 + - ocamlprof: added "-version" option + - ported to MacOS X on Intel PR#3985 + - configure: added support for GNU Hurd PR#3991 + - otherlibs/labltk: browser uses menu bars instead of menu buttons + - Introduction of private row types, for abstracting the row in object + and variant types. + - configure: find X11 config in some 64-bit Linux distribs + - ocamldoc: (**/**) can be canceled with another (**/**) PR#3665 + - graphics: added resize_window + - graphics: check for invalid arguments to drawing primitives PR#3595 + - ocamlbrowser: use windows subsystem on mingw + * disruptive changes + * 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. + +------------------------------------------------------------------- +Thu Mar 29 12:19:25 CEST 2007 - rguenther@suse.de + +- add emacs site-lisp directories + +------------------------------------------------------------------- +Fri Mar 23 15:08:43 CET 2007 - rguenther@suse.de + +- add gdbm-devel and ncurses-devel BuildRequires + +------------------------------------------------------------------- +Thu Aug 17 17:37:00 CEST 2006 - cthiel@suse.de + +- fix build with X.Org 7.1 + +------------------------------------------------------------------- +Wed Jan 25 21:38:54 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Thu May 12 02:45:17 CEST 2005 - ro@suse.de + +- update to 3.08.3 +- reduce register pressure in bng_ia32.c (thanks to matz) + +------------------------------------------------------------------- +Tue Sep 14 13:17:32 CEST 2004 - jj@suse.de + +- version update (done by pthomas) + +------------------------------------------------------------------- +Wed Apr 28 02:00:57 CEST 2004 - ro@suse.de + +- added -fno-strict-aliasing also to native build + +------------------------------------------------------------------- +Mon Apr 19 09:47:24 CEST 2004 - mmj@suse.de + +- declare void functions as such + +------------------------------------------------------------------- +Sat Jan 10 14:37:55 CET 2004 - adrian@suse.de + +- use x-devel-packages + +------------------------------------------------------------------- +Sat Jun 21 03:09:20 CEST 2003 - mmj@suse.de + +- Own all dirs + +------------------------------------------------------------------- +Wed May 21 15:06:44 CEST 2003 - coolo@suse.de + +- fix man page installation + +------------------------------------------------------------------- +Thu Apr 24 12:20:23 CEST 2003 - ro@suse.de + +- fix install_info --delete call and move from preun to postun + +------------------------------------------------------------------- +Mon Apr 7 09:29:36 CEST 2003 - mmj@suse.de + +- head -1 is head -n 1 with the new coreutils + +------------------------------------------------------------------- +Tue Feb 11 07:39:20 CET 2003 - mmj@suse.de + +- Use %install_info macro [#23440] + +------------------------------------------------------------------- +Tue Sep 17 16:55:25 CEST 2002 - uli@suse.de + +- update -> 3.0.6 (needed for mldonkey) + +------------------------------------------------------------------- +Mon Jun 17 15:47:23 CEST 2002 - meissner@suse.de + +- copy over config.* from libtool repository and other ppc64 fixes. + +------------------------------------------------------------------- +Tue May 28 00:03:55 CEST 2002 - ro@suse.de + +- fix installation in camlp4 directory (bindir was without + buildroot prefix) + +------------------------------------------------------------------- +Fri May 24 17:48:23 CEST 2002 - mmj@suse.de + +- Disabling build of optional architecture specific stuff on plat- + forms where ocaml does not procide the necessary asm parts. + +------------------------------------------------------------------- +Wed May 15 14:12:27 CEST 2002 - schwab@suse.de + +- Fix neededforbuild. + +------------------------------------------------------------------- +Mon May 13 15:27:18 CEST 2002 - mmj@suse.de + +- Update to 3.04, maily bugfix release + +------------------------------------------------------------------- +Tue Jan 15 13:24:12 CET 2002 - schwab@suse.de + +- Fix for ia64. + +------------------------------------------------------------------- +Thu Aug 16 14:24:01 CEST 2001 - grimmer@suse.de + +- initial SuSE package (version 3.02), added to be able to build + package "unison" +- spec file derived from Mandrake Linux source RPM (thanks, pixel!) + diff --git a/ocaml-rpm-macros.spec b/ocaml-rpm-macros.spec new file mode 100644 index 0000000..de90b46 --- /dev/null +++ b/ocaml-rpm-macros.spec @@ -0,0 +1,222 @@ +# +# spec file for package ocaml-rpm-macros +# +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +Name: ocaml-rpm-macros +Version: 20190930 +Release: 0 +Summary: RPM macros for building OCaml source packages +License: GPL-2.0-only +Group: Development/Languages/OCaml +Url: https://build.opensuse.org/project/show/devel:languages:ocaml +# +# keep the following macros in sync with ocaml.spec: +%define do_opt 0 +# macros to be set in prjconf: +#Macros: +#_with_ocaml_force_enable_ocaml_opt 1 +#_with_ocaml_force_disable_ocaml_opt 1 +#_with_ocaml_make_testsuite 1 +#:Macros +%bcond_with ocaml_force_enable_ocaml_opt +%bcond_with ocaml_force_disable_ocaml_opt +%bcond_with ocaml_make_testsuite +%if %{with ocaml_force_enable_ocaml_opt} +%define do_opt 1 +%endif +%if %{without ocaml_force_enable_ocaml_opt} +%ifarch %{arm} aarch64 %{ix86} ppc ppc64 ppc64le s390x x86_64 +%define do_opt 1 +%endif +%endif +# +%if %{with ocaml_force_disable_ocaml_opt} +%define do_opt 0 +%endif +# + +%description +OCaml is a high-level, strongly-typed, functional and object-oriented +programming language from the ML family of languages. + +This package contains a set of helper macros to unify common code used +in ocaml spec files. + +%prep + +%build + +%install +# install OCaml macros +mkdir -vp %{buildroot}%{_rpmconfigdir}/macros.d +tee %{buildroot}%{_rpmconfigdir}/macros.d/macros.%{name} <<'_EOF_' +# get rid of %{_rpmconfigdir}/find-debuginfo.sh +# strip kills the bytecode part of ELF binaries +# +# provide empty _find_debuginfo_dwz_opts +# the .dwz files contains identical contents, which leads to identical +# checksums, which leads to file conflicts due to identical symlinks +%if %{do_opt} +%%ocaml_preserve_bytecode \ + %%define _lto_cflags %%{nil} \ + %%{nil} +%%ocaml_native_compiler 1 +%%_find_debuginfo_dwz_opts %%{nil} +%else +%%ocaml_preserve_bytecode \ + %%undefine _build_create_debug \ + %%define __arch_install_post export NO_BRP_STRIP_DEBUG=true \ + %%define _lto_cflags %%{nil} \ + %%{nil} +%%ocaml_native_compiler 0 +%endif + +# Create file list for base pkg and base-devel pkg +# Files with known extensions or names are written to 'files' or 'files.devel' +# Other unknown files are shown on stdout +%%ocaml_create_file_list \ + > %%{name}.files ;\ + > %%{name}.files.devel ;\ + find %%{buildroot}$(ocamlc -where) | sed -ne '\ + s@^%%{buildroot}@@\ + /\\/\\(META\\|dune-package\\|opam\\)$/{\ + w %%{name}.files.devel\ + s@\\/[^/]\\+$@@\ + s@^@%%dir @\ + w %%{name}.files.devel\ + s@\\/[^/]\\+$@@\ + w %%{name}.files.devel\ + d\ + }\ + /\\/[^/]\\+\\.\\(a\\|annot\|cmx\\|cmxa\\|cma\\|cmi\\|cmt\\|cmti\\|exe\\|h\\|ml\\|mli\\)$/{\ + w %%{name}.files.devel\ + s@\\/[^/]\\+$@@\ + s@^@%%dir @\ + w %%{name}.files.devel\ + s@\\/[^/]\\+$@@\ + w %%{name}.files.devel\ + d\ + }\ + /\\/[^/]\\+\\.\\(cmxs\\|so\\)$/{\ + w %%{name}.files\ + s@\\/[^/]\\+$@@\ + s@^@%%dir @\ + w %%{name}.files\ + s@\\/[^/]\\+$@@\ + w %%{name}.files\ + d\ + }\ + p\ + ' ;\ + for i in %%{name}.files %%{name}.files.devel ;\ + do\ + sort -u $i > $$ ;\ + mv $$ $i ;\ + done ;\ + head -n 1234 %%{name}.files %%{name}.files.devel ;\ + %%{nil} + +# setup.ml comes from oasis, but this is here for libs oasis depends on +# +# html goes into a separate, browsable dir +# which is also safe regarding wiping due to %%doc macro usage +%%_oasis_docdir_base %%{_datadir}/doc/ocaml +%%_oasis_docdir_dvi %%{_oasis_docdir_base}/%%{name} +%%_oasis_docdir_html %%{_oasis_docdir_base}/%%{name} +%%_oasis_docdir_pdf %%{_oasis_docdir_base}/%%{name} +%%_oasis_docdir_ps %%{_oasis_docdir_base}/%%{name} +%%oasis_docdir %%{_oasis_docdir_base}/%%{name} +# +# For now provide a convinience macro which covers also the parent dir +%%oasis_docdir_dvi %%dir %%{_oasis_docdir_base} \ +%%{_oasis_docdir_dvi} +%%oasis_docdir_html %%dir %%{_oasis_docdir_base} \ +%%{_oasis_docdir_html} +%%oasis_docdir_pdf %%dir %%{_oasis_docdir_base} \ +%%{_oasis_docdir_pdf} +%%oasis_docdir_ps %%dir %%{_oasis_docdir_base} \ +%%{_oasis_docdir_ps} +# +# various macros to unify setup/build/install +%%oasis_setup \ + oasis setup +%%ocaml_oasis_configure \ +ocaml setup.ml -configure \\\ + --psdir %%{_oasis_docdir_ps} \\\ + --pdfdir %%{_oasis_docdir_pdf} \\\ + --dvidir %%{_oasis_docdir_dvi} \\\ + --htmldir %%{_oasis_docdir_html} \\\ + --docdir %%{oasis_docdir} \\\ + --localedir %%{_datadir}/locale \\\ + --datadir %%{_datadir} \\\ + \\\ + --bindir %%{_bindir} \\\ + --mandir %%{_mandir} \\\ + --destdir %%{buildroot} \\\ + --datarootdir %%{_datadir} \\\ + --infodir %%{_infodir} \\\ + --libdir %%{_libdir} \\\ + --libexecdir %%{_libexecdir} \\\ + --localstatedir %%{_localstatedir} \\\ + --sbindir %%{_sbindir} \\\ + --prefix %%{_prefix} \\\ + --sysconfdir %%{_sysconfdir} \\\ + --exec-prefix %%{_prefix} \\\ + --sharedstatedir %%{_sharedstatedir} +# +%%ocaml_oasis_build \ + ocaml setup.ml -build +%%ocaml_oasis_doc \ + ocaml setup.ml -doc +%%ocaml_oasis_install \ + ocaml setup.ml -install +%%ocaml_oasis_findlib_install \ + export OCAMLFIND_DESTDIR=%%{buildroot}`ocamlc -where` ; \ + export OCAMLFIND_LDCONF=/dev/null ; \ + mkdir -p $OCAMLFIND_DESTDIR ; \ + ocaml setup.ml -install +%%ocaml_oasis_test \ + ocaml setup.ml -test +# +%%ocaml_dune_setup \ +%ifarch ppc64 ppc64le + ulimit -s $((1024 * 64)) ; \ +%endif + dune installed-libraries $OCAML_DUNE_INSTALLED_LIBRARIES_ARGS ; \ + dune external-lib-deps @install $OCAML_DUNE_EXTERNAL_LIB_DEPS_ARGS ; \ + dune external-lib-deps @runtest $OCAML_DUNE_EXTERNAL_LIB_DEPS_ARGS ; \ + %%{nil} +%%ocaml_dune_build \ + dune build --verbose @install $OCAML_DUNE_BUILD_INSTALL_ARGS +%%ocaml_dune_install \ +%ifarch ppc64 ppc64le + ulimit -s $((1024 * 64)) ; \ +%endif + dune install --verbose --destdir=%%{buildroot} $OCAML_DUNE_INSTALL_ARGS ; \ + rm -rfv %%{buildroot}%%{_prefix}/doc +%%ocaml_dune_test \ +%ifarch ppc64 ppc64le + ulimit -s $((1024 * 64)) ; \ +%endif + dune runtest --verbose $OCAML_DUNE_RUNTEST_ARGS +# +# +_EOF_ + +%files +%config %{_rpmconfigdir}/macros.d + +%changelog