ocaml/i386 Re: CVS: cvs.openbsd.org: ports

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

ocaml/i386 Re: CVS: cvs.openbsd.org: ports

Stuart Henderson
Broken on i386; LDFLAGS is no longer getting passed to the linker in
some places.

cc -O2 -pipe   -fno-strict-aliasing -fwrapv -shared -o libasmrun_shared.so startup_aux.pic.o startup.pic.o main.pic.o
fail.pic.o roots.pic.o signals.pic.o signals_asm.pic.o misc.pic.o freelist.pic.o major_gc.pic.o minor_gc.pic.o memory.
pic.o alloc.pic.o compare.pic.o ints.pic.o floats.pic.o str.pic.o array.pic.o io.pic.o extern.pic.o intern.pic.o hash.
pic.o sys.pic.o parsing.pic.o gc_ctrl.pic.o md5.pic.o obj.pic.o lexing.pic.o unix.pic.o printexc.pic.o callback.pic.o
weak.pic.o compact.pic.o finalise.pic.o custom.pic.o globroots.pic.o backtrace_prim.pic.o backtrace.pic.o natdynlink.p
ic.o debugger.pic.o meta.pic.o dynlink.pic.o clambda_checks.pic.o spacetime.pic.o spacetime_snapshot.pic.o afl.pic.o b
igarray.pic.o i386.pic.o -lm
ld: error: can't create dynamic relocation R_386_32 against symbol: caml_last_return_address in readonly segment; reco
mpile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output
>>> defined in roots.pic.o
>>> referenced by i386.S
>>>               i386.pic.o:(.text+0x4)

ld: error: can't create dynamic relocation R_386_32 against symbol: caml_bottom_of_stack in readonly segment; recompil
e object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output
>>> defined in roots.pic.o
>>> referenced by i386.S
>>>               i386.pic.o:(.text+0xD)

[...]



On 2019/03/04 05:51, Christopher Zimmermann wrote:

> CVSROOT: /cvs
> Module name: ports
> Changes by: [hidden email] 2019/03/04 05:51:17
>
> Modified files:
> devel/cil      : Makefile distinfo
> devel/cil/patches: patch-Makefile_in patch-bin_CilConfig_pm_in
> devel/cil/pkg  : PFRAG.native PLIST
> devel/coccinelle: Makefile distinfo
> devel/coccinelle/patches: patch-Makefile patch-cocci_ml
>                          patch-commons_common_ml
> devel/coccinelle/pkg: PLIST
> devel/cudf     : Makefile
> devel/dune     : Makefile distinfo
> devel/dune/pkg : PLIST
> devel/frama-c  : Makefile distinfo
> devel/frama-c/pkg: PFRAG.dynlink-native PFRAG.native
>                   PFRAG.no-native PLIST
> devel/ocaml-cppo: Makefile distinfo
> devel/ocaml-cppo/pkg: PFRAG.dynlink-native PFRAG.native PLIST
> devel/ocaml-dose: Makefile distinfo
> devel/ocaml-dose/patches: patch-Makefile
> devel/ocaml-dose/pkg: PFRAG.dynlink-native PFRAG.native PLIST
> devel/ocaml-jsonm: Makefile distinfo
> devel/ocaml-jsonm/pkg: PLIST
> devel/ocaml-menhir: Makefile distinfo
> devel/ocaml-menhir/pkg: PLIST
> devel/ocaml-ocamlbuild: Makefile distinfo
> devel/ocaml-ocamlbuild/patches: patch-configure_make
> devel/ocaml-ocamlbuild/pkg: PFRAG.native PLIST
> devel/ocaml-parmap: Makefile distinfo
> devel/ocaml-parmap/pkg: PFRAG.native PLIST
> devel/ocaml-re : Makefile distinfo
> devel/ocaml-re/pkg: PFRAG.dynlink-native PFRAG.native PLIST
> devel/ocaml-uutf: Makefile distinfo
> devel/ocaml-uutf/pkg: PLIST
> devel/omake    : Makefile distinfo
> devel/omake/patches: patch-lib_build_OCaml_om
> devel/omake/pkg: PLIST
> devel/ounit    : Makefile distinfo
> devel/ounit/pkg: PLIST
> lang/ocaml     : Makefile distinfo
> lang/ocaml/patches: patch-configure
> lang/ocaml/pkg : PFRAG.dynlink-native-main PFRAG.native-main
>                 PLIST-graphics PLIST-main
> lang/ocaml-camlp4: Makefile distinfo
> lang/ocaml-camlp5: Makefile distinfo
> lang/ocaml-camlp5/patches: patch-etc_Makefile
> lang/ocaml-camlp5/pkg: PLIST
> math           : Makefile
> math/coq       : Makefile distinfo
> math/coq/pkg   : PFRAG.dynlink-native PFRAG.native PLIST
> math/ocaml-num : Makefile
> math/ocaml-zarith: Makefile
> net/mldonkey   : Makefile
> net/mldonkey/patches: patch-config_Makefile_in
> net/unison     : Makefile.inc
> net/unison/2.4x: Makefile distinfo
> net/unison/2.5x: Makefile
> sysutils/findlib: Makefile distinfo
> sysutils/findlib/pkg: PFRAG.dynlink-native PFRAG.native PLIST
> sysutils/opam  : Makefile distinfo
> textproc/hevea : Makefile distinfo
> textproc/hevea/pkg: PLIST
> x11/lablgtk2   : Makefile distinfo
> Added files:
> devel/cil/patches: patch-_tags patch-myocamlbuild_ml
>                   patch-src__tags patch-src_cil_mllib
> devel/coccinelle/patches: patch-bundles_pyml_Makefile
>                          patch-configure
>                          patch-parsing_c_Makefile
>                          patch-parsing_c_unparse_c_ml
>                          patch-tools_spgen_source_Makefile
>                          patch-tools_spgen_source_spgen_test_ml
> devel/coccinelle/pkg: PFRAG.dynlink-native PFRAG.native
>                      PFRAG.no-native
> devel/frama-c/patches: patch-Makefile patch-configure_in
> devel/ocaml-dose/patches: patch-common_criteria_lexer_mll
>                          patch-configure
> devel/ocaml-re/patches: patch-lib_jbuild
> devel/omake/patches: patch-doc_OMakefile
> lang/ocaml-camlp5/patches: patch-configure
> math/coq       : sort_PLIST.sed
> math/coq/patches: patch-Makefile_ide patch-Makefile_install
>                  patch-configure_ml
> math/coq/pkg   : PFRAG.no-native
> net/unison/2.4x/patches: patch-uigtk2_ml
> net/unison/2.5x/patches: patch-uigtk2_ml
> sysutils/findlib/files: META.uchar
> sysutils/opam/patches: patch-src_ext_Makefile
> sysutils/opam/pkg: DESCR PLIST
> Removed files:
> sysutils/findlib/patches: patch-Makefile
>
> Log message:
> Upgrade OCaml and dependent ports
>
> testing and OKs by avsm@, jca@, krw@ Thanks a lot !
>

Reply | Threaded
Open this post in threaded view
|

Re: ocaml/i386 Re: CVS: cvs.openbsd.org: ports

Christopher Zimmermann-2
On Fri, 8 Mar 2019 00:19:24 +0000
Stuart Henderson <[hidden email]> wrote:

> Broken on i386; LDFLAGS is no longer getting passed to the linker in
> some places.

I tested the improved patch below successfully on i386. It failed once
with a "Sys_error: Permission denied", but I could not reproduce this
error. OK?

Christopher


Index: patch-configure
===================================================================
RCS file: /cvs/ports/lang/ocaml/patches/patch-configure,v
retrieving revision 1.23
diff -u -p -r1.23 patch-configure
--- patch-configure 4 Mar 2019 12:51:14 -0000 1.23
+++ patch-configure 8 Mar 2019 21:26:18 -0000
@@ -25,7 +25,7 @@ Index: configure
      |*-*-openbsd*|*-*-netbsd*|*-*-dragonfly*|*-*-gnu*|*-*-haiku*)
        sharedcccompopts="-fPIC"
 -      mksharedlib="$cc -shared"
-+      mksharedlib="$cc $common_cflags -shared"
++      mksharedlib="$cc $common_cflags $ldflags -shared"
        ldflags="$ldflags -Wl,-E"
 +      mkexe="$cc $ldflags"
        rpath="-Wl,-rpath,"

--
http://gmerlin.de
OpenPGP: http://gmerlin.de/christopher.pub
CB07 DA40 B0B6 571D 35E2  0DEF 87E2 92A7 13E5 DEE1

attachment0 (849 bytes) Download Attachment