From owner-freebsd-ports-bugs@FreeBSD.ORG Sun Apr 6 22:50:00 2014 Return-Path: Delivered-To: freebsd-ports-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EFDE1E68 for ; Sun, 6 Apr 2014 22:50:00 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CBFDF6BD for ; Sun, 6 Apr 2014 22:50:00 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.8/8.14.8) with ESMTP id s36Mo0LB092414 for ; Sun, 6 Apr 2014 22:50:00 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.8/8.14.8/Submit) id s36Mo0Sm092402; Sun, 6 Apr 2014 22:50:00 GMT (envelope-from gnats) Resent-Date: Sun, 6 Apr 2014 22:50:00 GMT Resent-Message-Id: <201404062250.s36Mo0Sm092402@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Guido Falsi Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A3AC7D28 for ; Sun, 6 Apr 2014 22:46:09 +0000 (UTC) Received: from micro.madpilot.net (micro.madpilot.net [88.149.173.206]) by mx1.freebsd.org (Postfix) with ESMTP id 394CD69F for ; Sun, 6 Apr 2014 22:46:06 +0000 (UTC) Received: from micro.madpilot.net (localhost [127.0.0.1]) by micro.madpilot.net (Postfix) with ESMTP id 3g292n25HDzSN; Mon, 7 Apr 2014 00:45:53 +0200 (CEST) Received: from micro.madpilot.net ([127.0.0.1]) by micro.madpilot.net (micro.madpilot.net [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 7lMc98gSQoFg; Mon, 7 Apr 2014 00:45:46 +0200 (CEST) Received: by micro.madpilot.net (Postfix, from userid 1000) id 3g292f4xZgzSM; Mon, 7 Apr 2014 00:45:46 +0200 (CEST) Message-Id: <3g292f4xZgzSM@micro.madpilot.net> Date: Mon, 7 Apr 2014 00:45:46 +0200 (CEST) From: Guido Falsi To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.114 Subject: ports/188330: lang/ocaml: Fix X11 build on head Cc: michael.grunewald@laposte.net X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list Reply-To: Guido Falsi List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Apr 2014 22:50:01 -0000 >Number: 188330 >Category: ports >Synopsis: lang/ocaml: Fix X11 build on head >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sun Apr 06 22:50:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: Guido Falsi >Release: FreeBSD 10.0-RELEASE amd64 >Organization: none >Environment: System: FreeBSD micro.madpilot.net 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64 >Description: On head for some reason the "-R" option passed in the X11 tests during configure is causing clang to fail the test, and the port does not build the X11 support. This causes a crippled version of ocaml to be installed, unable to compile any further ocam library or program depending on X11. The problem happens during the configure stage, evidence is visible on the build logs on the cluster too: http://beefy2.isc.freebsd.org/bulk/head-amd64-default/2014-04-05_03h54m48s/logs/ocaml-4.00.1_1.log here is the relevant part for reference: hasgot -I/usr/local/include -R/usr/local/lib -L/usr/local/lib -lX11 -i X11/Xlib.h XrmInitialize: cc -O2 -pipe -fno-strict-aliasing -O -I/usr/local/include -R/usr/local/lib -o tst hasgot.c -L/usr/local/lib -lX11 cc: error: unknown argument: '-R/usr/local/lib' Cannot compile X11 program X11 not found, the "graph" library will not be supported. Configuring LablTk... X11 not found or disabled. Configuration failed, LablTk will not be built. hasgot -i bfd.h: cc -O2 -pipe -fno-strict-aliasing -O -o tst hasgot.c hasgot.c:1:10: fatal error: 'bfd.h' file not found #include ^ 1 error generated. BFD library not found, 'objinfo' will be unable to display info on .cmxs files tryassemble: cc -c -o tst cfi.S tryassemble: as -o tst cfi.S Assembler supports CFI ** Configuration summary ** Directories where OCaml will be installed: binaries.................. /usr/local/bin standard library.......... /usr/local/lib/ocaml manual pages.............. /usr/local/man (with extension .1) Configuration for the bytecode compiler: C compiler used........... cc -O2 -pipe -fno-strict-aliasing options for compiling..... -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_THREAD_SAFE options for linking....... -Wl,-E -lm -lcurses -pthread shared libraries are supported options for compiling..... -fPIC -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_THREAD_SAFE command for building...... cc -O2 -pipe -fno-strict-aliasing -shared -o lib.so -Wl,-rpath,/a/path objs Configuration for the native-code compiler: hardware architecture..... amd64 OS variant................ freebsd C compiler used........... cc -O2 -pipe -fno-strict-aliasing options for compiling..... -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_THREAD_SAFE options for linking....... -lm assembler ................ as preprocessed assembler ... cc -c assembler supports CFI ... yes native dynlink ........... true profiling with gprof ..... supported Source-level replay debugger: supported Additional libraries supported: unix str num dynlink bigarray systhreads threads Configuration for the "num" library: target architecture ...... amd64 (asm level 1) The "graph" library: not supported The "labltk" library: not supported ** OCaml configuration completed successfully ** Attached patch fixes this by simply removing the offending line from the configure script. This is the removed line: *-*-*bsd*) x11_link="-R$dir -L$dir -lX11";; Tested in poudriere on all major releases. Tested live on head and 10.0. I could not find documentation on the -R flag, if it is in fact needed in certain circumstances I can modify the patch accordingly. >How-To-Repeat: >Fix: Index: Makefile =================================================================== --- Makefile (revision 350383) +++ Makefile (working copy) @@ -3,7 +3,7 @@ PORTNAME= ocaml PORTVERSION= 4.00.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= lang MASTER_SITES= http://caml.inria.fr/distrib/${DISTNAME:R}/ \ ${MASTER_SITE_GENTOO} Index: files/patch-configure =================================================================== --- files/patch-configure (revision 350383) +++ files/patch-configure (working copy) @@ -1,6 +1,6 @@ ---- configure.orig 2012-06-26 15:33:50.000000000 +0000 -+++ configure -@@ -88,6 +88,8 @@ while : ; do +--- configure.orig 2012-06-26 17:33:50.000000000 +0200 ++++ configure 2014-04-07 00:01:05.620642313 +0200 +@@ -88,6 +88,8 @@ withcurses=no;; -no-shared-libs|--no-shared-libs) withsharedlibs=no;; @@ -9,7 +9,7 @@ -x11include*|--x11include*) x11_include_dir=$2; shift;; -x11lib*|--x11lib*) -@@ -537,9 +539,9 @@ if test $withsharedlibs = "yes"; then +@@ -537,9 +539,9 @@ mksharedlib="$flexlink" mkmaindll="$flexlink -maindll" shared_libraries_supported=true;; @@ -21,7 +21,7 @@ bytecclinkopts="$bytecclinkopts -Wl,-E" byteccrpath="-Wl,-rpath," mksharedlibrpath="-Wl,-rpath," -@@ -549,7 +551,7 @@ if test $withsharedlibs = "yes"; then +@@ -549,7 +551,7 @@ case "$bytecc" in gcc*) sharedcccompopts="-fPIC" @@ -30,7 +30,7 @@ byteccrpath="-Wl,-rpath," mksharedlibrpath="-Wl,-rpath," shared_libraries_supported=true;; -@@ -565,11 +567,11 @@ if test $withsharedlibs = "yes"; then +@@ -565,11 +567,11 @@ gcc*) sharedcccompopts="-fPIC" if sh ./solaris-ld; then @@ -44,7 +44,7 @@ bytecclinkopts="$bytecclinkopts -Wl,-E" natdynlinkopts="-Wl,-E" byteccrpath="-Wl,-rpath," -@@ -593,12 +595,12 @@ if test $withsharedlibs = "yes"; then +@@ -593,12 +595,12 @@ mksharedlibrpath="-rpath " shared_libraries_supported=true;; i[3456]86-*-darwin[89].*) @@ -59,7 +59,7 @@ bytecccompopts="$dl_defs $bytecccompopts" dl_needs_underscore=false shared_libraries_supported=true;; -@@ -608,7 +610,7 @@ if test $withsharedlibs = "yes"; then +@@ -608,7 +610,7 @@ shared_libraries_supported=false;; *-*-openbsd*) sharedcccompopts="-fPIC" @@ -68,7 +68,7 @@ bytecclinkopts="$bytecclinkopts -Wl,-E" natdynlinkopts="-Wl,-E" byteccrpath="-Wl,-rpath," -@@ -633,7 +635,7 @@ if test $withsharedlibs = "yes"; then +@@ -633,7 +635,7 @@ x86_64-*-linux*) natdynlink=true;; i[3456]86-*-darwin[89].*) natdynlink=true;; i[3456]86-*-darwin*) @@ -77,7 +77,7 @@ natdynlink=true fi;; x86_64-*-darwin*) natdynlink=true;; -@@ -641,6 +643,8 @@ if test $withsharedlibs = "yes"; then +@@ -641,6 +643,8 @@ sparc*-*-linux*) natdynlink=true;; i686-*-kfreebsd*) natdynlink=true;; x86_64-*-kfreebsd*) natdynlink=true;; @@ -86,7 +86,7 @@ i[345]86-*-freebsd*) natdynlink=true;; x86_64-*-freebsd*) natdynlink=true;; i[345]86-*-openbsd*) natdynlink=true;; -@@ -672,6 +676,7 @@ case "$host" in +@@ -672,6 +676,7 @@ sparc*-*-gnu*) arch=sparc; system=gnu;; i[3456]86-*-linux*) arch=i386; system=linux_`sh ./runtest elf.c`;; i[3456]86-*-*bsd*) arch=i386; system=bsd_`sh ./runtest elf.c`;; @@ -94,7 +94,7 @@ i[3456]86-*-nextstep*) arch=i386; system=nextstep;; i[3456]86-*-solaris*) if $arch64; then arch=amd64; system=solaris -@@ -687,6 +692,7 @@ case "$host" in +@@ -687,6 +692,7 @@ fi;; i[3456]86-*-gnu*) arch=i386; system=gnu;; powerpc*-*-linux*) arch=power; model=ppc; system=elf;; @@ -102,7 +102,7 @@ powerpc-*-netbsd*) arch=power; model=ppc; system=elf;; powerpc-*-rhapsody*) arch=power; model=ppc; system=rhapsody;; powerpc-*-darwin*) arch=power; system=rhapsody -@@ -700,6 +706,7 @@ case "$host" in +@@ -700,6 +706,7 @@ arm*-*-linux-gnueabi) arch=arm; system=linux_eabi;; x86_64-*-linux*) arch=amd64; system=linux;; x86_64-*-gnu*) arch=amd64; system=gnu;; @@ -110,7 +110,7 @@ x86_64-*-freebsd*) arch=amd64; system=freebsd;; x86_64-*-netbsd*) arch=amd64; system=netbsd;; x86_64-*-openbsd*) arch=amd64; system=openbsd;; -@@ -724,7 +731,7 @@ else +@@ -724,7 +731,7 @@ fi nativecccompopts='' @@ -119,7 +119,7 @@ nativeccrpath="$byteccrpath" case "$arch,$nativecc,$system,$host_type" in -@@ -786,6 +793,8 @@ case "$arch,$model,$system" in +@@ -786,6 +793,8 @@ amd64,*,linux) profiling='prof';; amd64,*,gnu) profiling='prof';; arm,*,linux*) profiling='prof';; @@ -128,7 +128,15 @@ *) profiling='noprof';; esac -@@ -1544,10 +1553,10 @@ fi +@@ -1371,7 +1380,6 @@ + x11_libs="-L$dir" + case "$host" in + *-kfreebsd*-gnu) x11_link="-L$dir -lX11";; +- *-*-*bsd*) x11_link="-R$dir -L$dir -lX11";; + *) x11_link="-L$dir -lX11";; + esac + fi +@@ -1544,10 +1552,10 @@ # Look for BFD library if ./hasgot -i bfd.h && \ >Release-Note: >Audit-Trail: >Unformatted: