AC_SUBST(CCLD)

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

 



Hi,
I am using Autotools (Autoconf, Automake, Libtools):

Currently, I have CCLD set to $(CC). Using AC_SUBST, all Makefile's will contain this variable.

Config:
CC=gcc
CCLD="$(CC)"
AC_SUBST(CCLD)

Generated Makefiles:
CCLD = gcc

The problem, however, is that I use different compilers for certain directories. So, for example:

$ cd dir1/
$ gcc-4.1.2 –c –o helloworld.o helloworld.c
$ libtool --tag=CC —mode=link $(CCLD) -o helloworld.out helloworld.o

$ cd dir2/
$ gcc-3.3.6 –c –o helloworld.o helloworld.c
$ libtool —tag=CC —mode=link $(CCLD) -o helloworld.out helloworld.o

Then, the same $(CCLD) linker is being used for both directories, but I need to use the appropriate linkers
for each directory, i.e. gcc-4.1.2 and gcc-3.3.6.

Then, my question is: how can I set CCLD appropriately for different Makefiles so autoconf will generate the
appropriate Libtool link rules for my Makefiles? Or any other suggestions?

---

Alternatively, I've also tried this:

configure.in:
AM_CONDITIONAL(USING_ALTERNATE_COMPILER, [test "$alternate_compiler" != ""])

dir2/Makefile.am:
If USING_ALTERNATE_COMPILER
CCLD=gcc-3.3.6
endif

But then I get this automake warning:
CCLD was already defined in condition TRUE, which includes condition USING_ALTERNATE_COMPILER …

And the generated Makefile contains:

CCLD = gcc-3.3.6
CCLD = gcc

So, autoconf put its CCLD into the generated Makefile, basically ignoring my declaration of CCLD. Omitting the "if..endif" yields the correct result, I.e. One declaration of CCLD.

Thanks,
Justin
_______________________________________________
Autoconf mailing list
Autoconf@xxxxxxx
http://lists.gnu.org/mailman/listinfo/autoconf



[Index of Archives]     [GCC Help]     [Kernel Discussion]     [RPM Discussion]     [Red Hat Development]     [Yosemite News]     [Linux USB]     [Samba]

  Powered by Linux