From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Jackson Subject: [PATCH 06/15] tools: Correct PTHREAD options in config/StdGNU.mk Date: Fri, 24 Feb 2012 18:54:54 +0000 Message-ID: <1330109703-6536-7-git-send-email-ian.jackson@eu.citrix.com> References: <1330109703-6536-1-git-send-email-ian.jackson@eu.citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1330109703-6536-1-git-send-email-ian.jackson@eu.citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xensource.com Cc: Ian Jackson List-Id: xen-devel@lists.xenproject.org It is not correct to say -lpthread. The correct option is -pthread, which may have sundry other effects on code generation etc. It needs to be passed both to compilation and linking. So abolish PTHREAD_LIBS in StdGNU.mk, and add PTHREAD_CFLAGS and PTHREAD_LDFLAGS instead. Fix the one user (libxc). There are still some other users in tree which pass -pthread or -lpthread by adding it as a literal to their own compiler options. These will be fixed in a later version of this patch. Signed-off-by: Ian Jackson --- config/StdGNU.mk | 4 +++- tools/libxc/Makefile | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/config/StdGNU.mk b/config/StdGNU.mk index 2af2841..97445a7 100644 --- a/config/StdGNU.mk +++ b/config/StdGNU.mk @@ -68,10 +68,12 @@ XEN_SCRIPT_DIR = $(XEN_CONFIG_DIR)/scripts SOCKET_LIBS = CURSES_LIBS = -lncurses -PTHREAD_LIBS = -lpthread UTIL_LIBS = -lutil DLOPEN_LIBS = -ldl +PTHREAD_CFLAGS = -pthread +PTHREAD_LDFLAGS = -pthread + SONAME_LDFLAG = -soname SHLIB_LDFLAGS = -shared diff --git a/tools/libxc/Makefile b/tools/libxc/Makefile index b5e7022..09e2f5f 100644 --- a/tools/libxc/Makefile +++ b/tools/libxc/Makefile @@ -72,6 +72,8 @@ CFLAGS += -I. $(CFLAGS_xeninclude) # Needed for posix_fadvise64() in xc_linux.c CFLAGS-$(CONFIG_Linux) += -D_GNU_SOURCE +CFLAGS += $(PTHREAD_CFLAGS) + # Define this to make it possible to run valgrind on code linked with these # libraries. #CFLAGS += -DVALGRIND -O0 -ggdb3 @@ -156,7 +158,7 @@ libxenctrl.so.$(MAJOR): libxenctrl.so.$(MAJOR).$(MINOR) ln -sf $< $@ libxenctrl.so.$(MAJOR).$(MINOR): $(CTRL_PIC_OBJS) - $(CC) $(LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenctrl.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $^ $(DLOPEN_LIBS) $(PTHREAD_LIBS) $(APPEND_LDFLAGS) + $(CC) $(LDFLAGS) $(PTHREAD_LDFLAGS) -Wl,$(SONAME_LDFLAG) -Wl,libxenctrl.so.$(MAJOR) $(SHLIB_LDFLAGS) -o $@ $^ $(DLOPEN_LIBS) $(PTHREAD_LIBS) $(APPEND_LDFLAGS) # libxenguest -- 1.7.2.5