All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH lttng-tools] tests/unit: fix object files' location
       [not found] <1449013005-9745-1-git-send-email-s.martin49@gmail.com>
@ 2015-12-08 11:42 ` Jérémie Galarneau
  0 siblings, 0 replies; 2+ messages in thread
From: Jérémie Galarneau @ 2015-12-08 11:42 UTC (permalink / raw)
  To: Samuel Martin; +Cc: lttng-dev

Merged in master, stable-2.6 and stable-2.7.

Thanks for the patch and detailed write-up!
Jérémie

On Tue, Dec 1, 2015 at 6:36 PM, Samuel Martin <s.martin49@gmail.com> wrote:
> Referring to *.o files under a .libs/ directory is not recommended
> because this belongs to libtool's innards.
>
> Indeed, libtool decides to place the *.o files in an
> implementation-specific location:
> - PIC *.o files go into a .libs/ directory;
> - non-PIC *.o files are generated along side to their corresponding
>   source files.
>
> Using PIC objects to build executable is legit, thought it may
> introduce some minor overhead at runtime.
>
> However, hard-coding these PIC object files in the Makefile.am to build
> executables breaks the build in case of static only build.
>
> In this case, no PIC object files is generated, so the linker will not
> found some of the needed objects files.
>
> Changing these dependencies' path fixes the static build, keeping the
> shared one ok, though the non-PIC object files are now always built.
>
> Fixes #983.
>
> Fix tested on git master and v2.6 with no change needed.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
> ---
>  tests/unit/Makefile.am | 18 +++++++++---------
>  1 file changed, 9 insertions(+), 9 deletions(-)
>
> diff --git a/tests/unit/Makefile.am b/tests/unit/Makefile.am
> index c0c9c45..7bfe65a 100644
> --- a/tests/unit/Makefile.am
> +++ b/tests/unit/Makefile.am
> @@ -34,9 +34,9 @@ SESSIONS=$(top_builddir)/src/bin/lttng-sessiond/session.o     \
>          $(top_builddir)/src/bin/lttng-sessiond/consumer.o \
>          $(top_builddir)/src/bin/lttng-sessiond/utils.o \
>          $(top_builddir)/src/bin/lttng-sessiond/snapshot.o \
> -        $(top_builddir)/src/common/.libs/uri.o \
> -        $(top_builddir)/src/common/.libs/utils.o \
> -        $(top_builddir)/src/common/.libs/error.o \
> +        $(top_builddir)/src/common/uri.o \
> +        $(top_builddir)/src/common/utils.o \
> +        $(top_builddir)/src/common/error.o \
>          $(top_builddir)/src/common/health/libhealth.la \
>          $(top_builddir)/src/common/sessiond-comm/libsessiond-comm.la
>
> @@ -60,8 +60,8 @@ UST_DATA_TRACE=$(top_builddir)/src/bin/lttng-sessiond/trace-ust.o \
>                    $(top_builddir)/src/bin/lttng-sessiond/session.o \
>                    $(top_builddir)/src/bin/lttng-sessiond/snapshot.o \
>                    $(top_builddir)/src/bin/lttng-sessiond/agent.o \
> -                  $(top_builddir)/src/common/.libs/uri.o \
> -                  $(top_builddir)/src/common/.libs/utils.o \
> +                  $(top_builddir)/src/common/uri.o \
> +                  $(top_builddir)/src/common/utils.o \
>                    $(top_builddir)/src/common/health/libhealth.la \
>                    $(top_builddir)/src/common/sessiond-comm/libsessiond-comm.la
>
> @@ -75,8 +75,8 @@ endif
>  KERN_DATA_TRACE=$(top_builddir)/src/bin/lttng-sessiond/trace-kernel.o  \
>                 $(top_builddir)/src/bin/lttng-sessiond/consumer.o       \
>                 $(top_builddir)/src/bin/lttng-sessiond/utils.o \
> -               $(top_builddir)/src/common/.libs/uri.o \
> -               $(top_builddir)/src/common/.libs/utils.o \
> +               $(top_builddir)/src/common/uri.o \
> +               $(top_builddir)/src/common/utils.o \
>                 $(top_builddir)/src/common/health/libhealth.la \
>                 $(top_builddir)/src/common/sessiond-comm/libsessiond-comm.la
>
> @@ -86,8 +86,8 @@ test_kernel_data_LDADD = $(LIBTAP) $(LIBCOMMON) $(LIBRELAYD) $(LIBSESSIOND_COMM)
>  test_kernel_data_LDADD += $(KERN_DATA_TRACE)
>
>  # utils suffix for unit test
> -UTILS_SUFFIX=$(top_builddir)/src/common/.libs/utils.o \
> -               $(top_builddir)/src/common/.libs/runas.o
> +UTILS_SUFFIX=$(top_builddir)/src/common/utils.o \
> +               $(top_builddir)/src/common/runas.o
>
>  # parse_size_suffix unit test
>  test_utils_parse_size_suffix_SOURCES = test_utils_parse_size_suffix.c
> --
> 2.6.2
>
>
> _______________________________________________
> lttng-dev mailing list
> lttng-dev@lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev



-- 
Jérémie Galarneau
EfficiOS Inc.
http://www.efficios.com

_______________________________________________
lttng-dev mailing list
lttng-dev@lists.lttng.org
http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

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

* [PATCH lttng-tools] tests/unit: fix object files' location
@ 2015-12-01 23:36 Samuel Martin
  0 siblings, 0 replies; 2+ messages in thread
From: Samuel Martin @ 2015-12-01 23:36 UTC (permalink / raw)
  To: lttng-dev

Referring to *.o files under a .libs/ directory is not recommended
because this belongs to libtool's innards.

Indeed, libtool decides to place the *.o files in an
implementation-specific location:
- PIC *.o files go into a .libs/ directory;
- non-PIC *.o files are generated along side to their corresponding
  source files.

Using PIC objects to build executable is legit, thought it may
introduce some minor overhead at runtime.

However, hard-coding these PIC object files in the Makefile.am to build
executables breaks the build in case of static only build.

In this case, no PIC object files is generated, so the linker will not
found some of the needed objects files.

Changing these dependencies' path fixes the static build, keeping the
shared one ok, though the non-PIC object files are now always built.

Fixes #983.

Fix tested on git master and v2.6 with no change needed.

Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
 tests/unit/Makefile.am | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/tests/unit/Makefile.am b/tests/unit/Makefile.am
index c0c9c45..7bfe65a 100644
--- a/tests/unit/Makefile.am
+++ b/tests/unit/Makefile.am
@@ -34,9 +34,9 @@ SESSIONS=$(top_builddir)/src/bin/lttng-sessiond/session.o	\
 	 $(top_builddir)/src/bin/lttng-sessiond/consumer.o \
 	 $(top_builddir)/src/bin/lttng-sessiond/utils.o \
 	 $(top_builddir)/src/bin/lttng-sessiond/snapshot.o \
-	 $(top_builddir)/src/common/.libs/uri.o \
-	 $(top_builddir)/src/common/.libs/utils.o \
-	 $(top_builddir)/src/common/.libs/error.o \
+	 $(top_builddir)/src/common/uri.o \
+	 $(top_builddir)/src/common/utils.o \
+	 $(top_builddir)/src/common/error.o \
 	 $(top_builddir)/src/common/health/libhealth.la \
 	 $(top_builddir)/src/common/sessiond-comm/libsessiond-comm.la
 
@@ -60,8 +60,8 @@ UST_DATA_TRACE=$(top_builddir)/src/bin/lttng-sessiond/trace-ust.o \
 		   $(top_builddir)/src/bin/lttng-sessiond/session.o \
 		   $(top_builddir)/src/bin/lttng-sessiond/snapshot.o \
 		   $(top_builddir)/src/bin/lttng-sessiond/agent.o \
-		   $(top_builddir)/src/common/.libs/uri.o \
-		   $(top_builddir)/src/common/.libs/utils.o \
+		   $(top_builddir)/src/common/uri.o \
+		   $(top_builddir)/src/common/utils.o \
 		   $(top_builddir)/src/common/health/libhealth.la \
 		   $(top_builddir)/src/common/sessiond-comm/libsessiond-comm.la
 
@@ -75,8 +75,8 @@ endif
 KERN_DATA_TRACE=$(top_builddir)/src/bin/lttng-sessiond/trace-kernel.o	\
 		$(top_builddir)/src/bin/lttng-sessiond/consumer.o	\
 		$(top_builddir)/src/bin/lttng-sessiond/utils.o \
-		$(top_builddir)/src/common/.libs/uri.o \
-		$(top_builddir)/src/common/.libs/utils.o \
+		$(top_builddir)/src/common/uri.o \
+		$(top_builddir)/src/common/utils.o \
 		$(top_builddir)/src/common/health/libhealth.la \
 		$(top_builddir)/src/common/sessiond-comm/libsessiond-comm.la
 
@@ -86,8 +86,8 @@ test_kernel_data_LDADD = $(LIBTAP) $(LIBCOMMON) $(LIBRELAYD) $(LIBSESSIOND_COMM)
 test_kernel_data_LDADD += $(KERN_DATA_TRACE)
 
 # utils suffix for unit test
-UTILS_SUFFIX=$(top_builddir)/src/common/.libs/utils.o \
-		$(top_builddir)/src/common/.libs/runas.o
+UTILS_SUFFIX=$(top_builddir)/src/common/utils.o \
+		$(top_builddir)/src/common/runas.o
 
 # parse_size_suffix unit test
 test_utils_parse_size_suffix_SOURCES = test_utils_parse_size_suffix.c
-- 
2.6.2

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

end of thread, other threads:[~2015-12-08 11:42 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <1449013005-9745-1-git-send-email-s.martin49@gmail.com>
2015-12-08 11:42 ` [PATCH lttng-tools] tests/unit: fix object files' location Jérémie Galarneau
2015-12-01 23:36 Samuel Martin

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.