You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2018/08/06 12:16:41 UTC

[arrow] branch master updated: ARROW-2990: [GLib] Support building with rpath-ed Arrow C++ on macOS

This is an automated email from the ASF dual-hosted git repository.

wesm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new da7a48e  ARROW-2990: [GLib] Support building with rpath-ed Arrow C++ on macOS
da7a48e is described below

commit da7a48e2002ad8ce72377f8f835202fa47e6ec6e
Author: Kouhei Sutou <ko...@clear-code.com>
AuthorDate: Mon Aug 6 08:16:37 2018 -0400

    ARROW-2990: [GLib] Support building with rpath-ed Arrow C++ on macOS
    
    Author: Kouhei Sutou <ko...@clear-code.com>
    
    Closes #2374 from kou/glib-macos and squashes the following commits:
    
    c8b5c453 <Kouhei Sutou>  Support building with rpath-ed Arrow C++ on macOS
---
 c_glib/arrow-glib/Makefile.am     | 19 ++++++++++---------
 c_glib/arrow-gpu-glib/Makefile.am | 28 +++++++++++++++++-----------
 c_glib/configure.ac               |  2 ++
 3 files changed, 29 insertions(+), 20 deletions(-)

diff --git a/c_glib/arrow-glib/Makefile.am b/c_glib/arrow-glib/Makefile.am
index 0eef0d4..e557964 100644
--- a/c_glib/arrow-glib/Makefile.am
+++ b/c_glib/arrow-glib/Makefile.am
@@ -242,14 +242,6 @@ if HAVE_INTROSPECTION
 INTROSPECTION_GIRS =
 INTROSPECTION_SCANNER_ARGS =
 INTROSPECTION_SCANNER_ENV =
-if USE_ARROW_BUILD_DIR
-INTROSPECTION_SCANNER_ENV +=			\
-	LD_LIBRARY_PATH=$(ARROW_LIB_DIR):$${LD_LIBRARY_PATH}
-endif
-if OS_MACOS
-INTROSPECTION_SCANNER_ENV +=			\
-	ARCHFLAGS=
-endif
 INTROSPECTION_COMPILER_ARGS =
 
 Arrow-1.0.gir: libarrow-glib.la
@@ -261,12 +253,21 @@ Arrow_1_0_gir_INCLUDES =			\
 	Gio-2.0
 Arrow_1_0_gir_CFLAGS =				\
 	$(AM_CPPFLAGS)
-Arrow_1_0_gir_LIBS = libarrow-glib.la
+Arrow_1_0_gir_LIBS =
 Arrow_1_0_gir_FILES = $(libarrow_glib_la_sources)
 Arrow_1_0_gir_SCANNERFLAGS =			\
+	--library-path=$(ARROW_LIB_DIR)		\
 	--warn-all				\
 	--identifier-prefix=GArrow		\
 	--symbol-prefix=garrow
+if OS_MACOS
+Arrow_1_0_gir_LIBS += arrow-glib
+Arrow_1_0_gir_SCANNERFLAGS +=			\
+	--no-libtool				\
+	--library-path=$(abs_builddir)/.libs
+else
+Arrow_1_0_gir_LIBS += libarrow-glib.la
+endif
 INTROSPECTION_GIRS += Arrow-1.0.gir
 
 girdir = $(datadir)/gir-1.0
diff --git a/c_glib/arrow-gpu-glib/Makefile.am b/c_glib/arrow-gpu-glib/Makefile.am
index 1e1c02a..2ed9665 100644
--- a/c_glib/arrow-gpu-glib/Makefile.am
+++ b/c_glib/arrow-gpu-glib/Makefile.am
@@ -78,10 +78,6 @@ else
 INTROSPECTION_SCANNER_ENV +=			\
 	PKG_CONFIG_PATH=${abs_builddir}/../arrow-glib:$${PKG_CONFIG_PATH}
 endif
-if OS_MACOS
-INTROSPECTION_SCANNER_ENV +=			\
-	ARCHFLAGS=
-endif
 INTROSPECTION_COMPILER_ARGS =			\
 	--includedir=$(abs_builddir)/../arrow-glib
 
@@ -95,20 +91,30 @@ ArrowGPU_1_0_gir_INCLUDES =			\
 ArrowGPU_1_0_gir_CFLAGS =			\
 	$(AM_CPPFLAGS)
 ArrowGPU_1_0_gir_LDFLAGS =
-if USE_ARROW_BUILD_DIR
-ArrowGPU_1_0_gir_LDFLAGS +=			\
-	-L$(ARROW_LIB_DIR)
-endif
-ArrowGPU_1_0_gir_LIBS =					\
-	$(abs_builddir)/../arrow-glib/libarrow-glib.la	\
-	libarrow-gpu-glib.la
+ArrowGPU_1_0_gir_LIBS =
 ArrowGPU_1_0_gir_FILES =			\
 	$(libarrow_gpu_glib_la_sources)
 ArrowGPU_1_0_gir_SCANNERFLAGS =					\
+	--library-path=$(ARROW_LIB_DIR)				\
 	--warn-all						\
 	--add-include-path=$(abs_builddir)/../arrow-glib	\
 	--identifier-prefix=GArrowGPU				\
 	--symbol-prefix=garrow_gpu
+if OS_MACOS
+ArrowGPU_1_0_gir_LIBS +=			\
+	 arrow-glib				\
+	 arrow-gpu-glib
+ArrowGPU_1_0_gir_SCANNERFLAGS +=				\
+	--no-libtool						\
+	--library-path=$(abs_builddir)/../arrow-glib/.libs	\
+	--library-path=$(abs_builddir)/.libs
+else
+ArrowGPU_1_0_gir_LIBS +=				\
+	$(abs_builddir)/../arrow-glib/libarrow-glib.la	\
+	libarrow-gpu-glib.la
+endif
+
+					\
 INTROSPECTION_GIRS += ArrowGPU-1.0.gir
 
 girdir = $(datadir)/gir-1.0
diff --git a/c_glib/configure.ac b/c_glib/configure.ac
index 6692927..6368170 100644
--- a/c_glib/configure.ac
+++ b/c_glib/configure.ac
@@ -115,6 +115,8 @@ if test "x$GARROW_ARROW_CPP_BUILD_DIR" = "x"; then
   USE_ARROW_BUILD_DIR=no
 
   PKG_CHECK_MODULES([ARROW], [arrow arrow-compute])
+  _PKG_CONFIG(ARROW_LIB_DIR, [variable=libdir], [arrow])
+  ARROW_LIB_DIR="$pkg_cv_ARROW_LIB_DIR"
   PKG_CHECK_MODULES([ARROW_ORC],
                     [arrow-orc],
                     [HAVE_ARROW_ORC=yes],