[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#837359: marked as done (ocaml: FTBFS on -fPIE binNMU on armhf - test failure)



Your message dated Sun, 06 Nov 2016 11:04:14 +0000
with message-id <E1c3LFG-0005is-Te@fasolo.debian.org>
and subject line Bug#837359: fixed in ocaml 4.02.3-8
has caused the Debian Bug report #837359,
regarding ocaml: FTBFS on -fPIE binNMU on armhf - test failure
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
837359: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=837359
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Source: ocaml
Version: 4.02.3-7
Severity: important
User: balint@balintreczey.hu
Usertags: pie-bindnow-20160906
Justification: makes other ocaml packages FTBFS with extra hardening
Tags: patch
Affects: advi alt-ergo approx ara atdgen ben biniou bin-prot caml2html caml-crush camlimages camlmix camlp5 camomile cduce coccinelle coinst comparelib confluence coq cppo cryptokit cudf custom-printf dochelp dose3 eliom enumerate extlib fieldslib freetennis geneweb gmetadom haxe herelib janest-core janest-core-extended janest-core-kernel js-build-tools js-of-ocaml jsonm kalzium laby lambda-term libguestfs liquidsoap marionnet matita menhir mingw-ocaml misery mlpost monotone-viz mtasc oasis obus ocaml-atd ocaml-base64 ocaml-batteries ocaml-benchmark ocamlbricks ocamlcreal ocaml-csv ocaml-data-notation ocaml-deriving-ocsigen ocamldsort ocaml-estring ocaml-expect ocaml-extunix ocaml-fileutils ocaml-gettext ocamlgraph ocamlgsl ocaml-ipaddr ocaml-libvirt ocaml-melt ocamlmod ocaml-re ocaml-re2 ocaml-reins ocaml-res ocamlrss ocaml-sqlexpr ocaml-sqlite3 ocaml-textutils ocaml-usb ocamlviz ocaml-zarith ocp-indent ocsigenserver opam optcomp orpie ounit pa-bench pagodacf pa-ounit pa-structural-sexp pa-test pcre-ocaml pdfsandwich perl4caml pgocaml pipebang postgresql-ocaml ppx-core ppx-deriving ppx-driver ppx-optcomp ppx-sexp-conv ppx-type-conv prooftree scilab sexplib310 spamoracle supermin type-conv typerep tyxml unison utop uuidm variantslib virt-top why3 wyrd xml-light xmlm yojson zed

Dear Maintainers,

During a rebuild of all packages in sid, many ocaml packages
failed to build on amd64 with patched GCC and dpkg. The root cause
seems to be that libasmrun.a is shipped as a non-PIC library.

The rebuild tested if packages are ready for a transition
enabling PIE and bindnow for amd64.

For more information about the changes to sid's dpkg and GCC please
visit:
https://wiki.debian.org/Hardening/PIEByDefaultTransitio

Relevant part of advi's build log:
...
/usr/bin/ocamlopt -o advi \
         -I /usr/lib/ocaml/camlimages  \
        events.o grwm.o grY11.o /usr/lib/ocaml/camlimages/camlimages_core.cmxa /usr/lib/ocaml/graphics
.cmxa /usr/lib/ocaml/camlimages/camlimages_graphics.cmxa /usr/lib/ocaml/camlimages/camlimages_ps.cmxa 
/usr/lib/ocaml/camlimages/camlimages_freetype.cmxa unix.cmxa str.cmxa config.cmx misc.cmx timeout.cmx 
ageometry.cmx options.cmx rc.cmx userfile.cmx graphicsY11.cmx global_options.cmx busy.cmx gradient.cmx gterm.cmx launch.cmx dvicolor.cmx shot.cmx laser_pointer.cmx symbol.cmx input.cmx table.cmx pkfont.cmx ttfont.cmx jfm.cmx search.cmx font.cmx glyph.cmx devfont.cmx adviUnits.cmx dimension.cmx dvi.cmx drawimage.cmx gs.cmx transimpl.cmx embed.cmx grdev.cmx addons.cmx scratch.cmx cdvi.cmx driver.cmx thumbnails.cmx dviview.cmx main.cmx \
        -cclib -lXinerama -cclib -lcamlimages_freetype
/usr/bin/ld: /usr/lib/ocaml/libasmrun.a(startup.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/ocaml/libasmrun.a(fail.o): relocation R_X86_64_32 against symbol `caml_exn_Failure' can not be used when making a shared object; recompile with -fPIC
...

The full build log is available from:
https://people.debian.org/~rbalint/build-logs/pie-bindnow-20160906/advi_1.10.2-2_amd64.build.gz

The attached patch fixed the problem.

Thanks,
Balint


diff -Nru ocaml-4.02.3/debian/patches/0012-Use-pic.patch ocaml-4.02.3/debian/patches/0012-Use-pic.patch
--- ocaml-4.02.3/debian/patches/0012-Use-pic.patch	1970-01-01 01:00:00.000000000 +0100
+++ ocaml-4.02.3/debian/patches/0012-Use-pic.patch	2016-09-10 13:38:10.000000000 +0200
@@ -0,0 +1,17 @@
+Description: Generate Position Independent Code
+ This is needed for building Position Independent Executables
+Author: Balint Reczey <balint@balintreczey.hu>
+
+--- ocaml-4.02.3.orig/configure
++++ ocaml-4.02.3/configure
+@@ -1015,6 +1015,10 @@ fi
+ bytecccompopts="$bytecccompopts -D_FILE_OFFSET_BITS=64"
+ nativecccompopts="$nativecccompopts -D_FILE_OFFSET_BITS=64"
+ 
++# Use PIC
++
++nativecccompopts="$nativecccompopts -fPIC"
++
+ # Check the semantics of signal handlers
+ 
+ if sh ./hasgot sigaction sigprocmask; then
diff -Nru ocaml-4.02.3/debian/patches/series ocaml-4.02.3/debian/patches/series
--- ocaml-4.02.3/debian/patches/series	2016-07-15 22:20:10.000000000 +0200
+++ ocaml-4.02.3/debian/patches/series	2016-09-10 13:36:09.000000000 +0200
@@ -9,3 +9,4 @@
 0010-Enable-ocamldoc-to-build-reproducible-manpages.patch
 0010-Add-a-.file-directive-to-generated-.s-files.patch
 0011-Compatibility-with-x32-architecture.patch
+0012-Use-pic.patch

--- End Message ---
--- Begin Message ---
Source: ocaml
Source-Version: 4.02.3-8

We believe that the bug you reported is fixed in the latest version of
ocaml, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 837359@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Mehdi Dogguy <mehdi@debian.org> (supplier of updated ocaml package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sun, 06 Nov 2016 11:29:41 +0100
Source: ocaml
Binary: ocaml-nox ocaml ocaml-base-nox ocaml-base ocaml-native-compilers ocaml-source ocaml-interp ocaml-compiler-libs ocaml-mode
Architecture: source amd64 all
Version: 4.02.3-8
Distribution: unstable
Urgency: medium
Maintainer: Debian OCaml Maintainers <debian-ocaml-maint@lists.debian.org>
Changed-By: Mehdi Dogguy <mehdi@debian.org>
Description:
 ocaml      - ML language implementation with a class-based object system
 ocaml-base - Runtime system for OCaml bytecode executables
 ocaml-base-nox - Runtime system for OCaml bytecode executables (no X)
 ocaml-compiler-libs - OCaml interpreter and standard libraries
 ocaml-interp - OCaml interactive interpreter and standard libraries
 ocaml-mode - major mode for editing Objective Caml in Emacs
 ocaml-native-compilers - Native code compilers of the OCaml suite (the .opt ones)
 ocaml-nox  - ML implementation with a class-based object system (no X)
 ocaml-source - Sources for Objective Caml
Closes: 837359
Changes:
 ocaml (4.02.3-8) unstable; urgency=medium
 .
   * Default to PIC on arm, to fix failing armhf tests (Closes: #837359).
   * Use secure and canonical URIs for Vcs-* fields
   * Sync Standards-Version's value in debian/control.in
Checksums-Sha1:
 27e87846407854204d9326d2c28e7aca9eb15c5c 2695 ocaml_4.02.3-8.dsc
 2e640afd64af5d68f0430727d35b97978d097f08 46168 ocaml_4.02.3-8.debian.tar.xz
 b6ef2873aa0df2e448948ea8d3ad949f246d2c31 8034 ocaml-base-dbgsym_4.02.3-8_amd64.deb
 e8cf425a2cde7ea8a1ce2e97ee52a62124cc92b4 63158 ocaml-base-nox-dbgsym_4.02.3-8_amd64.deb
 35321ffd583f8455a34e7857c381831f01e346e8 543978 ocaml-base-nox_4.02.3-8_amd64.deb
 38c282f396d4f256b3b6c9ac50f4fa6d43f32551 133150 ocaml-base_4.02.3-8_amd64.deb
 16420aec87e80a62ad6f1a7ebba946507429d23b 9444320 ocaml-compiler-libs_4.02.3-8_amd64.deb
 7f9e801f9182d1bc249f7b53621b3b3f9db8c742 360448 ocaml-interp_4.02.3-8_amd64.deb
 d01c526633c77e203c14823885aa11c612bf8127 136890 ocaml-mode_4.02.3-8_all.deb
 e312dd165cd14447698d3b831954dabc209e0d21 743478 ocaml-native-compilers-dbgsym_4.02.3-8_amd64.deb
 47cb5a3b6fd3b3342ed0e738fb5b871d3d87e7ab 3098526 ocaml-native-compilers_4.02.3-8_amd64.deb
 0cd269fe9327e8c07aea1bcd4601328ad3e302fd 1915284 ocaml-nox-dbgsym_4.02.3-8_amd64.deb
 c6082fcc309bf79a3bfcfb83e4c0c70c68c159fc 5602796 ocaml-nox_4.02.3-8_amd64.deb
 dfef80e996b6ab0743254c9379fc02fa92a2397a 2161230 ocaml-source_4.02.3-8_all.deb
 be093d6a0f0b2f2e52033f45731895d98b89eb09 121090 ocaml_4.02.3-8_amd64.deb
Checksums-Sha256:
 f16922cb7b0c8a90ae48d1495a39b5abc01accb1d54f4bf67f6f0343e469953c 2695 ocaml_4.02.3-8.dsc
 35f27c3b1295a54dc90f94270c3012f72ebd9dfef54c1f448a40dea82f3969c1 46168 ocaml_4.02.3-8.debian.tar.xz
 5f9fd795786865124210d1f5a872dbd4f61ce62da70d55be285b679e12fc1bf4 8034 ocaml-base-dbgsym_4.02.3-8_amd64.deb
 fd7f136d69c83af404293bcee2ff2f3792a4f91ad38a506dcf3b4bcf75034177 63158 ocaml-base-nox-dbgsym_4.02.3-8_amd64.deb
 b7302f89b3877d3a1cebc0322ba54ff14d2523142a450e655230075c64219ce2 543978 ocaml-base-nox_4.02.3-8_amd64.deb
 f3b714d64bcd85828bdb0377be58812416a07a3f1b21e67df6a922ab6114a9df 133150 ocaml-base_4.02.3-8_amd64.deb
 2bc94c2bfd5cb56d0f414715f863f30198115d2a54bbbcbcabb4d969ace6314a 9444320 ocaml-compiler-libs_4.02.3-8_amd64.deb
 0206f2dd323fc62c17d6f3d331109534fe9a3535218e653ca107cdb8bf5830db 360448 ocaml-interp_4.02.3-8_amd64.deb
 a5347b3a05697e1daa2aae55bfe824d50d5fe2804f66ce640495edd4b2429d17 136890 ocaml-mode_4.02.3-8_all.deb
 336d1d7896271b55731f0956c8d49f141104087d3e372536ecfa0227d0434286 743478 ocaml-native-compilers-dbgsym_4.02.3-8_amd64.deb
 e9a47573a1f8db50c66e49a8cdbb5788183a1a15f402630cfe350dd5cb95cf5f 3098526 ocaml-native-compilers_4.02.3-8_amd64.deb
 7a7d269537367966588af08141a2735b8783a2d1f182ae4f769abee95c248ed5 1915284 ocaml-nox-dbgsym_4.02.3-8_amd64.deb
 588f0caefce8949ed905527d897f85c85d53e491feaa9826401639873f21b184 5602796 ocaml-nox_4.02.3-8_amd64.deb
 00dffbef837f2f8db0e76b5d1e8250d662e6169e10b318cf726e19d58619dee1 2161230 ocaml-source_4.02.3-8_all.deb
 f2c951eba1c2d37546493e5df6d4b5634d215b046f8f65711e8f89b37d92c528 121090 ocaml_4.02.3-8_amd64.deb
Files:
 80e69ef28e07515037e877c9cb7ea568 2695 ocaml optional ocaml_4.02.3-8.dsc
 05c773eb5cd7d3084f373ec98953ede9 46168 ocaml optional ocaml_4.02.3-8.debian.tar.xz
 ca7e59a8eb8bf2553c7dde41836fbddb 8034 debug extra ocaml-base-dbgsym_4.02.3-8_amd64.deb
 0447825f56ff136768657c716194231e 63158 debug extra ocaml-base-nox-dbgsym_4.02.3-8_amd64.deb
 63d034d7d49acd95ed2204416d9f7e77 543978 ocaml optional ocaml-base-nox_4.02.3-8_amd64.deb
 eef5488601c6c652186824307610a747 133150 ocaml optional ocaml-base_4.02.3-8_amd64.deb
 f1485306a728993a8471bbe3c720c0c1 9444320 ocaml optional ocaml-compiler-libs_4.02.3-8_amd64.deb
 dcdf4b9f172c6ff5c00c01eb9c7330b8 360448 ocaml optional ocaml-interp_4.02.3-8_amd64.deb
 a8e817bac18968adf51aca3ead5b3bab 136890 ocaml optional ocaml-mode_4.02.3-8_all.deb
 59890a996d4db6db171f0d77c864776a 743478 debug extra ocaml-native-compilers-dbgsym_4.02.3-8_amd64.deb
 f1adebdcc0f1c7e0959002106ca52e08 3098526 ocaml optional ocaml-native-compilers_4.02.3-8_amd64.deb
 16f8569de3d81ac22ccfd7cfa2b9abb9 1915284 debug extra ocaml-nox-dbgsym_4.02.3-8_amd64.deb
 8000c7746541da2c7b7924a62ba1f81a 5602796 ocaml optional ocaml-nox_4.02.3-8_amd64.deb
 4f997648dd2bae6c799bde2c46df2cd2 2161230 ocaml optional ocaml-source_4.02.3-8_all.deb
 a62749d94f72767354c2f9066244afe9 121090 ocaml optional ocaml_4.02.3-8_amd64.deb

-----BEGIN PGP SIGNATURE-----

iQIuBAEBCAAYBQJYHwiAERxtZWhkaUBkZWJpYW4ub3JnAAoJEDO+GgqMLtj/ON8P
/3bZfApV3Lke9y2NGEXIXDz/aKwSA1ZZCbqHHyi2uUU9z0SVWhWl+KLckl0+pwe6
fbkvL20QvhfC32rq/1D73cdVcxq+JugGwPF6PXWMJlghbrW41sPDXAXwzUp5Z8a6
ZnqhENC/z2lB0suo/eslWTF4NeoDtYoTZepeVeQ8iWwHz2oM9hTuFTLfwCMeYDKt
bYVYXeM2FWn1nhKXBypSMMQu7AyNpyypygdazkJy7cZr/B740mY02uCbIbH2+GuF
r/gNo2kQLflZ+3VxYdUUWkqnLYCVgNDXl217rIYBO+seOerlL7PNXTER5ZODo6y2
+JAbzJop68zcihdiRXK6Mqsp7YIvvv9RG8xXi2aATWxfjWXc6WG4TpEJ54OoptDI
jVTNZOWAnyvJrYM1bd+N/hMHv2D342TljNl4Im/k2XiItVfDaeb4xkRliRbq8VbY
5TWluOcGUt6gGf5hCKnnDIPUV0Rz/Fj7cDaVFO23P6ldEP+9ZtvvdC4dNAAerXwS
vNzR1zut94VUbqzKiAeuljMWPmBk2KfJN0eVix5hXsxJqW3PZSES8VJUDx1hvQdi
vWvC5ySbAARB3MAW27gA6PZL0VUtHFusv8PGCS63HlkCe/a86x/QVKSN8N7G96M1
HuG23CB9tFPZVcHxDzpA5xcEK7tby8EkQPHREDZbpu8D
=DJaw
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: