Re: .gcno files removed from .libs directory

2008-09-02 Thread Vincent Torri


Hey,


* Vincent Torri wrote on Fri, Aug 29, 2008 at 05:38:59PM CEST:


I'm compiling two libraries with the options -fprofile-arcs
-ftest-coverage passed to gcc.

The first one has .gcno files in his directory and the .libs sub
directory. The second one has .gcno files in his directory but not in the
.libs subdir. I paste below the Makefile.am of eash lib:



there is a difference in the creation of the libs.

libtool explicitely removes the .gcno files in the 2nd case:

libtool: link: rm -fr  .libs/eina_chained_mempool.gcno


Confirmed.  The patch below should fix it.  It still needs a test.


I have tried the patch and it works well :)

thank you

Vincent


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: .gcno files removed from .libs directory

2008-09-01 Thread Ralf Wildenhues
Hello,

 * Vincent Torri wrote on Fri, Aug 29, 2008 at 05:38:59PM CEST:

 I'm compiling two libraries with the options -fprofile-arcs
 -ftest-coverage passed to gcc.

 The first one has .gcno files in his directory and the .libs sub
 directory. The second one has .gcno files in his directory but not in the
 .libs subdir. I paste below the Makefile.am of eash lib:

 there is a difference in the creation of the libs.

 libtool explicitely removes the .gcno files in the 2nd case:

 libtool: link: rm -fr  .libs/eina_chained_mempool.gcno

Confirmed.  The patch below should fix it.  It still needs a test.

As a workaround, you could let none of your objects have the same name
(minus extension) as your library.

Cheers,
Ralf

  Do not remove .gcno files when linking.
  * libltdl/config/ltmain.m4sh (func_mode_link): When removing
  potential output files before linking, do not remove *.gcno
  profile information GCC outputs next to object files in `.libs'.
  Report by Vincent Torri.

diff --git a/libltdl/config/ltmain.m4sh b/libltdl/config/ltmain.m4sh
index 7e319c9..814cc93 100644
--- a/libltdl/config/ltmain.m4sh
+++ b/libltdl/config/ltmain.m4sh
@@ -5963,7 +5963,7 @@ func_mode_link ()
tempremovelist=`$ECHO $output_objdir/*`
for p in $tempremovelist; do
  case $p in
-   *.$objext)
+   *.$objext | *.gcno)
   ;;
$output_objdir/$outputname | $output_objdir/$libname.* | 
$output_objdir/${libname}${release}.*)
   if test X$precious_files_regex != X; then


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: .gcno files removed from .libs directory

2008-08-31 Thread Vincent Torri



On Sun, 31 Aug 2008, Ralf Wildenhues wrote:


Hello Vincent,

Thanks for the bug report.

* Vincent Torri wrote on Fri, Aug 29, 2008 at 05:38:59PM CEST:


I'm compiling two libraries with the options -fprofile-arcs
-ftest-coverage passed to gcc.

The first one has .gcno files in his directory and the .libs sub
directory. The second one has .gcno files in his directory but not in the
.libs subdir. I paste below the Makefile.am of eash lib:


[...]

clean-local:
@rm -rf *.gcno


BTW, why the '@' here?  There's nothing wrong with showing this command
(but of course it doesn't matter much either).


I agree, it even be usefull to see such commands


there is a difference in the creation of the libs.

libtool explicitely removes the .gcno files in the 2nd case:

libtool: link: rm -fr  .libs/eina_chained_mempool.gcno

does someone know why libtool remove the .gcno files.


Not yet, but it does sound like a bug (in either Libtool or Autoconf).
You could really help us find this bug more easily by trying to reduce
this to a small example package that exposes the issue for you, and show
how exactly you configured and built the package.  The files
configure.ac, Makefile.am, and one library source file, should probably
be sufficient.  If that's too much work for you, then please at least
post how you configured and built the second package (all command lines
plus all of their output), and also post config.log.  Please gzip large
files, thank you.


for the source code: see the attached file autotools.tar.bz2

for the configuration:

autoreconf -f -i
./configure
make

for the output : output.log.bz2
for config.log : config.log.bz2


BTW, which Libtool and Autoconf versions do you use?


autoconf 2.62
libtool 2.2.5a

for libtool, it's a git version that I have grabbed just after cegcc was 
added.


thanks

Vincent Torri

PS: if you note things that are wrong in configure.ac, please don't 
hesitate to tell me.

output.log.bz2
Description: Binary data


config.log.bz2
Description: Binary data


autotools.tar.bz2
Description: Binary data
___
http://lists.gnu.org/mailman/listinfo/libtool


Re: .gcno files removed from .libs directory

2008-08-30 Thread Ralf Wildenhues
Hello Vincent,

Thanks for the bug report.

* Vincent Torri wrote on Fri, Aug 29, 2008 at 05:38:59PM CEST:

 I'm compiling two libraries with the options -fprofile-arcs  
 -ftest-coverage passed to gcc.

 The first one has .gcno files in his directory and the .libs sub  
 directory. The second one has .gcno files in his directory but not in the 
 .libs subdir. I paste below the Makefile.am of eash lib:

[...]
 clean-local:
   @rm -rf *.gcno

BTW, why the '@' here?  There's nothing wrong with showing this command
(but of course it doesn't matter much either).

 there is a difference in the creation of the libs.

 libtool explicitely removes the .gcno files in the 2nd case:

 libtool: link: rm -fr  .libs/eina_chained_mempool.gcno

 does someone know why libtool remove the .gcno files.

Not yet, but it does sound like a bug (in either Libtool or Autoconf).
You could really help us find this bug more easily by trying to reduce
this to a small example package that exposes the issue for you, and show
how exactly you configured and built the package.  The files
configure.ac, Makefile.am, and one library source file, should probably
be sufficient.  If that's too much work for you, then please at least
post how you configured and built the second package (all command lines
plus all of their output), and also post config.log.  Please gzip large
files, thank you.

BTW, which Libtool and Autoconf versions do you use?

Cheers,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: .gcno files removed from .libs directory

2008-08-30 Thread Ralf Wildenhues
A small note:

* Vincent Torri wrote on Fri, Aug 29, 2008 at 05:38:59PM CEST:
 libeina_la_DEPENDENCIES = $(top_builddir)/config.h

There should be no need for this line.  Typically, a library only
depends upon object files and other libraries.  It's some of the object
files that themselves depend upon header files.  Those dependencies,
however, should be computed by the automatic dependency tracking
mechanism which Automake puts in place.

Cheers,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool


.gcno files removed from .libs directory

2008-08-29 Thread Vincent Torri


Hey

I'm compiling two libraries with the options -fprofile-arcs 
-ftest-coverage passed to gcc.


The first one has .gcno files in his directory and the .libs sub 
directory. The second one has .gcno files in his directory but not in the 
.libs subdir. I paste below the Makefile.am of eash lib:


 * First lib (which works)

MAINTAINERCLEANFILES = Makefile.in

AM_CPPFLAGS = \
-I$(top_srcdir)/src/include \
-DPACKAGE_BIN_DIR=\$(bindir)\ \
-DPACKAGE_LIB_DIR=\$(libdir)\ \
-DPACKAGE_DATA_DIR=\$(datadir)/$(PACKAGE)\ \
@COVERAGE_CFLAGS@

lib_LTLIBRARIES = libeina.la

libeina_la_SOURCES = \
eina_error.c \
eina_hash.c \
eina_lalloc.c \
eina_inlist.c \
eina_file.c \
eina_mempool.c \
eina_list.c \
eina_module.c \
eina_value.c \
eina_array.c \
eina_magic.c \
eina_main.c \
eina_counter.c \
eina_iterator.c \
eina_accessor.c \
eina_convert.c \
eina_rbtree.c \
eina_stringshare.c

libeina_la_LIBADD = -ldl -lrt @COVERAGE_LIBS@ -lm
libeina_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -version-info 
@version_info@

libeina_la_DEPENDENCIES = $(top_builddir)/config.h

clean-local:
@rm -rf *.gcno


 * Second lib (which does not work):

MAINTAINERCLEANFILES = Makefile.in

AM_CPPFLAGS = \
-I. \
-I$(top_srcdir)/src/include \
@COVERAGE_CFLAGS@

controllerdir = $(libdir)/eina/chained_pool/
controller_LTLIBRARIES = eina_chained_mempool.la

eina_chained_mempool_la_SOURCES = \
eina_chained_mempool.c

eina_chained_mempool_la_LIBADD = $(top_builddir)/src/lib/libeina.la 
@COVERAGE_LIBS@
eina_chained_mempool_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ 
-module -avoid-version

eina_chained_mempool_la_DEPENDENCIES = $(top_builddir)/src/lib/libeina.la

clean-local:
@rm -rf *.gcno



there is a difference in the creation of the libs.


libtool explicitely removes the .gcno files in the 2nd case:

libtool: link: rm -fr  .libs/eina_chained_mempool.gcno

does someone know why libtool remove the .gcno files. And of course, does 
someone know a way to keep those files ?


thank you

Vincent Torri


___
http://lists.gnu.org/mailman/listinfo/libtool