All of lore.kernel.org
 help / color / mirror / Atom feed
* [intelddx][strlcpy | strlcat | clock_gettime] clang-3.8: error: linker command failed with exit code 1
@ 2016-03-24 10:44 Sedat Dilek
  2016-03-24 11:01 ` Chris Wilson
  0 siblings, 1 reply; 6+ messages in thread
From: Sedat Dilek @ 2016-03-24 10:44 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

[-- Attachment #1: Type: text/plain, Size: 3867 bytes --]

[ Please see attached files (build-script, full logs etc.) ]

With my selfmade llvm-toolchain v3.8.0 I see these errors/warnings...

$ egrep -B2 -i 'linker command failed|undefined reference to' config.log
 "/usr/bin/ld" -z relro --hash-style=gnu --build-id --eh-frame-hdr -m
elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o conftest
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crt1.o
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crti.o
/usr/lib/gcc/x86_64-linux-gnu/4.9/crtbegin.o
-L/usr/lib/gcc/x86_64-linux-gnu/4.9
-L/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu
-L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu
-L/usr/lib/gcc/x86_64-linux-gnu/4.9/../../..
-L/opt/llvm-toolchain-3.8.0/bin/../lib -L/lib -L/usr/lib
/tmp/conftest-467d35.o -lgcc --as-needed -lgcc_s --no-as-needed -lc
-lgcc --as-needed -lgcc_s --no-as-needed
/usr/lib/gcc/x86_64-linux-gnu/4.9/crtend.o
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crtn.o
/tmp/conftest-467d35.o: In function `main':
conftest.c:(.text+0x12): undefined reference to `strlcpy'
clang-3.8: error: linker command failed with exit code 1 (use -v to
see invocation)
--
 "/usr/bin/ld" -z relro --hash-style=gnu --build-id --eh-frame-hdr -m
elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o conftest
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crt1.o
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crti.o
/usr/lib/gcc/x86_64-linux-gnu/4.9/crtbegin.o
-L/usr/lib/gcc/x86_64-linux-gnu/4.9
-L/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu
-L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu
-L/usr/lib/gcc/x86_64-linux-gnu/4.9/../../..
-L/opt/llvm-toolchain-3.8.0/bin/../lib -L/lib -L/usr/lib
/tmp/conftest-934a03.o -lgcc --as-needed -lgcc_s --no-as-needed -lc
-lgcc --as-needed -lgcc_s --no-as-needed
/usr/lib/gcc/x86_64-linux-gnu/4.9/crtend.o
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crtn.o
/tmp/conftest-934a03.o: In function `main':
conftest.c:(.text+0x12): undefined reference to `strlcat'
clang-3.8: error: linker command failed with exit code 1 (use -v to
see invocation)
--
 "/usr/bin/ld" -z relro --hash-style=gnu --build-id --eh-frame-hdr -m
elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o conftest
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crt1.o
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crti.o
/usr/lib/gcc/x86_64-linux-gnu/4.9/crtbegin.o
-L/usr/lib/gcc/x86_64-linux-gnu/4.9
-L/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu
-L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu
-L/usr/lib/gcc/x86_64-linux-gnu/4.9/../../..
-L/opt/llvm-toolchain-3.8.0/bin/../lib -L/lib -L/usr/lib
/tmp/conftest-36ad4e.o -lgcc --as-needed -lgcc_s --no-as-needed -lc
-lgcc --as-needed -lgcc_s --no-as-needed
/usr/lib/gcc/x86_64-linux-gnu/4.9/crtend.o
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crtn.o
/tmp/conftest-36ad4e.o: In function `main':
conftest.c:(.text+0x12): undefined reference to `clock_gettime'
clang-3.8: error: linker command failed with exit code 1 (use -v to
see invocation)

Furthermore, my 'clang -v' output...

$ clang -v
clang version 3.8.0 (tags/RELEASE_380/final)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/llvm/bin
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Selected multilib: .;@m64

If you need more inputs/informations, please let me know.

Hope this helps.

- Sedat -

[-- Attachment #2: ACLOCAL_FLAGS.diff --]
[-- Type: text/plain, Size: 398 bytes --]

diff --git a/Makefile.am b/Makefile.am
index c60e8a729271..396f41fdc4df 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -18,7 +18,7 @@
 #  IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 #  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
-ACLOCAL_AMFLAGS = $(ACLOCAL_FLAGS) -I m4
+ACLOCAL_AMFLAGS = -I m4
 
 SUBDIRS = man libobj xvmc src tools
 

[-- Attachment #3: config.log.gz --]
[-- Type: application/x-gzip, Size: 20058 bytes --]

[-- Attachment #4: configure-intelddx-2-99-917-580-gf656f6afa288_tearfree-enabled_llvm-3-8-0.txt.gz --]
[-- Type: application/x-gzip, Size: 4104 bytes --]

[-- Attachment #5: build_xf86-video-intel-with-llvm.sh --]
[-- Type: application/x-sh, Size: 2291 bytes --]

[-- Attachment #6: Type: text/plain, Size: 160 bytes --]

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [intelddx][strlcpy | strlcat | clock_gettime] clang-3.8: error: linker command failed with exit code 1
  2016-03-24 10:44 [intelddx][strlcpy | strlcat | clock_gettime] clang-3.8: error: linker command failed with exit code 1 Sedat Dilek
@ 2016-03-24 11:01 ` Chris Wilson
  2016-03-24 11:11   ` Sedat Dilek
  0 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2016-03-24 11:01 UTC (permalink / raw)
  To: Sedat Dilek; +Cc: intel-gfx

On Thu, Mar 24, 2016 at 11:44:45AM +0100, Sedat Dilek wrote:
> [ Please see attached files (build-script, full logs etc.) ]
> 
> With my selfmade llvm-toolchain v3.8.0 I see these errors/warnings...

> conftest.c:(.text+0x12): undefined reference to `strlcpy'
> clang-3.8: error: linker command failed with exit code 1 (use -v to
> see invocation)

We don't even use strlcat!  Try:

diff --git a/configure.ac b/configure.ac
index c18ad96..b121515 100644
--- a/configure.ac
+++ b/configure.ac
@@ -62,9 +62,6 @@ AC_DISABLE_STATIC
 AC_PROG_LIBTOOL
 AC_SYS_LARGEFILE
 
-# Check for common libc routines redefined by os.h
-AC_CHECK_FUNCS([strlcpy strlcat strndup], [], [])
-
 # Platform specific settings
 case $host_os in
   *linux*)

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [intelddx][strlcpy | strlcat | clock_gettime] clang-3.8: error: linker command failed with exit code 1
  2016-03-24 11:01 ` Chris Wilson
@ 2016-03-24 11:11   ` Sedat Dilek
  2016-03-24 12:47     ` Dave Gordon
  0 siblings, 1 reply; 6+ messages in thread
From: Sedat Dilek @ 2016-03-24 11:11 UTC (permalink / raw)
  To: Chris Wilson, Sedat Dilek, intel-gfx

[-- Attachment #1: Type: text/plain, Size: 985 bytes --]

On Thu, Mar 24, 2016 at 12:01 PM, Chris Wilson <chris@chris-wilson.co.uk> wrote:
> On Thu, Mar 24, 2016 at 11:44:45AM +0100, Sedat Dilek wrote:
>> [ Please see attached files (build-script, full logs etc.) ]
>>
>> With my selfmade llvm-toolchain v3.8.0 I see these errors/warnings...
>
>> conftest.c:(.text+0x12): undefined reference to `strlcpy'
>> clang-3.8: error: linker command failed with exit code 1 (use -v to
>> see invocation)
>
> We don't even use strlcat!  Try:
>
> diff --git a/configure.ac b/configure.ac
> index c18ad96..b121515 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -62,9 +62,6 @@ AC_DISABLE_STATIC
>  AC_PROG_LIBTOOL
>  AC_SYS_LARGEFILE
>
> -# Check for common libc routines redefined by os.h
> -AC_CHECK_FUNCS([strlcpy strlcat strndup], [], [])
> -
>  # Platform specific settings
>  case $host_os in
>    *linux*)
>
>

So I collected all three "issues" here and sent you the generated logs.

Hope this helps.

Feel free to add my credits.

- Sedat -

[-- Attachment #2: 0001-configure-Remove-ACLOCAL_FLAGS-to-fix-libtool-vs-aut.patch --]
[-- Type: text/x-patch, Size: 722 bytes --]

From b35261adb49107e7dd6e480b1f7c5d4fb7552f9f Mon Sep 17 00:00:00 2001
From: Sedat Dilek <sedat.dilek@gmail.com>
Date: Thu, 24 Mar 2016 12:01:37 +0100
Subject: [PATCH 1/3] configure: Remove ACLOCAL_FLAGS to fix libtool vs
 automake problem

---
 Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile.am b/Makefile.am
index c60e8a729271..396f41fdc4df 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -18,7 +18,7 @@
 #  IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 #  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
-ACLOCAL_AMFLAGS = $(ACLOCAL_FLAGS) -I m4
+ACLOCAL_AMFLAGS = -I m4
 
 SUBDIRS = man libobj xvmc src tools
 
-- 
2.7.4


[-- Attachment #3: 0002-configure-TearFree-Remove-Experimental-support-statu.patch --]
[-- Type: text/x-patch, Size: 637 bytes --]

From 7677aa3c3b6e1105ce7784bfb8d1a3b9233059ba Mon Sep 17 00:00:00 2001
From: Sedat Dilek <sedat.dilek@gmail.com>
Date: Thu, 24 Mar 2016 12:03:49 +0100
Subject: [PATCH 2/3] configure: TearFree: Remove "Experimental support" status

---
 configure.ac | 1 -
 1 file changed, 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index c18ad96c26d1..0457d52c04df 100644
--- a/configure.ac
+++ b/configure.ac
@@ -746,7 +746,6 @@ AC_ARG_ENABLE(tear-free,
 	      [TEARFREE="no"])
 if test "x$TEARFREE" = "xyes"; then
 	AC_DEFINE(TEARFREE,1,[Enable "TearFree" by default])
-	xp_msg="$xp_msg TearFree"
 fi
 
 AC_ARG_ENABLE(create2,
-- 
2.7.4


[-- Attachment #4: 0003-configure-Remove-unused-common-libc-routines-check.patch --]
[-- Type: text/x-patch, Size: 652 bytes --]

From 1f951b5d65bc9b5b78606f06025a78facd5b402d Mon Sep 17 00:00:00 2001
From: Sedat Dilek <sedat.dilek@gmail.com>
Date: Thu, 24 Mar 2016 12:05:25 +0100
Subject: [PATCH 3/3] configure: Remove unused common libc routines check

---
 configure.ac | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/configure.ac b/configure.ac
index 0457d52c04df..840fb3d96947 100644
--- a/configure.ac
+++ b/configure.ac
@@ -62,9 +62,6 @@ AC_DISABLE_STATIC
 AC_PROG_LIBTOOL
 AC_SYS_LARGEFILE
 
-# Check for common libc routines redefined by os.h
-AC_CHECK_FUNCS([strlcpy strlcat strndup], [], [])
-
 # Platform specific settings
 case $host_os in
   *linux*)
-- 
2.7.4


[-- Attachment #5: config.log.gz --]
[-- Type: application/x-gzip, Size: 18635 bytes --]

[-- Attachment #6: configure-log_intelddx-2-99-917-580-gf656f6afa288_tearfree-enabled_configure-fixes_llvm-3-8-0.txt.gz --]
[-- Type: application/x-gzip, Size: 4090 bytes --]

[-- Attachment #7: Type: text/plain, Size: 160 bytes --]

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [intelddx][strlcpy | strlcat | clock_gettime] clang-3.8: error: linker command failed with exit code 1
  2016-03-24 11:11   ` Sedat Dilek
@ 2016-03-24 12:47     ` Dave Gordon
  2016-03-24 13:09       ` Chris Wilson
  0 siblings, 1 reply; 6+ messages in thread
From: Dave Gordon @ 2016-03-24 12:47 UTC (permalink / raw)
  To: sedat.dilek, Chris Wilson, intel-gfx

On 24/03/16 11:11, Sedat Dilek wrote:
>  From b35261adb49107e7dd6e480b1f7c5d4fb7552f9f Mon Sep 17 00:00:00 2001
> From: Sedat Dilek<sedat.dilek@gmail.com>
> Date: Thu, 24 Mar 2016 12:01:37 +0100
> Subject: [PATCH 1/3] configure: Remove ACLOCAL_FLAGS to fix libtool vs
>   automake problem
>
> ---
>   Makefile.am | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/Makefile.am b/Makefile.am
> index c60e8a729271..396f41fdc4df 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -18,7 +18,7 @@
>   #  IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
>   #  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
>
> -ACLOCAL_AMFLAGS = $(ACLOCAL_FLAGS) -I m4
> +ACLOCAL_AMFLAGS = -I m4
>
>   SUBDIRS = man libobj xvmc src tools
>
> --

Looks like the issue is related to trying to layer the Make-variable 
expansion.

In the shell (and most other languages) an assignment like:

$ ACLOCAL_AMFLAGS="${ACLOCAL_FLAGS} -I m4"

would take the current value of the existing ACLOCAL_FLAGS variable and 
use it construct the value of the new variable ACLOCAL_AMFLAGS. Thus if 
ACLOCAL_were "--XXX" this would yield "-XXX -I m4". Then later we'd see:

$ aclocal ${ACLOCAL_AMFLAGS} ...

which would use the value as previously defined.

Make doesn't do that. It sets ACLOCAL_AMFLAGS to "$(ACLOCAL_FLAGS) -I 
m4" and then later, when ACLOCAL_AMFLAGS is *used* it expands it, and 
then notices that the expanded version still contains a $(var) construct 
and expands *that* ... and so on until there are none left. This is 
sometimes useful, but often confusing. So GNU make (as POSIX, from 2012 
on) supports another type of assignment,

VAR ::= expression

which does the expansion of <expression> just once, at this point, and 
stores the result rather than the <expression> itself. So, try changing 
the line

ACLOCAL_AMFLAGS = $(ACLOCAL_FLAGS) -I m4

in the Makefile into:

ACLOCAL_AMFLAGS ::= $(ACLOCAL_FLAGS) -I m4

and see whether that helps :)

.Dave.
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [intelddx][strlcpy | strlcat | clock_gettime] clang-3.8: error: linker command failed with exit code 1
  2016-03-24 12:47     ` Dave Gordon
@ 2016-03-24 13:09       ` Chris Wilson
  2016-03-26  5:32         ` Sedat Dilek
  0 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2016-03-24 13:09 UTC (permalink / raw)
  To: Dave Gordon; +Cc: sedat.dilek, intel-gfx

On Thu, Mar 24, 2016 at 12:47:51PM +0000, Dave Gordon wrote:
> On 24/03/16 11:11, Sedat Dilek wrote:
> > From b35261adb49107e7dd6e480b1f7c5d4fb7552f9f Mon Sep 17 00:00:00 2001
> >From: Sedat Dilek<sedat.dilek@gmail.com>
> >Date: Thu, 24 Mar 2016 12:01:37 +0100
> >Subject: [PATCH 1/3] configure: Remove ACLOCAL_FLAGS to fix libtool vs
> >  automake problem
> >
> >---
> >  Makefile.am | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> >diff --git a/Makefile.am b/Makefile.am
> >index c60e8a729271..396f41fdc4df 100644
> >--- a/Makefile.am
> >+++ b/Makefile.am
> >@@ -18,7 +18,7 @@
> >  #  IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
> >  #  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> >
> >-ACLOCAL_AMFLAGS = $(ACLOCAL_FLAGS) -I m4
> >+ACLOCAL_AMFLAGS = -I m4
> >
> >  SUBDIRS = man libobj xvmc src tools
> >
> >--
> 
> Looks like the issue is related to trying to layer the Make-variable
> expansion.
> 
> In the shell (and most other languages) an assignment like:
> 
> $ ACLOCAL_AMFLAGS="${ACLOCAL_FLAGS} -I m4"
> 
> would take the current value of the existing ACLOCAL_FLAGS variable
> and use it construct the value of the new variable ACLOCAL_AMFLAGS.
> Thus if ACLOCAL_were "--XXX" this would yield "-XXX -I m4". Then
> later we'd see:
> 
> $ aclocal ${ACLOCAL_AMFLAGS} ...
> 
> which would use the value as previously defined.
> 
> Make doesn't do that. It sets ACLOCAL_AMFLAGS to "$(ACLOCAL_FLAGS)
> -I m4" and then later, when ACLOCAL_AMFLAGS is *used* it expands it,
> and then notices that the expanded version still contains a $(var)
> construct and expands *that* ... and so on until there are none
> left. This is sometimes useful, but often confusing. So GNU make (as
> POSIX, from 2012 on) supports another type of assignment,
> 
> VAR ::= expression
> 
> which does the expansion of <expression> just once, at this point,
> and stores the result rather than the <expression> itself. So, try
> changing the line
> 
> ACLOCAL_AMFLAGS = $(ACLOCAL_FLAGS) -I m4
> 
> in the Makefile into:
> 
> ACLOCAL_AMFLAGS ::= $(ACLOCAL_FLAGS) -I m4
> 
> and see whether that helps :)

ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
=> autoreconf: running: aclocal ${ACLOCAL_FLAGS} -I m4
...

With setenv ACLOCAL_FLAGS "-I /opt/xorg/share/aclocal":

=> autoreconf: running: aclocal -I /opt/xorg/share/aclocal/ ${ACLOCAL_FLAGS} -I m4
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy
libtoolize:   error: AC_CONFIG_MACRO_DIRS([m4]) conflicts with
ACLOCAL_AMFLAGS=-I /opt/xorg/share/aclocal.

Using ACLOCAL_AMFLAGS ::= $(ACLOCAL_FLAGS) -I m4

=> autoreconf: running: aclocal -I /opt/xorg/share/aclocal/ 
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy
libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.

It looks like using 
ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
is obsolete in autoreconf (GNU Autoconf) 2.69.
So looks like the answer is
	AC_PREREQ([2.69])
	ACLOCAL_AMFLAGS = -I m4
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [intelddx][strlcpy | strlcat | clock_gettime] clang-3.8: error: linker command failed with exit code 1
  2016-03-24 13:09       ` Chris Wilson
@ 2016-03-26  5:32         ` Sedat Dilek
  0 siblings, 0 replies; 6+ messages in thread
From: Sedat Dilek @ 2016-03-26  5:32 UTC (permalink / raw)
  To: Chris Wilson, Dave Gordon, Sedat Dilek, intel-gfx

On Thu, Mar 24, 2016 at 2:09 PM, Chris Wilson <chris@chris-wilson.co.uk> wrote:
> On Thu, Mar 24, 2016 at 12:47:51PM +0000, Dave Gordon wrote:
>> On 24/03/16 11:11, Sedat Dilek wrote:
>> > From b35261adb49107e7dd6e480b1f7c5d4fb7552f9f Mon Sep 17 00:00:00 2001
>> >From: Sedat Dilek<sedat.dilek@gmail.com>
>> >Date: Thu, 24 Mar 2016 12:01:37 +0100
>> >Subject: [PATCH 1/3] configure: Remove ACLOCAL_FLAGS to fix libtool vs
>> >  automake problem
>> >
>> >---
>> >  Makefile.am | 2 +-
>> >  1 file changed, 1 insertion(+), 1 deletion(-)
>> >
>> >diff --git a/Makefile.am b/Makefile.am
>> >index c60e8a729271..396f41fdc4df 100644
>> >--- a/Makefile.am
>> >+++ b/Makefile.am
>> >@@ -18,7 +18,7 @@
>> >  #  IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
>> >  #  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
>> >
>> >-ACLOCAL_AMFLAGS = $(ACLOCAL_FLAGS) -I m4
>> >+ACLOCAL_AMFLAGS = -I m4
>> >
>> >  SUBDIRS = man libobj xvmc src tools
>> >
>> >--
>>
>> Looks like the issue is related to trying to layer the Make-variable
>> expansion.
>>
>> In the shell (and most other languages) an assignment like:
>>
>> $ ACLOCAL_AMFLAGS="${ACLOCAL_FLAGS} -I m4"
>>
>> would take the current value of the existing ACLOCAL_FLAGS variable
>> and use it construct the value of the new variable ACLOCAL_AMFLAGS.
>> Thus if ACLOCAL_were "--XXX" this would yield "-XXX -I m4". Then
>> later we'd see:
>>
>> $ aclocal ${ACLOCAL_AMFLAGS} ...
>>
>> which would use the value as previously defined.
>>
>> Make doesn't do that. It sets ACLOCAL_AMFLAGS to "$(ACLOCAL_FLAGS)
>> -I m4" and then later, when ACLOCAL_AMFLAGS is *used* it expands it,
>> and then notices that the expanded version still contains a $(var)
>> construct and expands *that* ... and so on until there are none
>> left. This is sometimes useful, but often confusing. So GNU make (as
>> POSIX, from 2012 on) supports another type of assignment,
>>
>> VAR ::= expression
>>
>> which does the expansion of <expression> just once, at this point,
>> and stores the result rather than the <expression> itself. So, try
>> changing the line
>>
>> ACLOCAL_AMFLAGS = $(ACLOCAL_FLAGS) -I m4
>>
>> in the Makefile into:
>>
>> ACLOCAL_AMFLAGS ::= $(ACLOCAL_FLAGS) -I m4
>>
>> and see whether that helps :)
>
> ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
> => autoreconf: running: aclocal ${ACLOCAL_FLAGS} -I m4
> ...
>
> With setenv ACLOCAL_FLAGS "-I /opt/xorg/share/aclocal":
>
> => autoreconf: running: aclocal -I /opt/xorg/share/aclocal/ ${ACLOCAL_FLAGS} -I m4
> autoreconf: configure.ac: tracing
> autoreconf: running: libtoolize --copy
> libtoolize:   error: AC_CONFIG_MACRO_DIRS([m4]) conflicts with
> ACLOCAL_AMFLAGS=-I /opt/xorg/share/aclocal.
>
> Using ACLOCAL_AMFLAGS ::= $(ACLOCAL_FLAGS) -I m4
>
> => autoreconf: running: aclocal -I /opt/xorg/share/aclocal/
> autoreconf: configure.ac: tracing
> autoreconf: running: libtoolize --copy
> libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
>
> It looks like using
> ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
> is obsolete in autoreconf (GNU Autoconf) 2.69.
> So looks like the answer is
>         AC_PREREQ([2.69])
>         ACLOCAL_AMFLAGS = -I m4

Not sure what the real fix of the reported "ACLOCAL_FLAGS issue" is.

As said in my initial asking I have here on Ubuntu/precise AMD64 autoconf v2.68.
Being no autotools-guru, version and feature check might make sense.

- Sedat -
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-03-26  5:32 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-24 10:44 [intelddx][strlcpy | strlcat | clock_gettime] clang-3.8: error: linker command failed with exit code 1 Sedat Dilek
2016-03-24 11:01 ` Chris Wilson
2016-03-24 11:11   ` Sedat Dilek
2016-03-24 12:47     ` Dave Gordon
2016-03-24 13:09       ` Chris Wilson
2016-03-26  5:32         ` Sedat Dilek

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.