diff --git a/c_glib/Makefile.am b/c_glib/Makefile.am deleted file mode 100644 index 35a4c61fc01..00000000000 --- a/c_glib/Makefile.am +++ /dev/null @@ -1,41 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} - -SUBDIRS = \ - arrow-glib \ - arrow-cuda-glib \ - arrow-dataset-glib \ - gandiva-glib \ - parquet-glib \ - plasma-glib \ - doc \ - example - -EXTRA_DIST = \ - Gemfile \ - README.md \ - autogen.sh \ - meson.build \ - meson_options.txt \ - test - -arrow_glib_docdir = ${datarootdir}/doc/arrow-glib -arrow_glib_doc_DATA = \ - ../LICENSE.txt \ - README.md diff --git a/c_glib/README.md b/c_glib/README.md index 4ef9612c868..ac179354d8f 100644 --- a/c_glib/README.md +++ b/c_glib/README.md @@ -19,12 +19,14 @@ # Arrow GLib -Arrow GLib is a wrapper library for [Arrow C++](https://github.com/apache/arrow/tree/master/cpp). Arrow GLib provides C -API. +Arrow GLib is a wrapper library for [Arrow +C++](https://github.com/apache/arrow/tree/master/cpp). Arrow GLib +provides C API. -Arrow GLib supports -[GObject Introspection](https://wiki.gnome.org/action/show/Projects/GObjectIntrospection). -It means that you can create language bindings at runtime or compile time. +Arrow GLib supports [GObject +Introspection](https://wiki.gnome.org/action/show/Projects/GObjectIntrospection). +It means that you can create language bindings at runtime or compile +time. For example, you can use Apache Arrow from Ruby by Arrow GLib and [gobject-introspection gem](https://rubygems.org/gems/gobject-introspection) @@ -50,71 +52,47 @@ gobject-introspection gem based bindings. You can use packages or build by yourself to install Arrow GLib. It's recommended that you use packages. -Note that the packages are "unofficial". "Official" packages will be -released in the future. +We use Meson and Ninja as build tools. If you find problems when +installing please see [common build +problems](https://github.com/apache/arrow/blob/master/c_glib/README.md#common-build-problems). -We support two build systems, GNU Autotools and Meson. If you find problems when installing please see [common build problems](https://github.com/apache/arrow/blob/master/c_glib/README.md#common-build-problems). - -### Package +### Packages See [install document](https://arrow.apache.org/install/) for details. ### How to build by users Arrow GLib users should use released source archive to build Arrow -GLib (replace the version number in the following commands with the one you use): +GLib (replace the version number in the following commands with the +one you use): ```console -% wget https://archive.apache.org/dist/arrow/arrow-0.3.0/apache-arrow-0.3.0.tar.gz -% tar xf apache-arrow-0.3.0.tar.gz -% cd apache-arrow-0.3.0 +% wget https://downloads.apache.org/arrow/arrow-3.0.0/apache-arrow-3.0.0.tar.gz +% tar xf apache-arrow-3.0.0.tar.gz +% cd apache-arrow-3.0.0 ``` You need to build and install Arrow C++ before you build and install Arrow GLib. See Arrow C++ document about how to install Arrow C++. -If you use macOS with [Homebrew](https://brew.sh/), you must install required packages and set `PKG_CONFIG_PATH` before build Arrow GLib: - -If you use GNU Autotools, you can build and install Arrow GLib by the followings: - -macOS: - -```console -% cd c_glib -% brew bundle -% ./configure PKG_CONFIG_PATH=$(brew --prefix libffi)/lib/pkgconfig:$PKG_CONFIG_PATH -% make -% sudo make install -``` - -Others: - -```console -% cd c_glib -% ./configure -% make -% sudo make install -``` - -If you use Meson, you can build and install Arrow GLib by the followings: +If you use macOS with [Homebrew](https://brew.sh/), you must install +required packages. macOS: ```console -% cd c_glib -% brew bundle -% PKG_CONFIG_PATH=$(brew --prefix libffi)/lib/pkgconfig:$PKG_CONFIG_PATH meson build --buildtype=release -% ninja -C build -% sudo ninja -C build install +$ brew bundle +$ meson setup c_glib.build c_glib --buildtype=release +$ meson compile -C c_glib.build +$ sudo meson install -C c_glib.build ``` Others: ```console -% cd c_glib -% meson build --buildtype=release -% ninja -C build -% sudo ninja -C build install +$ meson setup c_glib.build c_glib --buildtype=release +$ meson compile -C c_glib.build +$ sudo meson install -C build ``` ### How to build by developers @@ -129,51 +107,46 @@ to build Arrow GLib. You can install them by the followings: On Debian GNU/Linux or Ubuntu: ```console -% sudo apt install -y -V gtk-doc-tools autoconf-archive libgirepository1.0-dev meson ninja-build +$ sudo apt install -y -V gtk-doc-tools libgirepository1.0-dev meson ninja-build ``` -On CentOS 7 or later: +On CentOS 7: ```console -% sudo yum install -y gtk-doc gobject-introspection-devel -% sudo pip install -y meson ninja -``` - -On macOS with [Homebrew](https://brew.sh/): - -```text -% brew bundle +$ sudo yum install -y gtk-doc gobject-introspection-devel ninja-build +$ sudo pip3 install meson ``` -If you use GNU Autotools, you can build and install Arrow GLib by the followings: +On CentOS 8 or later: ```console -% cd c_glib -% ./autogen.sh -% ./configure --enable-gtk-doc -% make -% sudo make install +$ sudo dnf install -y --enablerepo=powertools gtk-doc gobject-introspection-devel ninja-build +$ sudo pip3 install meson ``` -You need to set `PKG_CONFIG_PATH` to `configure` On macOS: +On macOS with [Homebrew](https://brew.sh/): ```console -% ./configure PKG_CONFIG_PATH=$(brew --prefix libffi)/lib/pkgconfig:$PKG_CONFIG_PATH --enable-gtk-doc +$ brew bundle ``` -If you use Meson, you can build and install Arrow GLib by the followings: +You can build and install Arrow GLib by the followings: + +macOS: ```console -% cd c_glib -% meson build -Dgtk_doc=true -% ninja -C build -% sudo ninja -C build install +$ XML_CATALOG_FILES=$(brew --prefix)/etc/xml/catalog +$ meson setup c_glib.build c_glib -Dgtk_doc=true +$ meson compile -C c_glib.build +$ sudo meson install -C c_glib.build ``` -You need to set `PKG_CONFIG_PATH` on macOS: +Others: ```console -% PKG_CONFIG_PATH=$(brew --prefix libffi)/lib/pkgconfig:$PKG_CONFIG_PATH meson build -Dgtk_doc=true +$ meson c_glib.build c_glib -Dgtk_doc=true +$ meson compile -C c_glib.build +$ sudo meson install -C c_glib.build ``` ## Usage @@ -186,7 +159,7 @@ languages, you use GObject Introspection based bindings. You can find API reference in the `/usr/local/share/gtk-doc/html/arrow-glib/` directory. If you specify -`--prefix` to `configure`, the directory will be different. +`--prefix` to `meson`, the directory will be different. You can find example codes in the `example/` directory. @@ -225,101 +198,118 @@ You can install them by the followings: On Debian GNU/Linux or Ubuntu: ```console -% sudo apt install -y -V ruby-dev -% sudo gem install bundler -% (cd c_glib && bundle install) +$ sudo apt install -y -V ruby-dev +$ sudo gem install bundler +$ (cd c_glib && bundle install) ``` On CentOS 7 or later: ```console -% sudo yum install -y git -% git clone https://github.com/sstephenson/rbenv.git ~/.rbenv -% git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build -% echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile -% echo 'eval "$(rbenv init -)"' >> ~/.bash_profile -% exec ${SHELL} --login -% sudo yum install -y gcc make patch openssl-devel readline-devel zlib-devel -% rbenv install 2.4.1 -% rbenv global 2.4.1 -% gem install bundler -% (cd c_glib && bundle install) +$ sudo yum install -y git +$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv +$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build +$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile +$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile +$ exec ${SHELL} --login +$ sudo yum install -y gcc make patch openssl-devel readline-devel zlib-devel +$ latest_ruby_version=$(rbenv install --list 2>&1 | grep '^[0-9]' | tail -n1) +$ rbenv install ${latest_ruby_version} +$ rbenv global ${latest_ruby_version} +$ gem install bundler +$ (cd c_glib && bundle install) ``` On macOS with [Homebrew](https://brew.sh/): ```console -% (cd c_glib && bundle install) +$ (cd c_glib && bundle install) ``` Now, you can run unit tests by the followings: ```console -% cd c_glib -% bundle exec test/run-test.sh +$ cd c_glib.build +$ bundle exec ../c_glib/test/run-test.sh ``` ## Common build problems -### configure failed - `AX_CXX_COMPILE_STDCXX_11(ext, mandatory)' +### build failed - /usr/bin/ld: cannot find -larrow -* Check whether `autoconf-archive` is installed. -* [macOS] `autoconf-archive` must be linked, but may not be linked. You can check it by running `brew install autoconf-archive` again. If it's not linked, it will show a warning message like: +Arrow C++ must be installed to build Arrow GLib. Run `make install` on +Arrow C++ build directory. In addition, on linux, you may need to run +`sudo ldconfig`. -```console -% brew install autoconf-archive -Warning: autoconf-archive 2017.03.21 is already installed, it's just not linked. -You can use `brew link autoconf-archive` to link this version. -``` +### build failed - unable to load http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl -In this case, you need to run `brew link autoconf-archive`. It may fail with the following message if you have install conflicted packages (e.g. `gnome-common`). +You need to set the following environment variable on macOS: ```console -% brew link autoconf-archive -Linking /usr/local/Cellar/autoconf-archive/2017.03.21... -Error: Could not symlink share/aclocal/ax_check_enable_debug.m4 -Target /usr/local/share/aclocal/ax_check_enable_debug.m4 -is a symlink belonging to gnome-common. You can unlink it: - brew unlink gnome-common +$ export XML_CATALOG_FILES="$(brew --prefix)/etc/xml/catalog" ``` -You need to run `brew unlink `, then run `brew link autoconf-archive` again. - -After installing/linking `autoconf-archive`, run `./autogen.sh` again. +### build failed - Symbol not found, referenced from `libsource-highlight.4.dylib` -### [macOS] configure failed - gobject-introspection-1.0 is not installed +You may get the following error on macOS: -gobject-introspection requires libffi, and it's automatically installed with gobject-introspection. However it can't be found because it's [keg-only](https://docs.brew.sh/FAQ.html#what-does-keg-only-mean). You need to set `PKG_CONFIG_PATH` when executing configure. -```console -% ./configure PKG_CONFIG_PATH=$(brew --prefix libffi)/lib/pkgconfig +```text +dyld: Symbol not found: __ZN5boost16re_detail_10650112perl_matcherIPKcNSt3__19allocatorINS_9sub_matchIS3_EEEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE14construct_initERKNS_11basic_regexIcSC_EENS_15regex_constants12_match_flagsE + Referenced from: /usr/local/Cellar/source-highlight/3.1.8_7/lib/libsource-highlight.4.dylib + Expected in: flat namespace + in /usr/local/Cellar/source-highlight/3.1.8_7/lib/libsource-highlight.4.dylib ``` -### build failed - /usr/bin/ld: cannot find -larrow - -Arrow C++ must be installed to build Arrow GLib. Run `make install` on Arrow C++ build directory. In addition, on linux, you may need to run `sudo ldconfig`. - -### build failed - unable to load http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl - -On macOS you may need to set the following environment variable: +To fix this error, you need to upgrade `source-highlight`: ```console -% export XML_CATALOG_FILES="/usr/local/etc/xml/catalog" +$ brew upgrade source-highlight ``` -### build failed - Symbol not found, referenced from `libsource-highlight.4.dylib` +### test failed - Failed to load shared library '...' referenced by the typelib: dlopen(...): dependent dylib '@rpath/...' not found for '...'. relative file paths not allowed '@rpath/...' -On macOS if you see the following error you may need to upgrade `source-highlight` +You may get the following error on macOS by running test: -```console -dyld: Symbol not found: __ZN5boost16re_detail_10650112perl_matcherIPKcNSt3__19allocatorINS_9sub_matchIS3_EEEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE14construct_initERKNS_11basic_regexIcSC_EENS_15regex_constants12_match_flagsE - Referenced from: /usr/local/Cellar/source-highlight/3.1.8_7/lib/libsource-highlight.4.dylib - Expected in: flat namespace - in /usr/local/Cellar/source-highlight/3.1.8_7/lib/libsource-highlight.4.dylib +```text +(NULL)-WARNING **: Failed to load shared library '/usr/local/lib/libparquet-glib.400.dylib' referenced by the typelib: dlopen(/usr/local/lib/libparquet-glib.400.dylib, 0x0009): dependent dylib '@rpath/libparquet.400.dylib' not found for '/usr/local/lib/libparquet-glib.400.dylib'. relative file paths not allowed '@rpath/libparquet.400.dylib' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection/loader.rb:215:in `load_object_info' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection/loader.rb:68:in `load_info' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection/loader.rb:43:in `block in load' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection/repository.rb:34:in `block (2 levels) in each' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection/repository.rb:33:in `times' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection/repository.rb:33:in `block in each' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection/repository.rb:32:in `each' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection/repository.rb:32:in `each' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection/loader.rb:42:in `load' + from /Library/Ruby/Gems/2.6.0/gems/gobject-introspection-3.4.3/lib/gobject-introspection.rb:44:in `load' + from /Users/karlkatzen/Documents/code/arrow-dev/arrow/c_glib/test/run-test.rb:60:in `
' +Traceback (most recent call last): + 17: from /Users/karlkatzen/Documents/code/arrow-dev/arrow/c_glib/test/run-test.rb:80:in `
' + 16: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/autorunner.rb:66:in `run' + 15: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/autorunner.rb:434:in `run' + 14: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/autorunner.rb:106:in `block in ' + 13: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:38:in `collect' + 12: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:136:in `add_load_path' + 11: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:43:in `block in collect' + 10: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:43:in `each' + 9: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:46:in `block (2 levels) in collect' + 8: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:85:in `collect_recursive' + 7: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:85:in `each' + 6: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:87:in `block in collect_recursive' + 5: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:112:in `collect_file' + 4: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:136:in `add_load_path' + 3: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:114:in `block in collect_file' + 2: from /Library/Ruby/Gems/2.6.0/gems/test-unit-3.4.0/lib/test/unit/collector/load.rb:114:in `require' + 1: from /Users/karlkatzen/Documents/code/arrow-dev/arrow/c_glib/test/test-extension-data-type.rb:18:in `' +/Users/karlkatzen/Documents/code/arrow-dev/arrow/c_glib/test/test-extension-data-type.rb:19:in `': uninitialized constant Arrow::ExtensionArray (NameError) ``` -To fix do: +You can't use `@rpath` in Arrow C++. To fix this error, you need to +build Arrow C++ with `-DARROW_INSTALL_NAME_RPATH=OFF`: ```console -% brew upgrade source-highlight +$ cmake -S cpp -B cpp.build -DARROW_INSTALL_NAME_RPATH=OFF ... +$ cmake --build cpp.build +$ sudo cmake --build cpp.build --target install ``` diff --git a/c_glib/arrow-cuda-glib/Makefile.am b/c_glib/arrow-cuda-glib/Makefile.am deleted file mode 100644 index bcf20bb549e..00000000000 --- a/c_glib/arrow-cuda-glib/Makefile.am +++ /dev/null @@ -1,130 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -CLEANFILES = - -EXTRA_DIST = \ - meson.build - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -if HAVE_ARROW_CUDA -lib_LTLIBRARIES = \ - libarrow-cuda-glib.la - -libarrow_cuda_glib_la_CXXFLAGS = \ - $(GLIB_CFLAGS) \ - $(ARROW_CUDA_CFLAGS) \ - $(GARROW_CXXFLAGS) - -libarrow_cuda_glib_la_LDFLAGS = \ - -version-info $(LT_VERSION_INFO) \ - -no-undefined - -libarrow_cuda_glib_la_LIBADD = \ - $(GLIB_LIBS) \ - ../arrow-glib/libarrow-glib.la \ - $(ARROW_CUDA_LIBS) - -libarrow_cuda_glib_la_headers = \ - arrow-cuda-glib.h \ - cuda.h - -libarrow_cuda_glib_la_sources = \ - cuda.cpp \ - $(libarrow_cuda_glib_la_headers) - -libarrow_cuda_glib_la_cpp_headers = \ - arrow-cuda-glib.hpp \ - cuda.hpp - -libarrow_cuda_glib_la_SOURCES = \ - $(libarrow_cuda_glib_la_sources) \ - $(libarrow_cuda_glib_la_cpp_headers) - -arrow_cuda_glib_includedir = \ - $(includedir)/arrow-cuda-glib -arrow_cuda_glib_include_HEADERS = \ - $(libarrow_cuda_glib_la_headers) \ - $(libarrow_cuda_glib_la_cpp_headers) - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = \ - arrow-cuda-glib.pc - -if HAVE_INTROSPECTION --include $(INTROSPECTION_MAKEFILE) -INTROSPECTION_GIRS = -INTROSPECTION_SCANNER_ARGS = -INTROSPECTION_SCANNER_ENV = -if USE_ARROW_BUILD_DIR -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=${abs_builddir}/../arrow-glib:$(ARROW_BUILD_DIR)/src/arrow:$${PKG_CONFIG_PATH} -else -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=${abs_builddir}/../arrow-glib:$${PKG_CONFIG_PATH} -endif -INTROSPECTION_COMPILER_ARGS = \ - --includedir=$(abs_builddir)/../arrow-glib - -ArrowCUDA-1.0.gir: libarrow-cuda-glib.la -ArrowCUDA_1_0_gir_PACKAGES = \ - arrow-glib -ArrowCUDA_1_0_gir_EXPORT_PACKAGES = \ - arrow-cuda-glib -ArrowCUDA_1_0_gir_INCLUDES = \ - Arrow-1.0 -ArrowCUDA_1_0_gir_CFLAGS = \ - $(AM_CPPFLAGS) -ArrowCUDA_1_0_gir_LIBS = -ArrowCUDA_1_0_gir_FILES = \ - $(libarrow_cuda_glib_la_sources) -ArrowCUDA_1_0_gir_SCANNERFLAGS = \ - --library-path=$(ARROW_LIB_DIR) \ - --warn-all \ - --add-include-path=$(abs_builddir)/../arrow-glib \ - --identifier-prefix=GArrowCUDA \ - --symbol-prefix=garrow_cuda -if OS_MACOS -ArrowCUDA_1_0_gir_LIBS += \ - arrow-glib \ - arrow-cuda-glib -ArrowCUDA_1_0_gir_SCANNERFLAGS += \ - --no-libtool \ - --library-path=$(abs_builddir)/../arrow-glib/.libs \ - --library-path=$(abs_builddir)/.libs -else -ArrowCUDA_1_0_gir_LIBS += \ - $(abs_builddir)/../arrow-glib/libarrow-glib.la \ - libarrow-cuda-glib.la -endif - -INTROSPECTION_GIRS += ArrowCUDA-1.0.gir - -girdir = $(datadir)/gir-1.0 -gir_DATA = $(INTROSPECTION_GIRS) - -typelibdir = $(libdir)/girepository-1.0 -typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) - -CLEANFILES += \ - $(gir_DATA) \ - $(typelib_DATA) -endif -endif diff --git a/c_glib/arrow-cuda-glib/arrow-cuda-glib.pc.in b/c_glib/arrow-cuda-glib/arrow-cuda-glib.pc.in deleted file mode 100644 index de0ce974c7a..00000000000 --- a/c_glib/arrow-cuda-glib/arrow-cuda-glib.pc.in +++ /dev/null @@ -1,28 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: Apache Arrow CUDA GLib -Description: C API for Apache Arrow CUDA based on GLib -Version: @VERSION@ -Libs: -L${libdir} -larrow-cuda-glib -Cflags: -I${includedir} -Requires: arrow-glib arrow-cuda diff --git a/c_glib/arrow-dataset-glib/Makefile.am b/c_glib/arrow-dataset-glib/Makefile.am deleted file mode 100644 index 81e5aa5f083..00000000000 --- a/c_glib/arrow-dataset-glib/Makefile.am +++ /dev/null @@ -1,136 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -CLEANFILES = - -EXTRA_DIST = \ - meson.build - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -if HAVE_ARROW_DATASET -lib_LTLIBRARIES = \ - libarrow-dataset-glib.la - -libarrow_dataset_glib_la_CXXFLAGS = \ - $(GLIB_CFLAGS) \ - $(ARROW_DATASET_CFLAGS) \ - $(GARROW_CXXFLAGS) - -libarrow_dataset_glib_la_LDFLAGS = \ - -version-info $(LT_VERSION_INFO) \ - -no-undefined - -libarrow_dataset_glib_la_LIBADD = \ - $(GLIB_LIBS) \ - ../arrow-glib/libarrow-glib.la \ - $(ARROW_DATASET_LIBS) - -libarrow_dataset_glib_la_headers = \ - arrow-dataset-glib.h \ - file-format.h \ - fragment.h \ - scanner.h - -libarrow_dataset_glib_la_sources = \ - file-format.cpp \ - fragment.cpp \ - scanner.cpp \ - $(libarrow_dataset_glib_la_headers) - -libarrow_dataset_glib_la_cpp_headers = \ - arrow-dataset-glib.hpp \ - file-format.hpp \ - fragment.hpp \ - scanner.hpp - -libarrow_dataset_glib_la_SOURCES = \ - $(libarrow_dataset_glib_la_sources) \ - $(libarrow_dataset_glib_la_cpp_headers) - -arrow_dataset_glib_includedir = \ - $(includedir)/arrow-dataset-glib -arrow_dataset_glib_include_HEADERS = \ - $(libarrow_dataset_glib_la_headers) \ - $(libarrow_dataset_glib_la_cpp_headers) - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = \ - arrow-dataset-glib.pc - -if HAVE_INTROSPECTION --include $(INTROSPECTION_MAKEFILE) -INTROSPECTION_GIRS = -INTROSPECTION_SCANNER_ARGS = -INTROSPECTION_SCANNER_ENV = -if USE_ARROW_BUILD_DIR -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=${abs_builddir}/../arrow-glib:$(ARROW_BUILD_DIR)/src/arrow:$${PKG_CONFIG_PATH} -else -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=${abs_builddir}/../arrow-glib:$${PKG_CONFIG_PATH} -endif -INTROSPECTION_COMPILER_ARGS = \ - --includedir=$(abs_builddir)/../arrow-glib - -ArrowDataset-1.0.gir: libarrow-dataset-glib.la -ArrowDataset_1_0_gir_PACKAGES = \ - arrow-glib -ArrowDataset_1_0_gir_EXPORT_PACKAGES = \ - arrow-dataset-glib -ArrowDataset_1_0_gir_INCLUDES = \ - Arrow-1.0 -ArrowDataset_1_0_gir_CFLAGS = \ - $(AM_CPPFLAGS) -ArrowDataset_1_0_gir_LIBS = -ArrowDataset_1_0_gir_FILES = \ - $(libarrow_dataset_glib_la_sources) -ArrowDataset_1_0_gir_SCANNERFLAGS = \ - --add-include-path=$(abs_builddir)/../arrow-glib \ - --identifier-prefix=GAD \ - --library-path=$(ARROW_LIB_DIR) \ - --symbol-prefix=gad \ - --warn-all -if OS_MACOS -ArrowDataset_1_0_gir_LIBS += \ - arrow-glib \ - arrow-dataset-glib -ArrowDataset_1_0_gir_SCANNERFLAGS += \ - --no-libtool \ - --library-path=$(abs_builddir)/../arrow-glib/.libs \ - --library-path=$(abs_builddir)/.libs -else -ArrowDataset_1_0_gir_LIBS += \ - $(abs_builddir)/../arrow-glib/libarrow-glib.la \ - libarrow-dataset-glib.la -endif - -INTROSPECTION_GIRS += ArrowDataset-1.0.gir - -girdir = $(datadir)/gir-1.0 -gir_DATA = $(INTROSPECTION_GIRS) - -typelibdir = $(libdir)/girepository-1.0 -typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) - -CLEANFILES += \ - $(gir_DATA) \ - $(typelib_DATA) -endif -endif diff --git a/c_glib/arrow-dataset-glib/arrow-dataset-glib.pc.in b/c_glib/arrow-dataset-glib/arrow-dataset-glib.pc.in deleted file mode 100644 index ee7e13967df..00000000000 --- a/c_glib/arrow-dataset-glib/arrow-dataset-glib.pc.in +++ /dev/null @@ -1,28 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: Apache Arrow Dataset GLib -Description: C API for Apache Arrow Dataset based on GLib -Version: @VERSION@ -Libs: -L${libdir} -larrow-dataset-glib -Cflags: -I${includedir} -Requires: arrow-glib arrow-dataset diff --git a/c_glib/arrow-glib/Makefile.am b/c_glib/arrow-glib/Makefile.am deleted file mode 100644 index 9f19578d537..00000000000 --- a/c_glib/arrow-glib/Makefile.am +++ /dev/null @@ -1,309 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -CLEANFILES = -DISTCLEANFILES = - -EXTRA_DIST = \ - meson.build - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(GARROW_CFLAGS) - -# libarrow-glib -lib_LTLIBRARIES = \ - libarrow-glib.la - -libarrow_glib_la_CXXFLAGS = \ - $(GLIB_CFLAGS) \ - $(ARROW_CFLAGS) \ - $(GARROW_CXXFLAGS) - -libarrow_glib_la_LDFLAGS = \ - -version-info $(LT_VERSION_INFO) \ - -no-undefined - -libarrow_glib_la_LIBADD = \ - $(GLIB_LIBS) \ - $(ARROW_LIBS) - -libarrow_glib_la_headers = \ - array.h \ - array-builder.h \ - arrow-glib.h \ - basic-array.h \ - basic-data-type.h \ - buffer.h \ - chunked-array.h \ - codec.h \ - composite-array.h \ - composite-data-type.h \ - data-type.h \ - datum.h \ - decimal.h \ - error.h \ - field.h \ - gobject-type.h \ - record-batch.h \ - schema.h \ - table.h \ - table-builder.h \ - tensor.h \ - type.h - -libarrow_glib_la_headers += \ - file.h \ - file-mode.h \ - input-stream.h \ - output-stream.h \ - readable.h \ - writable.h \ - writable-file.h - -libarrow_glib_la_headers += \ - ipc-options.h \ - metadata-version.h \ - reader.h \ - writer.h - -libarrow_glib_la_headers += \ - compute.h - -libarrow_glib_la_headers += \ - file-system.h \ - local-file-system.h - -if HAVE_ARROW_ORC -libarrow_glib_la_headers += \ - orc-file-reader.h -endif - -libarrow_glib_la_generated_headers = \ - enums.h \ - version.h - -libarrow_glib_la_generated_sources = \ - enums.c \ - $(libarrow_glib_la_generated_headers) - -libarrow_glib_la_sources = \ - array-builder.cpp \ - basic-array.cpp \ - basic-data-type.cpp \ - buffer.cpp \ - chunked-array.cpp \ - codec.cpp \ - composite-array.cpp \ - composite-data-type.cpp \ - datum.cpp \ - decimal.cpp \ - error.cpp \ - field.cpp \ - record-batch.cpp \ - schema.cpp \ - table.cpp \ - table-builder.cpp \ - tensor.cpp \ - type.cpp \ - $(libarrow_glib_la_headers) \ - $(libarrow_glib_la_generated_sources) - -libarrow_glib_la_sources += \ - file.cpp \ - file-mode.cpp \ - input-stream.cpp \ - output-stream.cpp \ - readable.cpp \ - writable.cpp \ - writable-file.cpp - -libarrow_glib_la_sources += \ - ipc-options.cpp \ - metadata-version.cpp \ - reader.cpp \ - writer.cpp - -libarrow_glib_la_sources += \ - compute.cpp - -libarrow_glib_la_sources += \ - file-system.cpp \ - local-file-system.cpp - -if HAVE_ARROW_ORC -libarrow_glib_la_sources += \ - orc-file-reader.cpp -endif - -libarrow_glib_la_cpp_headers = \ - array.hpp \ - array-builder.hpp \ - arrow-glib.hpp \ - basic-array.hpp \ - basic-data-type.hpp \ - buffer.hpp \ - chunked-array.hpp \ - codec.hpp \ - data-type.hpp \ - datum.hpp \ - decimal.hpp \ - error.hpp \ - field.hpp \ - record-batch.hpp \ - schema.hpp \ - table.hpp \ - table-builder.hpp \ - tensor.hpp \ - type.hpp - -libarrow_glib_la_cpp_headers += \ - file.hpp \ - file-mode.hpp \ - input-stream.hpp \ - output-stream.hpp \ - readable.hpp \ - writable.hpp \ - writable-file.hpp - -libarrow_glib_la_cpp_headers += \ - ipc-options.hpp \ - metadata-version.hpp \ - reader.hpp \ - writer.hpp - -libarrow_glib_la_cpp_headers += \ - compute.hpp - -libarrow_glib_la_cpp_headers += \ - file-system.hpp \ - local-file-system.hpp - -if HAVE_ARROW_ORC -libarrow_glib_la_cpp_headers += \ - orc-file-reader.hpp -endif - -libarrow_glib_la_cpp_internal_headers = \ - internal-hash-table.hpp \ - internal-index.hpp - -libarrow_glib_la_SOURCES = \ - $(libarrow_glib_la_sources) \ - $(libarrow_glib_la_cpp_headers) \ - $(libarrow_glib_la_cpp_internal_headers) - -BUILT_SOURCES = \ - $(libarrow_glib_la_generated_headers) \ - $(libarrow_glib_la_generated_sources) \ - stamp-enums.c \ - stamp-enums.h - -DISTCLEANFILES += \ - stamp-enums.c \ - stamp-enums.h - -EXTRA_DIST += \ - enums.c.template \ - enums.h.template - -enums.h: stamp-enums.h - @true -stamp-enums.h: $(libarrow_glib_la_headers) enums.h.template - $(AM_V_GEN) \ - (cd $(srcdir) && \ - $(GLIB_MKENUMS) \ - --identifier-prefix GArrow \ - --symbol-prefix garrow \ - --template enums.h.template \ - $(libarrow_glib_la_headers)) > enums.h - touch $@ - -enums.c: stamp-enums.c - @true -stamp-enums.c: $(libarrow_glib_la_headers) enums.c.template - $(AM_V_GEN) \ - (cd $(srcdir) && \ - $(GLIB_MKENUMS) \ - --identifier-prefix GArrow \ - --symbol-prefix garrow \ - --template enums.c.template \ - $(libarrow_glib_la_headers)) > enums.c - touch $@ - -arrow_glib_includedir = $(includedir)/arrow-glib -arrow_glib_include_HEADERS = \ - $(libarrow_glib_la_headers) \ - $(libarrow_glib_la_cpp_headers) \ - $(libarrow_glib_la_generated_headers) - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = \ - arrow-glib.pc - -if HAVE_ARROW_ORC -pkgconfig_DATA += \ - arrow-orc-glib.pc -endif - -if HAVE_INTROSPECTION --include $(INTROSPECTION_MAKEFILE) -INTROSPECTION_GIRS = -INTROSPECTION_SCANNER_ARGS = -INTROSPECTION_SCANNER_ENV = -INTROSPECTION_COMPILER_ARGS = - -Arrow-1.0.gir: libarrow-glib.la -Arrow_1_0_gir_PACKAGES = \ - gio-2.0 -Arrow_1_0_gir_EXPORT_PACKAGES = \ - arrow-glib -Arrow_1_0_gir_INCLUDES = \ - Gio-2.0 -Arrow_1_0_gir_CFLAGS = \ - $(AM_CPPFLAGS) -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 -gir_DATA = $(INTROSPECTION_GIRS) - -typelibdir = $(libdir)/girepository-1.0 -typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) - -CLEANFILES += \ - $(gir_DATA) \ - $(typelib_DATA) -endif diff --git a/c_glib/arrow-glib/arrow-glib.pc.in b/c_glib/arrow-glib/arrow-glib.pc.in deleted file mode 100644 index f9f27b24990..00000000000 --- a/c_glib/arrow-glib/arrow-glib.pc.in +++ /dev/null @@ -1,28 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: Apache Arrow GLib -Description: C API for Apache Arrow based on GLib -Version: @VERSION@ -Libs: -L${libdir} -larrow-glib -Cflags: -I${includedir} -Requires: gobject-2.0 arrow diff --git a/c_glib/arrow-glib/arrow-orc-glib.pc.in b/c_glib/arrow-glib/arrow-orc-glib.pc.in deleted file mode 100644 index 8e45d402549..00000000000 --- a/c_glib/arrow-glib/arrow-orc-glib.pc.in +++ /dev/null @@ -1,26 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: Apache Arrow ORC GLib -Description: ORC modules for Apache Arrow GLib -Version: @VERSION@ -Requires: arrow-glib diff --git a/c_glib/autogen.sh b/c_glib/autogen.sh deleted file mode 100755 index eeca380bea8..00000000000 --- a/c_glib/autogen.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -set -u -set -e - -mkdir -p m4 - -gtkdocize --copy -autoreconf --install --force diff --git a/c_glib/configure.ac b/c_glib/configure.ac deleted file mode 100644 index 58c75b45002..00000000000 --- a/c_glib/configure.ac +++ /dev/null @@ -1,346 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -AC_PREREQ(2.65) - -m4_define([arrow_glib_version], 4.0.0-SNAPSHOT) -AC_INIT([arrow-glib], - arrow_glib_version, - [https://issues.apache.org/jira/browse/ARROW], - [apache-arrow-glib]) -AC_CONFIG_AUX_DIR([config]) -AC_CONFIG_MACRO_DIR([m4]) - -AC_CONFIG_SRCDIR([arrow-glib/arrow-glib.h]) -AC_CONFIG_HEADERS([config.h]) - -AM_INIT_AUTOMAKE([1.13 foreign]) -AM_SILENT_RULES([yes]) - -GARROW_VERSION_MAJOR=$(echo "arrow_glib_version" | \ - sed -E -e 's/^([[0-9]]+)\..+$/\1/' | \ - tr -d '\n') -GARROW_VERSION_MINOR=$(echo "arrow_glib_version" | \ - sed -E -e 's/^[[0-9]]+\.([[0-9]]+)\..+$/\1/' | \ - tr -d '\n') -GARROW_VERSION_MICRO=$(echo "arrow_glib_version" | \ - sed -E -e 's/^[[0-9]]+\.[[0-9]]+\.([[0-9]]+).*$/\1/' | \ - tr -d '\n') -if echo "arrow_glib_version" | grep -- "-" > /dev/null; then - GARROW_VERSION_TAG=$(echo "arrow_glib_version" | \ - sed -E -e 's/^[[0-9]]+\.[[0-9]]+\.[[0-9]]+-(.+)$/\1/' | \ - tr -d '\n') -else - GARROW_VERSION_TAG= -fi -AC_SUBST(GARROW_VERSION_MAJOR) -AC_SUBST(GARROW_VERSION_MINOR) -AC_SUBST(GARROW_VERSION_MICRO) -AC_SUBST(GARROW_VERSION_TAG) - -GGANDIVA_VERSION_MAJOR=${GARROW_VERSION_MAJOR} -GGANDIVA_VERSION_MINOR=${GARROW_VERSION_MINOR} -GGANDIVA_VERSION_MICRO=${GARROW_VERSION_MICRO} -GGANDIVA_VERSION_TAG=${GARROW_VERSION_TAG} -AC_SUBST(GGANDIVA_VERSION_MAJOR) -AC_SUBST(GGANDIVA_VERSION_MINOR) -AC_SUBST(GGANDIVA_VERSION_MICRO) -AC_SUBST(GGANDIVA_VERSION_TAG) - -GPARQUET_VERSION_MAJOR=${GARROW_VERSION_MAJOR} -GPARQUET_VERSION_MINOR=${GARROW_VERSION_MINOR} -GPARQUET_VERSION_MICRO=${GARROW_VERSION_MICRO} -GPARQUET_VERSION_TAG=${GARROW_VERSION_TAG} -AC_SUBST(GPARQUET_VERSION_MAJOR) -AC_SUBST(GPARQUET_VERSION_MINOR) -AC_SUBST(GPARQUET_VERSION_MICRO) -AC_SUBST(GPARQUET_VERSION_TAG) - -AC_CANONICAL_HOST -AC_MSG_CHECKING([for macOS]) -case "$host_os" in -darwin*) - os_macos=yes - ;; -*) - os_macos=no - ;; -esac -AC_MSG_RESULT([$os_macos]) -AM_CONDITIONAL(OS_MACOS, test "$os_macos" = "yes") - -LT_INIT -LT_CURRENT=$(expr ${GARROW_VERSION_MAJOR} \* 100 + ${GARROW_VERSION_MINOR}) -LT_REVISION=${GARROW_VERSION_MICRO} -LT_AGE=0 -LT_VERSION_INFO="\$(LT_CURRENT):\$(LT_REVISION):\$(LT_AGE)" -AC_SUBST(LT_CURRENT) -AC_SUBST(LT_REVISION) -AC_SUBST(LT_AGE) -AC_SUBST(LT_VERSION_INFO) - -AC_PROG_CC -AC_PROG_CXX -AX_CXX_COMPILE_STDCXX_11([ext], [mandatory]) - -GARROW_CFLAGS="-Wall" -GARROW_CXXFLAGS="-Wall" -AC_ARG_ENABLE(debug, - [AS_HELP_STRING([--enable-debug], - [Use debug flags (default=no)])], - [GARROW_DEBUG="$enableval"], - [GARROW_DEBUG="no"]) -if test "x$GARROW_DEBUG" != "xno"; then - GARROW_DEBUG="yes" - if test "$CLANG" = "yes"; then - CFLAGS="$CFLAGS -O0 -g" - CXXFLAGS="$CXXFLAGS -O0 -g" - elif test "$GCC" = "yes"; then - CFLAGS="$CFLAGS -O0 -g3" - CXXFLAGS="$CXXFLAGS -O0 -g3" - fi -fi -AC_ARG_ENABLE(development-mode, - [AS_HELP_STRING([--enable-development-mode], - [Use development mode (default=no)])], - [GARROW_DEVELOPMENT_MODE="$enableval"], - [GARROW_DEVELOPMENT_MODE="no"]) -if test "x$GARROW_DEVELOPMENT_MODE" != "xno"; then - if test "$CLANG" = "yes" -o "$GCC" = "yes"; then - CFLAGS="$CFLAGS -Werror" - CXXFLAGS="$CXXFLAGS -Werror" - fi -fi -AC_SUBST(GARROW_CFLAGS) -AC_SUBST(GARROW_CXXFLAGS) - -AM_PATH_GLIB_2_0([2.32.4], - [], - [AC_MSG_ERROR(GLib isn't available)], - [gobject gio]) - -GOBJECT_INTROSPECTION_CHECK([1.32.1]) -GTK_DOC_CHECK([1.18-2]) - -AC_ARG_WITH(arrow-cpp-build-type, - [AS_HELP_STRING([--with-arrow-cpp-build-type=TYPE], - [-DCMAKE_BUILD_TYPE option value for Arrow C++ (default=release)])], - [GARROW_ARROW_CPP_BUILD_TYPE="$withval"], - [GARROW_ARROW_CPP_BUILD_TYPE="release"]) - -ARROW_CUDA_PKG_CONFIG_PATH="" -AC_ARG_WITH(arrow-cpp-build-dir, - [AS_HELP_STRING([--with-arrow-cpp-build-dir=PATH], - [Use this option to build with not installed Arrow C++])], - [GARROW_ARROW_CPP_BUILD_DIR="$withval"], - [GARROW_ARROW_CPP_BUILD_DIR=""]) -if test "x$GARROW_ARROW_CPP_BUILD_DIR" = "x"; then - USE_ARROW_BUILD_DIR=no - - arrow_packages="arrow" - arrow_packages="${arrow_packages} arrow-compute" - arrow_packages="${arrow_packages} arrow-csv" - arrow_packages="${arrow_packages} arrow-filesystem" - arrow_packages="${arrow_packages} arrow-json" - PKG_CHECK_MODULES([ARROW], [${arrow_packages}]) - _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], - [HAVE_ARROW_ORC=no]) - PKG_CHECK_MODULES([ARROW_CUDA], - [arrow-cuda], - [HAVE_ARROW_CUDA=yes], - [HAVE_ARROW_CUDA=no]) - PKG_CHECK_MODULES([ARROW_DATASET], - [arrow-dataset], - [HAVE_ARROW_DATASET=yes], - [HAVE_ARROW_DATASET=no]) - PKG_CHECK_MODULES([GANDIVA], - [gandiva], - [HAVE_GANDIVA=yes], - [HAVE_GANDIVA=no]) - PKG_CHECK_MODULES([PARQUET], - [parquet], - [HAVE_PARQUET=yes], - [HAVE_PARQUET=no]) - PKG_CHECK_MODULES([PLASMA], - [plasma], - [HAVE_PLASMA=yes], - [HAVE_PLASMA=no]) -else - USE_ARROW_BUILD_DIR=yes - - ARROW_BUILD_DIR="${GARROW_ARROW_CPP_BUILD_DIR}" - AC_SUBST(ARROW_BUILD_DIR) - - ARROW_SOURCE_INCLUDE_DIR="\$(abs_top_srcdir)/../cpp/src" - ARROW_BUILD_INCLUDE_DIR="${GARROW_ARROW_CPP_BUILD_DIR}/src" - ARROW_LIB_DIR="${GARROW_ARROW_CPP_BUILD_DIR}/${GARROW_ARROW_CPP_BUILD_TYPE}" - AC_SUBST(ARROW_LIB_DIR) - - ARROW_CFLAGS="-I${ARROW_BUILD_INCLUDE_DIR} -I${ARROW_SOURCE_INCLUDE_DIR}" - ARROW_LIBS="-L\$(ARROW_LIB_DIR) -larrow" - AC_SUBST(ARROW_CFLAGS) - AC_SUBST(ARROW_LIBS) - - if test -f "${GARROW_ARROW_CPP_BUILD_DIR}/src/arrow/adapters/orc/arrow-orc.pc"; then - HAVE_ARROW_ORC=yes - else - HAVE_ARROW_ORC=no - fi - - ARROW_CUDA_CFLAGS="\$(ARROW_CFLAGS)" - if test -f "${GARROW_ARROW_CPP_BUILD_DIR}/src/arrow/gpu/arrow-cuda.pc"; then - HAVE_ARROW_CUDA=yes - ARROW_CUDA_LIBS="-L\$(ARROW_LIB_DIR) -larrow_cuda -larrow" - ARROW_CUDA_PKG_CONFIG_PATH="\$(ARROW_BUILD_DIR)/src/arrow/gpu" - else - HAVE_ARROW_CUDA=no - ARROW_CUDA_LIBS="" - ARROW_CUDA_PKG_CONFIG_PATH="" - fi - AC_SUBST(ARROW_CUDA_CFLAGS) - AC_SUBST(ARROW_CUDA_LIBS) - AC_SUBST(ARROW_CUDA_PKG_CONFIG_PATH) - - ARROW_DATASET_CFLAGS="\$(ARROW_CFLAGS)" - if test -f "${GARROW_ARROW_CPP_BUILD_DIR}/src/arrow/dataset/arrow-dataset.pc"; then - HAVE_ARROW_DATASET=yes - ARROW_DATASET_LIBS="-L\$(ARROW_LIB_DIR) -larrow_dataset -lparquet -larrow" - else - HAVE_ARROW_DATASET=no - ARROW_DATASET_LIBS="" - fi - AC_SUBST(ARROW_DATASET_CFLAGS) - AC_SUBST(ARROW_DATASET_LIBS) - - GANDIVA_CFLAGS="\$(ARROW_CFLAGS)" - if test -f "${GARROW_ARROW_CPP_BUILD_DIR}/src/gandiva/gandiva.pc"; then - HAVE_GANDIVA=yes - GANDIVA_LIBS="-L\$(ARROW_LIB_DIR) -lgandiva -larrow" - else - HAVE_GANDIVA=no - GANDIVA_LIBS="" - fi - AC_SUBST(GANDIVA_CFLAGS) - AC_SUBST(GANDIVA_LIBS) - - PARQUET_CFLAGS="\$(ARROW_CFLAGS)" - if test -f "${GARROW_ARROW_CPP_BUILD_DIR}/src/parquet/parquet.pc"; then - HAVE_PARQUET=yes - PARQUET_LIBS="-L\$(ARROW_LIB_DIR) -lparquet -larrow" - else - HAVE_PARQUET=no - PARQUET_LIBS="" - fi - AC_SUBST(PARQUET_CFLAGS) - AC_SUBST(PARQUET_LIBS) - - PLASMA_CFLAGS="\$(ARROW_CFLAGS)" - if test -f "${GARROW_ARROW_CPP_BUILD_DIR}/src/plasma/plasma.pc"; then - HAVE_PLASMA=yes - PLASMA_LIBS="-L\$(ARROW_LIB_DIR) -lplasma -larrow" - else - HAVE_PLASMA=no - PLASMA_LIBS="" - fi - AC_SUBST(PLASMA_CFLAGS) - AC_SUBST(PLASMA_LIBS) -fi - -AM_CONDITIONAL([USE_ARROW_BUILD_DIR], - [test "$USE_ARROW_BUILD_DIR" = "yes"]) - -AM_CONDITIONAL([HAVE_ARROW_ORC], [test "$HAVE_ARROW_ORC" = "yes"]) -if test "$HAVE_ARROW_ORC" = "yes"; then - AC_DEFINE(HAVE_ARROW_ORC, [1], [Define to 1 if Apache Arrow supports ORC.]) -fi - -AM_CONDITIONAL([HAVE_ARROW_CUDA], [test "$HAVE_ARROW_CUDA" = "yes"]) -if test "$HAVE_ARROW_CUDA" = "yes"; then - ARROW_CUDA_GLIB_PACKAGE="arrow-cuda-glib" - PLASMA_ARROW_CUDA_PKG_CONFIG_PATH=":\$(abs_top_builddir)/arrow-cuda-glib" - if test -n "${ARROW_CUDA_PKG_CONFIG_PATH}"; then - PLASMA_ARROW_CUDA_PKG_CONFIG_PATH=":${ARROW_CUDA_PKG_CONFIG_PATH}${PLASMA_ARROW_CUDA_PKG_CONFIG_PATH}" - fi - AC_DEFINE(HAVE_ARROW_CUDA, [1], [Define to 1 if Apache Arrow supports CUDA.]) -else - ARROW_CUDA_GLIB_PACKAGE="" - PLASMA_ARROW_CUDA_PKG_CONFIG_PATH="" -fi -AC_SUBST(ARROW_CUDA_GLIB_PACKAGE) -AC_SUBST(PLASMA_ARROW_CUDA_PKG_CONFIG_PATH) - -AM_CONDITIONAL([HAVE_ARROW_DATASET], [test "$HAVE_ARROW_DATASET" = "yes"]) -if test "$HAVE_ARROW_DATASET" = "yes"; then - AC_DEFINE(HAVE_ARROW_DATASET, [1], [Define to 1 if Apache Arrow Dataset exists.]) -fi - -AM_CONDITIONAL([HAVE_GANDIVA], [test "$HAVE_GANDIVA" = "yes"]) -if test "$HAVE_GANDIVA" = "yes"; then - AC_DEFINE(HAVE_GANDIVA, [1], [Define to 1 if Gandiva exists.]) -fi - -AM_CONDITIONAL([HAVE_PARQUET], [test "$HAVE_PARQUET" = "yes"]) -if test "$HAVE_PARQUET" = "yes"; then - AC_DEFINE(HAVE_PARQUET, [1], [Define to 1 if Apache Parquet exists.]) -fi - -AM_CONDITIONAL([HAVE_PLASMA], [test "$HAVE_PLASMA" = "yes"]) -if test "$HAVE_PLASMA" = "yes"; then - AC_DEFINE(HAVE_PLASMA, [1], [Define to 1 if Plasma exists.]) -fi - -exampledir="\$(datadir)/arrow-glib/example" -AC_SUBST(exampledir) - -AC_CONFIG_FILES([ - Makefile - arrow-cuda-glib/Makefile - arrow-cuda-glib/arrow-cuda-glib.pc - arrow-dataset-glib/Makefile - arrow-dataset-glib/arrow-dataset-glib.pc - arrow-glib/Makefile - arrow-glib/arrow-glib.pc - arrow-glib/arrow-orc-glib.pc - arrow-glib/version.h - gandiva-glib/Makefile - gandiva-glib/gandiva-glib.pc - gandiva-glib/version.h - parquet-glib/Makefile - parquet-glib/parquet-glib.pc - parquet-glib/version.h - plasma-glib/Makefile - plasma-glib/plasma-glib.pc - doc/Makefile - doc/arrow-dataset-glib/Makefile - doc/arrow-dataset-glib/entities.xml - doc/arrow-glib/Makefile - doc/arrow-glib/entities.xml - doc/gandiva-glib/Makefile - doc/gandiva-glib/entities.xml - doc/parquet-glib/Makefile - doc/parquet-glib/entities.xml - doc/plasma-glib/Makefile - doc/plasma-glib/entities.xml - example/Makefile - example/lua/Makefile -]) - -AC_OUTPUT diff --git a/c_glib/doc/Makefile.am b/c_glib/doc/Makefile.am deleted file mode 100644 index a56e0415f3d..00000000000 --- a/c_glib/doc/Makefile.am +++ /dev/null @@ -1,23 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -SUBDIRS = \ - arrow-glib \ - arrow-dataset-glib \ - gandiva-glib \ - parquet-glib \ - plasma-glib diff --git a/c_glib/doc/arrow-dataset-glib/Makefile.am b/c_glib/doc/arrow-dataset-glib/Makefile.am deleted file mode 100644 index d1c636143ff..00000000000 --- a/c_glib/doc/arrow-dataset-glib/Makefile.am +++ /dev/null @@ -1,69 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -if HAVE_ARROW_DATASET -DOC_MODULE = arrow-dataset-glib - -DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml - -DOC_SOURCE_DIR = \ - $(top_srcdir)/arrow-dataset-glib \ - $(top_builddir)/arrow-dataset-glib - -SCAN_OPTIONS = \ - --deprecated-guards="GARROW_DISABLE_DEPRECATED" - -MKDB_OPTIONS = \ - --name-space=gad \ - --source-suffixes="c,cpp,h" - -HFILE_GLOB = \ - $(top_srcdir)/arrow-dataset-glib/*.h - -IGNORE_HFILES = - -CFILE_GLOB = \ - $(top_srcdir)/arrow-dataset-glib/*.cpp - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(ARROW_CFLAGS) \ - $(ARROW_DATASET_CFLAGS) - -GTKDOC_LIBS = \ - $(top_builddir)/arrow-glib/libarrow-glib.la \ - $(top_builddir)/arrow-dataset-glib/libarrow-dataset-glib.la - -include $(top_srcdir)/gtk-doc.make - -CLEANFILES += \ - $(DOC_MODULE)-decl-list.txt \ - $(DOC_MODULE)-decl.txt \ - $(DOC_MODULE)-overrides.txt \ - $(DOC_MODULE)-sections.txt \ - $(DOC_MODULE).types -else -EXTRA_DIST = -endif - -EXTRA_DIST += \ - entities.xml.in \ - meson.build diff --git a/c_glib/doc/arrow-glib/Makefile.am b/c_glib/doc/arrow-glib/Makefile.am deleted file mode 100644 index db9f00f39f3..00000000000 --- a/c_glib/doc/arrow-glib/Makefile.am +++ /dev/null @@ -1,80 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -DOC_MODULE = arrow-glib - -DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml - -DOC_SOURCE_DIR = \ - $(top_srcdir)/arrow-glib \ - $(top_builddir)/arrow-glib - -SCAN_OPTIONS = \ - --deprecated-guards="GARROW_DISABLE_DEPRECATED" - -MKDB_OPTIONS = \ - --name-space=garrow \ - --source-suffixes="c,cpp,h" - -HFILE_GLOB = \ - $(top_srcdir)/arrow-glib/*.h \ - $(top_builddir)/arrow-glib/*.h - -IGNORE_HFILES = - -if !HAVE_ARROW_ORC -IGNORE_HFILES += \ - $(top_srcdir)/arrow-glib/orc-file-reader.h -endif - -CFILE_GLOB = \ - $(top_srcdir)/arrow-glib/*.cpp - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(ARROW_CFLAGS) - -GTKDOC_LIBS = \ - $(top_builddir)/arrow-glib/libarrow-glib.la - -if HAVE_ARROW_CUDA -DOC_SOURCE_DIR += \ - $(top_srcdir)/arrow-cuda-glib -HFILE_GLOB += \ - $(top_srcdir)/arrow-cuda-glib/*.h -CFILE_GLOB += \ - $(top_srcdir)/arrow-cuda-glib/*.cpp -GTKDOC_LIBS += \ - $(top_builddir)/arrow-cuda-glib/libarrow-cuda-glib.la -endif - -include $(top_srcdir)/gtk-doc.make - -CLEANFILES += \ - $(DOC_MODULE)-decl-list.txt \ - $(DOC_MODULE)-decl.txt \ - $(DOC_MODULE)-overrides.txt \ - $(DOC_MODULE)-sections.txt \ - $(DOC_MODULE).types - -EXTRA_DIST += \ - entities.xml.in \ - meson.build diff --git a/c_glib/doc/gandiva-glib/Makefile.am b/c_glib/doc/gandiva-glib/Makefile.am deleted file mode 100644 index 16d333d0ae3..00000000000 --- a/c_glib/doc/gandiva-glib/Makefile.am +++ /dev/null @@ -1,69 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -if HAVE_GANDIVA -DOC_MODULE = gandiva-glib - -DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml - -DOC_SOURCE_DIR = \ - $(top_srcdir)/gandiva-glib \ - $(top_builddir)/gandiva-glib - -SCAN_OPTIONS = \ - --deprecated-guards="GGANDIVA_DISABLE_DEPRECATED" - -MKDB_OPTIONS = \ - --name-space=ggandiva \ - --source-suffixes="c,cpp,h" - -HFILE_GLOB = \ - $(top_srcdir)/gandiva-glib/*.h - -IGNORE_HFILES = - -CFILE_GLOB = \ - $(top_srcdir)/gandiva-glib/*.cpp - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(ARROW_CFLAGS) \ - $(GANDIVA_CFLAGS) - -GTKDOC_LIBS = \ - $(top_builddir)/arrow-glib/libarrow-glib.la \ - $(top_builddir)/gandiva-glib/libgandiva-glib.la - -include $(top_srcdir)/gtk-doc.make - -CLEANFILES += \ - $(DOC_MODULE)-decl-list.txt \ - $(DOC_MODULE)-decl.txt \ - $(DOC_MODULE)-overrides.txt \ - $(DOC_MODULE)-sections.txt \ - $(DOC_MODULE).types -else -EXTRA_DIST = -endif - -EXTRA_DIST += \ - entities.xml.in \ - meson.build diff --git a/c_glib/doc/parquet-glib/Makefile.am b/c_glib/doc/parquet-glib/Makefile.am deleted file mode 100644 index d125be1b54c..00000000000 --- a/c_glib/doc/parquet-glib/Makefile.am +++ /dev/null @@ -1,69 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -if HAVE_PARQUET -DOC_MODULE = parquet-glib - -DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml - -DOC_SOURCE_DIR = \ - $(top_srcdir)/parquet-glib \ - $(top_builddir)/parquet-glib - -SCAN_OPTIONS = \ - --deprecated-guards="GPARQUET_DISABLE_DEPRECATED" - -MKDB_OPTIONS = \ - --name-space=gparquet \ - --source-suffixes="c,cpp,h" - -HFILE_GLOB = \ - $(top_srcdir)/parquet-glib/*.h - -IGNORE_HFILES = - -CFILE_GLOB = \ - $(top_srcdir)/parquet-glib/*.cpp - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(ARROW_CFLAGS) \ - $(PARQUET_CFLAGS) - -GTKDOC_LIBS = \ - $(top_builddir)/parquet-glib/libparquet-glib.la \ - $(top_builddir)/arrow-glib/libarrow-glib.la - -include $(top_srcdir)/gtk-doc.make - -CLEANFILES += \ - $(DOC_MODULE)-decl-list.txt \ - $(DOC_MODULE)-decl.txt \ - $(DOC_MODULE)-overrides.txt \ - $(DOC_MODULE)-sections.txt \ - $(DOC_MODULE).types -else -EXTRA_DIST = -endif - -EXTRA_DIST += \ - entities.xml.in \ - meson.build diff --git a/c_glib/doc/plasma-glib/Makefile.am b/c_glib/doc/plasma-glib/Makefile.am deleted file mode 100644 index df872d6ca31..00000000000 --- a/c_glib/doc/plasma-glib/Makefile.am +++ /dev/null @@ -1,76 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -PLASMA_ARROW_CUDA_GTKDOC_LIBS = -if HAVE_ARROW_CUDA -PLASMA_ARROW_CUDA_GTKDOC_LIBS += \ - $(top_builddir)/arrow-cuda-glib/libarrow-cuda-glib.la -endif - -if HAVE_PLASMA -DOC_MODULE = plasma-glib - -DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml - -DOC_SOURCE_DIR = \ - $(top_srcdir)/plasma-glib \ - $(top_builddir)/plasma-glib - -SCAN_OPTIONS = \ - --deprecated-guards="GPLASMA_DISABLE_DEPRECATED" - -MKDB_OPTIONS = \ - --name-space=gplasma \ - --source-suffixes="c,cpp,h" - -HFILE_GLOB = \ - $(top_srcdir)/plasma-glib/*.h - -IGNORE_HFILES = - -CFILE_GLOB = \ - $(top_srcdir)/plasma-glib/*.cpp - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(ARROW_CFLAGS) \ - $(PLASMA_CFLAGS) - -GTKDOC_LIBS = \ - $(top_builddir)/arrow-glib/libarrow-glib.la \ - $(PLASMA_ARROW_CUDA_GTKDOC_LIBS) \ - $(top_builddir)/plasma-glib/libplasma-glib.la - -include $(top_srcdir)/gtk-doc.make - -CLEANFILES += \ - $(DOC_MODULE)-decl-list.txt \ - $(DOC_MODULE)-decl.txt \ - $(DOC_MODULE)-overrides.txt \ - $(DOC_MODULE)-sections.txt \ - $(DOC_MODULE).types -else -EXTRA_DIST = -endif - -EXTRA_DIST += \ - entities.xml.in \ - meson.build diff --git a/c_glib/example/Makefile.am b/c_glib/example/Makefile.am deleted file mode 100644 index 9e460ecf8e0..00000000000 --- a/c_glib/example/Makefile.am +++ /dev/null @@ -1,64 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -SUBDIRS = \ - lua - -EXTRA_DIST = \ - meson.build - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) \ - -DGARROW_DISABLE_DEPRECATED - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(GARROW_CFLAGS) - -AM_LDFLAGS = \ - $(GLIB_LIBS) \ - $(builddir)/../arrow-glib/libarrow-glib.la -if USE_ARROW_BUILD_DIR -AM_LDFLAGS += \ - $(ARROW_LIBS) -endif - -noinst_PROGRAMS = \ - build \ - extension-type \ - read-batch \ - read-stream - -build_SOURCES = \ - build.c - -extension_type_SOURCES = \ - extension-type.c - -read_batch_SOURCES = \ - read-batch.c - -read_stream_SOURCES = \ - read-stream.c - -dist_example_DATA = \ - README.md \ - $(build_SOURCES) \ - $(extension_type_SOURCES) \ - $(read_batch_SOURCES) \ - $(read_stream_SOURCES) diff --git a/c_glib/example/lua/Makefile.am b/c_glib/example/lua/Makefile.am deleted file mode 100644 index 84ddbc7607b..00000000000 --- a/c_glib/example/lua/Makefile.am +++ /dev/null @@ -1,27 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -EXTRA_DIST = \ - meson.build - -lua_exampledir = $(exampledir)/lua -dist_lua_example_DATA = \ - README.md \ - read-batch.lua \ - read-stream.lua \ - write-batch.lua \ - write-stream.lua diff --git a/c_glib/gandiva-glib/Makefile.am b/c_glib/gandiva-glib/Makefile.am deleted file mode 100644 index 5991abeab3a..00000000000 --- a/c_glib/gandiva-glib/Makefile.am +++ /dev/null @@ -1,196 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -CLEANFILES = -DISTCLEANFILES = - -EXTRA_DIST = \ - meson.build - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(GARROW_CFLAGS) \ - $(GGANDIVA_CFLAGS) - -if HAVE_GANDIVA -lib_LTLIBRARIES = \ - libgandiva-glib.la - -libgandiva_glib_la_CXXFLAGS = \ - $(GLIB_CFLAGS) \ - $(GANDIVA_CFLAGS) \ - $(GARROW_CFLAGS) \ - $(GGANDIVA_CFLAGS) - -libgandiva_glib_la_LDFLAGS = \ - -version-info $(LT_VERSION_INFO) \ - -no-undefined - -libgandiva_glib_la_LIBADD = \ - $(GLIB_LIBS) \ - ../arrow-glib/libarrow-glib.la \ - $(GANDIVA_LIBS) - -libgandiva_glib_la_headers = \ - expression.h \ - function-registry.h \ - function-signature.h \ - gandiva-glib.h \ - native-function.h \ - node.h \ - projector.h - -libgandiva_glib_la_generated_headers = \ - enums.h \ - version.h - -libgandiva_glib_la_generated_sources = \ - enums.c \ - $(libgandiva_glib_la_generated_headers) - -libgandiva_glib_la_sources = \ - expression.cpp \ - function-registry.cpp \ - function-signature.cpp \ - node.cpp \ - native-function.cpp \ - projector.cpp \ - $(libgandiva_glib_la_headers) \ - $(libgandiva_glib_la_generated_sources) - -libgandiva_glib_la_cpp_headers = \ - expression.hpp \ - function-signature.hpp \ - gandiva-glib.hpp \ - native-function.hpp \ - node.hpp \ - projector.hpp - -libgandiva_glib_la_SOURCES = \ - $(libgandiva_glib_la_sources) \ - $(libgandiva_glib_la_cpp_headers) - -BUILT_SOURCES = \ - $(libgandiva_glib_la_generated_sources) \ - stamp-enums.c \ - stamp-enums.h - -DISTCLEANFILES += \ - stamp-enums.c \ - stamp-enums.h - -EXTRA_DIST += \ - enums.c.template \ - enums.h.template - -enums.h: stamp-enums.h - @true -stamp-enums.h: $(libgandiva_glib_la_headers) enums.h.template - $(AM_V_GEN) \ - (cd $(srcdir) && \ - $(GLIB_MKENUMS) \ - --identifier-prefix GGandiva \ - --symbol-prefix ggandiva \ - --template enums.h.template \ - $(libgandiva_glib_la_headers)) > enums.h - touch $@ - -enums.c: stamp-enums.c - @true -stamp-enums.c: $(libarrow_glib_la_headers) enums.c.template - $(AM_V_GEN) \ - (cd $(srcdir) && \ - $(GLIB_MKENUMS) \ - --identifier-prefix GGandiva \ - --symbol-prefix ggandiva \ - --template enums.c.template \ - $(libgandiva_glib_la_headers)) > enums.c - touch $@ - -gandiva_glib_includedir = $(includedir)/gandiva-glib -gandiva_glib_include_HEADERS = \ - $(libgandiva_glib_la_headers) \ - $(libgandiva_glib_la_cpp_headers) \ - $(libgandiva_glib_la_generated_headers) - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = \ - gandiva-glib.pc - -# GObject Introspection -if HAVE_INTROSPECTION --include $(INTROSPECTION_MAKEFILE) -INTROSPECTION_GIRS = -INTROSPECTION_SCANNER_ARGS = -INTROSPECTION_SCANNER_ENV = -if USE_ARROW_BUILD_DIR -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=${abs_top_builddir}/arrow-glib:$(ARROW_BUILD_DIR)/src/arrow:$${PKG_CONFIG_PATH} -else -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=${abs_top_builddir}/arrow-glib:$${PKG_CONFIG_PATH} -endif -INTROSPECTION_COMPILER_ARGS = \ - --includedir=$(abs_top_builddir)/arrow-glib - -Gandiva-1.0.gir: libgandiva-glib.la -Gandiva_1_0_gir_PACKAGES = \ - arrow-glib -Gandiva_1_0_gir_EXPORT_PACKAGES = \ - gandiva-glib -Gandiva_1_0_gir_INCLUDES = \ - Arrow-1.0 -Gandiva_1_0_gir_CFLAGS = \ - $(AM_CPPFLAGS) -Gandiva_1_0_gir_LIBS = -Gandiva_1_0_gir_FILES = $(libgandiva_glib_la_sources) -Gandiva_1_0_gir_SCANNERFLAGS = \ - --add-include-path=$(abs_top_builddir)/arrow-glib \ - --library-path=$(ARROW_LIB_DIR) \ - --warn-all \ - --identifier-prefix=GGandiva \ - --symbol-prefix=ggandiva -if OS_MACOS -Gandiva_1_0_gir_LIBS += \ - arrow-glib \ - gandiva-glib -Gandiva_1_0_gir_SCANNERFLAGS += \ - --no-libtool \ - --library-path=$(abs_top_builddir)/arrow-glib/.libs \ - --library-path=$(abs_builddir)/.libs -else -Gandiva_1_0_gir_LIBS += \ - $(abs_top_builddir)/arrow-glib/libarrow-glib.la \ - libgandiva-glib.la -endif -INTROSPECTION_GIRS += Gandiva-1.0.gir - -girdir = $(datadir)/gir-1.0 -gir_DATA = $(INTROSPECTION_GIRS) - -typelibdir = $(libdir)/girepository-1.0 -typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) - -CLEANFILES += \ - $(gir_DATA) \ - $(typelib_DATA) -endif -endif diff --git a/c_glib/gandiva-glib/gandiva-glib.pc.in b/c_glib/gandiva-glib/gandiva-glib.pc.in deleted file mode 100644 index 7160f5ff422..00000000000 --- a/c_glib/gandiva-glib/gandiva-glib.pc.in +++ /dev/null @@ -1,28 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: Apache Arrow Gandiva GLib -Description: C API for Apache Arrow Gandiva based on GLib -Version: @VERSION@ -Libs: -L${libdir} -lgandiva-glib -Cflags: -I${includedir} -Requires: gandiva arrow-glib diff --git a/c_glib/parquet-glib/Makefile.am b/c_glib/parquet-glib/Makefile.am deleted file mode 100644 index a813b3ce9cc..00000000000 --- a/c_glib/parquet-glib/Makefile.am +++ /dev/null @@ -1,145 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -CLEANFILES = -DISTCLEANFILES = - -EXTRA_DIST = \ - meson.build - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(GARROW_CFLAGS) \ - $(GPARQUET_CFLAGS) - -if HAVE_PARQUET -lib_LTLIBRARIES = \ - libparquet-glib.la - -libparquet_glib_la_CXXFLAGS = \ - $(GLIB_CFLAGS) \ - $(PARQUET_CFLAGS) \ - $(GARROW_CFLAGS) \ - $(GPARQUET_CXXFLAGS) - -libparquet_glib_la_LDFLAGS = \ - -version-info $(LT_VERSION_INFO) \ - -no-undefined - -libparquet_glib_la_LIBADD = \ - $(GLIB_LIBS) \ - ../arrow-glib/libarrow-glib.la \ - $(PARQUET_LIBS) - -libparquet_glib_la_headers = \ - arrow-file-reader.h \ - arrow-file-writer.h \ - parquet-glib.h - -libparquet_glib_la_generated_headers = \ - version.h - -libparquet_glib_la_sources = \ - arrow-file-reader.cpp \ - arrow-file-writer.cpp \ - $(libparquet_glib_la_headers) \ - $(libparquet_glib_la_generated_headers) - -libparquet_glib_la_cpp_headers = \ - arrow-file-reader.hpp \ - arrow-file-writer.hpp \ - parquet-glib.hpp - -libparquet_glib_la_SOURCES = \ - $(libparquet_glib_la_sources) \ - $(libparquet_glib_la_cpp_headers) - -BUILT_SOURCES = \ - $(libparquet_glib_la_generated_headers) - -parquet_glib_includedir = $(includedir)/parquet-glib -parquet_glib_include_HEADERS = \ - $(libparquet_glib_la_headers) \ - $(libparquet_glib_la_cpp_headers) - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = \ - parquet-glib.pc - -# GObject Introspection -if HAVE_INTROSPECTION --include $(INTROSPECTION_MAKEFILE) -INTROSPECTION_GIRS = -INTROSPECTION_SCANNER_ARGS = -INTROSPECTION_SCANNER_ENV = -if USE_ARROW_BUILD_DIR -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=${abs_top_builddir}/arrow-glib:$(ARROW_BUILD_DIR)/src/arrow:$${PKG_CONFIG_PATH} -else -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=${abs_top_builddir}/arrow-glib:$${PKG_CONFIG_PATH} -endif -INTROSPECTION_COMPILER_ARGS = \ - --includedir=$(abs_top_builddir)/arrow-glib - -Parquet-1.0.gir: libparquet-glib.la -Parquet_1_0_gir_PACKAGES = \ - arrow-glib -Parquet_1_0_gir_EXPORT_PACKAGES = \ - parquet-glib -Parquet_1_0_gir_INCLUDES = \ - Arrow-1.0 -Parquet_1_0_gir_CFLAGS = \ - $(AM_CPPFLAGS) -Parquet_1_0_gir_LIBS = -Parquet_1_0_gir_FILES = $(libparquet_glib_la_sources) -Parquet_1_0_gir_SCANNERFLAGS = \ - --add-include-path=$(abs_top_builddir)/arrow-glib \ - --library-path=$(ARROW_LIB_DIR) \ - --warn-all \ - --identifier-prefix=GParquet \ - --symbol-prefix=gparquet -if OS_MACOS -Parquet_1_0_gir_LIBS += \ - arrow-glib \ - parquet-glib -Parquet_1_0_gir_SCANNERFLAGS += \ - --no-libtool \ - --library-path=$(abs_top_builddir)/arrow-glib/.libs \ - --library-path=$(abs_builddir)/.libs -else -Parquet_1_0_gir_LIBS += \ - $(abs_top_builddir)/arrow-glib/libarrow-glib.la \ - libparquet-glib.la -endif -INTROSPECTION_GIRS += Parquet-1.0.gir - -girdir = $(datadir)/gir-1.0 -gir_DATA = $(INTROSPECTION_GIRS) - -typelibdir = $(libdir)/girepository-1.0 -typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) - -CLEANFILES += \ - $(gir_DATA) \ - $(typelib_DATA) -endif -endif diff --git a/c_glib/parquet-glib/parquet-glib.pc.in b/c_glib/parquet-glib/parquet-glib.pc.in deleted file mode 100644 index 81559f1bce1..00000000000 --- a/c_glib/parquet-glib/parquet-glib.pc.in +++ /dev/null @@ -1,28 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: Apache Parquet GLib -Description: C API for Apache Parquet based on GLib -Version: @VERSION@ -Libs: -L${libdir} -lparquet-glib -Cflags: -I${includedir} -Requires: arrow-glib diff --git a/c_glib/plasma-glib/Makefile.am b/c_glib/plasma-glib/Makefile.am deleted file mode 100644 index 60499a4065f..00000000000 --- a/c_glib/plasma-glib/Makefile.am +++ /dev/null @@ -1,171 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -CLEANFILES = -DISTCLEANFILES = - -EXTRA_DIST = \ - meson.build - -AM_CPPFLAGS = \ - -I$(top_builddir) \ - -I$(top_srcdir) \ - -DG_LOG_DOMAIN=\"Plasma\" - -AM_CFLAGS = \ - $(GLIB_CFLAGS) \ - $(GARROW_CFLAGS) \ - $(GPLASMA_CFLAGS) - -PLASMA_ARROW_CUDA_LIBS = -PLASMA_INTROSPECTION_COMPILER_ARROW_CUDA_ARGS = -PLASMA_GIR_ARROW_CUDA_PACKAGE = -PLASMA_GIR_ARROW_CUDA_SCANNER_ADD_INCLUDE_PATH = -PLASMA_GIR_ARROW_CUDA_LIBS_MACOS = -PLASMA_GIR_ARROW_CUDA_SCANNER_LIBRARY_PATH_MACOS = -PLASMA_GIR_ARROW_CUDA_LIBS = -if HAVE_ARROW_CUDA -PLASMA_ARROW_CUDA_LIBS += \ - ../arrow-cuda-glib/libarrow-cuda-glib.la \ - $(ARROW_CUDA_LIBS) -PLASMA_INTROSPECTION_COMPILER_ARROW_CUDA_ARGS += \ - --includedir=$(abs_top_builddir)/arrow-cuda-glib -PLASMA_GIR_ARROW_CUDA_PACKAGE += \ - arrow-cuda-glib -PLASMA_GIR_ARROW_CUDA_SCANNER_ADD_INCLUDE_PATH += \ - --add-include-path=$(abs_top_builddir)/arrow-cuda-glib -PLASMA_GIR_ARROW_CUDA_LIBS_MACOS += \ - arrow-cuda-glib -PLASMA_GIR_ARROW_CUDA_SCANNER_LIBRARY_PATH_MACOS += \ - --library-path=$(abs_top_builddir)/arrow-cuda-glib/.libs -PLASMA_GIR_ARROW_CUDA_LIBS += \ - $(abs_top_builddir)/arrow-cuda-glib/libarrow-cuda-glib.la -endif - -if HAVE_PLASMA -lib_LTLIBRARIES = \ - libplasma-glib.la - -libplasma_glib_la_CXXFLAGS = \ - $(GLIB_CFLAGS) \ - $(PLASMA_CFLAGS) \ - $(GARROW_CFLAGS) \ - $(GPLASMA_CFLAGS) - -libplasma_glib_la_LDFLAGS = \ - -version-info $(LT_VERSION_INFO) \ - -no-undefined - -libplasma_glib_la_LIBADD = \ - $(GLIB_LIBS) \ - ../arrow-glib/libarrow-glib.la \ - $(PLASMA_LIBS) \ - $(PLASMA_ARROW_CUDA_LIBS) - -libplasma_glib_la_headers = \ - client.h \ - object.h \ - plasma-glib.h - -libplasma_glib_la_sources = \ - client.cpp \ - object.cpp \ - $(libplasma_glib_la_headers) - -libplasma_glib_la_cpp_headers = \ - client.hpp \ - object.hpp \ - plasma-glib.hpp - -libplasma_glib_la_SOURCES = \ - $(libplasma_glib_la_sources) \ - $(libplasma_glib_la_cpp_headers) - -plasma_glib_includedir = $(includedir)/plasma-glib -plasma_glib_include_HEADERS = \ - $(libplasma_glib_la_headers) \ - $(libplasma_glib_la_cpp_headers) - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = \ - plasma-glib.pc - -# GObject Introspection -if HAVE_INTROSPECTION --include $(INTROSPECTION_MAKEFILE) -INTROSPECTION_GIRS = -INTROSPECTION_SCANNER_ARGS = -INTROSPECTION_SCANNER_ENV = -if USE_ARROW_BUILD_DIR -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=$(abs_top_builddir)/arrow-glib$(PLASMA_ARROW_CUDA_PKG_CONFIG_PATH):$(ARROW_BUILD_DIR)/src/arrow:$${PKG_CONFIG_PATH} -else -INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=$(abs_top_builddir)/arrow-glib$(PLASMA_ARROW_CUDA_PKG_CONFIG_PATH):$${PKG_CONFIG_PATH} -endif -INTROSPECTION_COMPILER_ARGS = \ - --includedir=$(abs_top_builddir)/arrow-glib \ - $(PLASMA_INTROSPECTION_COMPILER_ARROW_CUDA_INCLUDEDIR) - -Plasma-1.0.gir: libplasma-glib.la -Plasma_1_0_gir_PACKAGES = \ - arrow-glib \ - $(PLASMA_GIR_ARROW_CUDA_PACKAGE) -Plasma_1_0_gir_EXPORT_PACKAGES = \ - plasma-glib -Plasma_1_0_gir_INCLUDES = \ - Arrow-1.0 -Plasma_1_0_gir_CFLAGS = \ - $(AM_CPPFLAGS) -Plasma_1_0_gir_LIBS = -Plasma_1_0_gir_FILES = $(libplasma_glib_la_sources) -Plasma_1_0_gir_SCANNERFLAGS = \ - --add-include-path=$(abs_top_builddir)/arrow-glib \ - $(PLASMA_GIR_ARROW_CUDA_SCANNER_ADD_INCLUDE_PATH) \ - --library-path=$(ARROW_LIB_DIR) \ - --warn-all \ - --identifier-prefix=GPlasma \ - --symbol-prefix=gplasma -if OS_MACOS -Plasma_1_0_gir_LIBS += \ - arrow-glib \ - $(PLASMA_GIR_ARROW_CUDA_LIBS_MACOS) \ - plasma-glib -Plasma_1_0_gir_SCANNERFLAGS += \ - --no-libtool \ - --library-path=$(abs_top_builddir)/arrow-glib/.libs \ - $(PLASMA_GIR_ARROW_CUDA_SCANNER_LIBRARY_PATH_MACOS) \ - --library-path=$(abs_builddir)/.libs -else -Plasma_1_0_gir_LIBS += \ - $(abs_top_builddir)/arrow-glib/libarrow-glib.la \ - $(PLASMA_GIR_ARROW_CUDA_LIBS) \ - libplasma-glib.la -endif -INTROSPECTION_GIRS += Plasma-1.0.gir - -girdir = $(datadir)/gir-1.0 -gir_DATA = $(INTROSPECTION_GIRS) - -typelibdir = $(libdir)/girepository-1.0 -typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) - -CLEANFILES += \ - $(gir_DATA) \ - $(typelib_DATA) -endif -endif diff --git a/c_glib/plasma-glib/plasma-glib.pc.in b/c_glib/plasma-glib/plasma-glib.pc.in deleted file mode 100644 index c82fe69580f..00000000000 --- a/c_glib/plasma-glib/plasma-glib.pc.in +++ /dev/null @@ -1,28 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: Apache Arrow Plasma GLib -Description: C API for Apache Arrow Plasma based on GLib -Version: @VERSION@ -Libs: -L${libdir} -lplasma-glib -Cflags: -I${includedir} -Requires: plasma arrow-glib @ARROW_CUDA_GLIB_PACKAGE@ diff --git a/dev/release/00-prepare-test.rb b/dev/release/00-prepare-test.rb index bd1cee868d9..b686ecd97d1 100644 --- a/dev/release/00-prepare-test.rb +++ b/dev/release/00-prepare-test.rb @@ -130,13 +130,6 @@ def test_version_pre_tag omit_on_release_branch prepare("VERSION_PRE_TAG") assert_equal([ - { - path: "c_glib/configure.ac", - hunks: [ - ["-m4_define([arrow_glib_version], #{@snapshot_version})", - "+m4_define([arrow_glib_version], #{@release_version})"], - ], - }, { path: "c_glib/meson.build", hunks: [ @@ -383,13 +376,6 @@ def test_version_post_tag "VERSION_POST_TAG") end assert_equal([ - { - path: "c_glib/configure.ac", - hunks: [ - ["-m4_define([arrow_glib_version], #{@release_version})", - "+m4_define([arrow_glib_version], #{@next_snapshot_version})"], - ], - }, { path: "c_glib/meson.build", hunks: [ diff --git a/dev/release/00-prepare.sh b/dev/release/00-prepare.sh index 03c474449d4..3e3ce19656a 100755 --- a/dev/release/00-prepare.sh +++ b/dev/release/00-prepare.sh @@ -43,14 +43,11 @@ update_versions() { esac cd "${SOURCE_DIR}/../../c_glib" - sed -i.bak -E -e \ - "s/^m4_define\(\[arrow_glib_version\], .+\)/m4_define([arrow_glib_version], ${version})/" \ - configure.ac sed -i.bak -E -e \ "s/^version = '.+'/version = '${version}'/" \ meson.build - rm -f configure.ac.bak meson.build.bak - git add configure.ac meson.build + rm -f meson.build.bak + git add meson.build cd - cd "${SOURCE_DIR}/../../ci/scripts" diff --git a/dev/release/02-source-test.rb b/dev/release/02-source-test.rb index f354c681b5b..7d92881f282 100644 --- a/dev/release/02-source-test.rb +++ b/dev/release/02-source-test.rb @@ -53,17 +53,6 @@ def test_symbolic_links end end - def test_glib_configure - source("GLIB") - Dir.chdir("#{@tag_name}/c_glib") do - assert_equal([ - "configure", - "configure.ac", - ], - Dir.glob("configure*").sort) - end - end - def test_csharp_git_commit_information source Dir.chdir("#{@tag_name}/csharp") do diff --git a/dev/release/02-source.sh b/dev/release/02-source.sh index 0eca86d2835..89850e7543d 100755 --- a/dev/release/02-source.sh +++ b/dev/release/02-source.sh @@ -21,7 +21,6 @@ set -e : ${SOURCE_DEFAULT:=1} -: ${SOURCE_GLIB:=${SOURCE_DEFAULT}} : ${SOURCE_RAT:=${SOURCE_DEFAULT}} : ${SOURCE_UPLOAD:=${SOURCE_DEFAULT}} : ${SOURCE_VOTE:=${SOURCE_DEFAULT}} @@ -63,24 +62,6 @@ rm -rf ${tag} git archive ${release_hash} --prefix ${tag}/) | \ tar xf - -# Replace c_glib/ after running c_glib/autogen.sh to create c_gilb/ source archive containing the configure script -if [ ${SOURCE_GLIB} -gt 0 ]; then - archive_name=tmp-apache-arrow - (cd "${SOURCE_TOP_DIR}" && \ - git archive ${release_hash} --prefix ${archive_name}/) \ - > "${SOURCE_TOP_DIR}/${archive_name}.tar" - c_glib_including_configure_tar_gz=c_glib.tar.gz - docker build -t arrow-release-source "${SOURCE_TOP_DIR}/dev/release/source" - docker run \ - -v "${SOURCE_TOP_DIR}":/arrow:delegated \ - arrow-release-source \ - /arrow/dev/release/source/build.sh ${archive_name} ${c_glib_including_configure_tar_gz} - rm -f "${SOURCE_TOP_DIR}/${archive_name}.tar" - rm -rf ${tag}/c_glib - tar xf "${SOURCE_TOP_DIR}/${c_glib_including_configure_tar_gz}" -C ${tag} - rm -f "${SOURCE_TOP_DIR}/${c_glib_including_configure_tar_gz}" -fi - # Resolve all hard and symbolic links rm -rf ${tag}.tmp mv ${tag} ${tag}.tmp diff --git a/dev/release/rat_exclude_files.txt b/dev/release/rat_exclude_files.txt index 191124ce267..c32db1d81db 100644 --- a/dev/release/rat_exclude_files.txt +++ b/dev/release/rat_exclude_files.txt @@ -141,33 +141,6 @@ MANIFEST.in __init__.pxd __init__.py requirements.txt -c_glib/configure -c_glib/version -c_glib/m4/*.m4 -c_glib/config/config.sub -c_glib/config.h.in -c_glib/config/compile -c_glib/config/missing -c_glib/config/install-sh -c_glib/config/config.guess -c_glib/config/depcomp -c_glib/config/ltmain.sh -c_glib/doc/arrow-dataset-glib/arrow-dataset-glib.types -c_glib/doc/arrow-dataset-glib/arrow-dataset-glib-sections.txt -c_glib/doc/arrow-dataset-glib/arrow-dataset-glib-overrides.txt -c_glib/doc/arrow-glib/arrow-glib.types -c_glib/doc/arrow-glib/arrow-glib-sections.txt -c_glib/doc/arrow-glib/arrow-glib-overrides.txt -c_glib/doc/gandiva-glib/gandiva-glib.types -c_glib/doc/gandiva-glib/gandiva-glib-sections.txt -c_glib/doc/gandiva-glib/gandiva-glib-overrides.txt -c_glib/doc/parquet-glib/parquet-glib.types -c_glib/doc/parquet-glib/parquet-glib-sections.txt -c_glib/doc/parquet-glib/parquet-glib-overrides.txt -c_glib/doc/plasma-glib/plasma-glib.types -c_glib/doc/plasma-glib/plasma-glib-sections.txt -c_glib/doc/plasma-glib/plasma-glib-overrides.txt -c_glib/gtk-doc.make csharp/.gitattributes csharp/dummy.git/* csharp/src/Apache.Arrow/Flatbuf/* diff --git a/dev/release/source/Dockerfile b/dev/release/source/Dockerfile deleted file mode 100644 index 7d5453b80c4..00000000000 --- a/dev/release/source/Dockerfile +++ /dev/null @@ -1,31 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -FROM debian:buster - -ENV DEBIAN_FRONTEND noninteractive - -RUN apt update && \ - apt install -y -V \ - autoconf-archive \ - gtk-doc-tools \ - libgirepository1.0-dev \ - libglib2.0-doc \ - libtool \ - pkg-config && \ - apt clean && \ - rm -rf /var/lib/apt/lists/* diff --git a/dev/release/source/build.sh b/dev/release/source/build.sh deleted file mode 100755 index 558600e1fb7..00000000000 --- a/dev/release/source/build.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -set -e - -archive_name=$1 -c_glib_including_configure_tar_gz=$2 - -tar xf /arrow/${archive_name}.tar - -# Run autogen.sh to create c_glib/ source archive containing the configure script -cd ${archive_name}/c_glib -./autogen.sh -rm -rf autom4te.cache -cd - -mv ${archive_name}/c_glib/ c_glib/ -tar czf /arrow/${c_glib_including_configure_tar_gz} c_glib diff --git a/dev/release/verify-release-candidate.sh b/dev/release/verify-release-candidate.sh index d208a38428b..222e70289df 100755 --- a/dev/release/verify-release-candidate.sh +++ b/dev/release/verify-release-candidate.sh @@ -383,19 +383,11 @@ test_python() { test_glib() { pushd c_glib - if brew --prefix libffi > /dev/null 2>&1; then - PKG_CONFIG_PATH=$(brew --prefix libffi)/lib/pkgconfig:$PKG_CONFIG_PATH - fi + pip install meson - if [ -f configure ]; then - ./configure --prefix=$ARROW_HOME - make -j$NPROC - make install - else - meson build --prefix=$ARROW_HOME --libdir=lib - ninja -C build - ninja -C build install - fi + meson build --prefix=$ARROW_HOME --libdir=lib + ninja -C build + ninja -C build install export GI_TYPELIB_PATH=$ARROW_HOME/lib/girepository-1.0:$GI_TYPELIB_PATH diff --git a/dev/tasks/linux-packages/apache-arrow/apt/debian-buster/Dockerfile b/dev/tasks/linux-packages/apache-arrow/apt/debian-buster/Dockerfile index 20ddef188a2..5dcc1b46b2d 100644 --- a/dev/tasks/linux-packages/apache-arrow/apt/debian-buster/Dockerfile +++ b/dev/tasks/linux-packages/apache-arrow/apt/debian-buster/Dockerfile @@ -40,6 +40,7 @@ RUN \ apt update ${quiet} && \ apt install -y -V ${quiet} \ build-essential \ + ccache \ cmake \ debhelper \ devscripts \ diff --git a/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-bionic/Dockerfile b/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-bionic/Dockerfile index df518855cfb..60be9295194 100644 --- a/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-bionic/Dockerfile +++ b/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-bionic/Dockerfile @@ -34,6 +34,7 @@ RUN \ apt update ${quiet} && \ apt install -y -V ${quiet} \ build-essential \ + ccache \ clang-10 \ cmake \ devscripts \ diff --git a/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-focal/Dockerfile b/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-focal/Dockerfile index c1404da6e92..ad83bfa9002 100644 --- a/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-focal/Dockerfile +++ b/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-focal/Dockerfile @@ -34,6 +34,7 @@ RUN \ apt update ${quiet} && \ apt install -y -V ${quiet} \ build-essential \ + ccache \ clang-10 \ cmake \ debhelper \ diff --git a/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-groovy/Dockerfile b/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-groovy/Dockerfile index 7b9cf7e16e7..d60e6320e36 100644 --- a/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-groovy/Dockerfile +++ b/dev/tasks/linux-packages/apache-arrow/apt/ubuntu-groovy/Dockerfile @@ -34,6 +34,7 @@ RUN \ apt update ${quiet} && \ apt install -y -V ${quiet} \ build-essential \ + ccache \ clang-11 \ cmake \ debhelper \ diff --git a/dev/tasks/linux-packages/apache-arrow/debian/rules b/dev/tasks/linux-packages/apache-arrow/debian/rules index 2adf2add082..60f6ddbe4d4 100755 --- a/dev/tasks/linux-packages/apache-arrow/debian/rules +++ b/dev/tasks/linux-packages/apache-arrow/debian/rules @@ -36,6 +36,7 @@ override_dh_auto_configure: -DARROW_PLASMA=$${ARROW_PLASMA} \ -DARROW_PYTHON=ON \ -DARROW_S3=ON \ + -DARROW_USE_CCACHE=OFF \ -DARROW_WITH_BROTLI=ON \ -DARROW_WITH_BZ2=ON \ -DARROW_WITH_LZ4=ON \ diff --git a/dev/tasks/linux-packages/apache-arrow/yum/arrow.spec.in b/dev/tasks/linux-packages/apache-arrow/yum/arrow.spec.in index 0e248d6d0d7..842b3b0f014 100644 --- a/dev/tasks/linux-packages/apache-arrow/yum/arrow.spec.in +++ b/dev/tasks/linux-packages/apache-arrow/yum/arrow.spec.in @@ -43,8 +43,6 @@ # %define use_s3 (%{_centos_ver} >= 8) %define use_s3 0 -%define use_meson (%{_centos_ver} >= 8) - %define have_rapidjson (%{_centos_ver} == 7) %define have_re2 (%{_centos_ver} >= 8) %define have_utf8proc (%{_centos_ver} == 7) @@ -94,9 +92,6 @@ BuildRequires: llvm-devel BuildRequires: ncurses-devel %endif -%if !%{use_meson} -BuildRequires: autoconf-archive -%endif BuildRequires: gobject-introspection-devel BuildRequires: gtk-doc @@ -134,6 +129,7 @@ cd cpp/build -DARROW_WITH_ZLIB=ON \ -DARROW_WITH_ZSTD=ON \ -DCMAKE_BUILD_TYPE=$cpp_build_type \ + -DARROW_USE_CCACHE=OFF \ -DCMAKE_UNITY_BUILD=ON \ -DPARQUET_REQUIRE_ENCRYPTION=ON \ -DPythonInterp_FIND_VERSION=ON \ @@ -150,7 +146,6 @@ make %{?_smp_mflags} cd - cd c_glib -%if %{use_meson} pip3 install meson meson setup build \ --default-library=both \ @@ -160,35 +155,14 @@ meson setup build \ -Darrow_cpp_build_type=$cpp_build_type \ -Dgtk_doc=true LD_LIBRARY_PATH=$PWD/../cpp/build/$cpp_build_type ninja -C build %{?_smp_mflags} -%else -./autogen.sh -%configure \ - --with-arrow-cpp-build-dir=$PWD/../cpp/build \ - --with-arrow-cpp-build-type=$cpp_build_type \ - --enable-gtk-doc -sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool -sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool -ld_library_path=$PWD/arrow-glib/.libs/ -ld_library_path=$ld_library_path:$PWD/arrow-dataset-glib/.libs/ -ld_library_path=$ld_library_path:$PWD/parquet-glib/.libs/ -ld_library_path=$ld_library_path:$PWD/plasma-glib/.libs/ -ld_library_path=$ld_library_path:$PWD/../cpp/build/$cpp_build_type -LD_LIBRARY_PATH=$ld_library_path make %{?_smp_mflags} -%endif cd - %install cpp_build_type=release cd c_glib -%if %{use_meson} DESTDIR=$RPM_BUILD_ROOT ninja -C build install ninja -C build clean -%else -make install DESTDIR=$RPM_BUILD_ROOT -rm $RPM_BUILD_ROOT%{_libdir}/*.la -make clean -%endif cd - cd cpp/build diff --git a/dev/tasks/linux-packages/apache-arrow/yum/centos-7/Dockerfile b/dev/tasks/linux-packages/apache-arrow/yum/centos-7/Dockerfile index a218b4184fc..8c6c9d66d25 100644 --- a/dev/tasks/linux-packages/apache-arrow/yum/centos-7/Dockerfile +++ b/dev/tasks/linux-packages/apache-arrow/yum/centos-7/Dockerfile @@ -28,11 +28,11 @@ RUN \ yum install -y ${quiet} epel-release && \ yum groupinstall -y ${quiet} "Development Tools" && \ yum install -y ${quiet} \ - autoconf-archive \ bison \ boost169-devel \ brotli-devel \ bzip2-devel \ + ccache \ cmake3 \ flex \ gflags-devel \ @@ -42,6 +42,7 @@ RUN \ gtk-doc \ libzstd-devel \ lz4-devel \ + ninja-build \ openssl-devel \ pkg-config \ python36 \ diff --git a/dev/tasks/linux-packages/apache-arrow/yum/centos-8/Dockerfile b/dev/tasks/linux-packages/apache-arrow/yum/centos-8/Dockerfile index fdbf910e39a..66c435c333d 100644 --- a/dev/tasks/linux-packages/apache-arrow/yum/centos-8/Dockerfile +++ b/dev/tasks/linux-packages/apache-arrow/yum/centos-8/Dockerfile @@ -30,6 +30,7 @@ RUN \ boost-devel \ brotli-devel \ bzip2-devel \ + ccache \ clang \ cmake \ curl-devel \ diff --git a/dev/tasks/linux-packages/apt/build.sh b/dev/tasks/linux-packages/apt/build.sh index dab579505ec..73538e7e8d2 100755 --- a/dev/tasks/linux-packages/apt/build.sh +++ b/dev/tasks/linux-packages/apt/build.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # -*- sh-indentation: 2; sh-basic-offset: 2 -*- # # Licensed to the Apache Software Foundation (ASF) under one @@ -45,10 +45,30 @@ case "${distribution}" in esac architecture=$(dpkg-architecture -q DEB_BUILD_ARCH) -run mkdir -p build +debuild_options=() +dpkg_buildpackage_options=(-us -uc) + +run mkdir -p /build +run cd /build +find . -not -path ./ccache -a -not -path "./ccache/*" -delete +if which ccache > /dev/null 2>&1; then + export CCACHE_COMPILERCHECK=content + export CCACHE_COMPRESS=1 + export CCACHE_COMPRESSLEVEL=6 + export CCACHE_DIR="${PWD}/ccache" + export CCACHE_MAXSIZE=500M + ccache --show-stats + debuild_options+=(-eCCACHE_COMPILERCHECK) + debuild_options+=(-eCCACHE_COMPRESS) + debuild_options+=(-eCCACHE_COMPRESSLEVEL) + debuild_options+=(-eCCACHE_DIR) + debuild_options+=(-eCCACHE_MAXSIZE) + if [ -d /usr/lib/ccache ] ;then + debuild_options+=(--prepend-path=/usr/lib/ccache) + fi +fi run cp /host/tmp/${PACKAGE}-${VERSION}.tar.gz \ - build/${PACKAGE}_${VERSION}.orig.tar.gz -run cd build + ${PACKAGE}_${VERSION}.orig.tar.gz run tar xfz ${PACKAGE}_${VERSION}.orig.tar.gz case "${VERSION}" in *~dev*) @@ -73,9 +93,12 @@ fi # DEB_BUILD_OPTIONS="${DEB_BUILD_OPTIONS} noopt" export DEB_BUILD_OPTIONS if [ "${DEBUG:-no}" = "yes" ]; then - run debuild -us -uc + run debuild "${debuild_options[@]}" "${dpkg_buildpackage_options[@]}" else - run debuild -us -uc > /dev/null + run debuild "${debuild_options[@]}" "${dpkg_buildpackage_options[@]}" > /dev/null +fi +if which ccache > /dev/null 2>&1; then + ccache --show-stats fi run cd - diff --git a/dev/tasks/linux-packages/github.linux.amd64.yml b/dev/tasks/linux-packages/github.linux.amd64.yml index 8e0c5018cb6..1335a979f47 100644 --- a/dev/tasks/linux-packages/github.linux.amd64.yml +++ b/dev/tasks/linux-packages/github.linux.amd64.yml @@ -40,6 +40,12 @@ jobs: - name: Free Up Disk Space shell: bash run: arrow/ci/scripts/util_cleanup.sh + - name: Cache ccache + uses: actions/cache@v2 + with: + path: arrow/dev/tasks/linux-packages/apache-arrow/{{ task_namespace }}/build/{{ target }}/ccache + key: linux-{{ task_namespace }}-ccache-{{ target }}-{{ "${{ hashFiles('arrow/cpp/**') }}" }} + restore-keys: linux-{{ task_namespace }}-ccache-{{ target }}- - name: Build run: | set -e diff --git a/dev/tasks/linux-packages/package-task.rb b/dev/tasks/linux-packages/package-task.rb index 0cd98f397ca..ecb9cea646e 100644 --- a/dev/tasks/linux-packages/package-task.rb +++ b/dev/tasks/linux-packages/package-task.rb @@ -356,6 +356,7 @@ def define_apt_task end namespace :build do + desc "Open console" task :console => build_dependencies do apt_build(console: true) if enable_apt? end @@ -489,6 +490,7 @@ def define_yum_task end namespace :build do + desc "Open console" task :console => build_dependencies do yum_build(console: true) if enable_yum? end diff --git a/dev/tasks/linux-packages/yum/build.sh b/dev/tasks/linux-packages/yum/build.sh index 88a2cf568eb..01746803adf 100755 --- a/dev/tasks/linux-packages/yum/build.sh +++ b/dev/tasks/linux-packages/yum/build.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # -*- sh-indentation: 2; sh-basic-offset: 2 -*- # # Licensed to the Apache Software Foundation (ASF) under one @@ -42,23 +42,40 @@ fi distribution_version=$(echo ${distribution_version} | sed -e 's/\..*$//g') architecture="$(arch)" +lib_directory=/usr/lib64 case "${architecture}" in i*86) architecture=i386 + lib_directory=/usr/lib ;; esac -cd +run mkdir -p /build +run cd /build +find . -not -path ./ccache -a -not -path "./ccache/*" -delete +if which ccache > /dev/null 2>&1; then + export CCACHE_COMPILERCHECK=content + export CCACHE_COMPRESS=1 + export CCACHE_COMPRESSLEVEL=6 + export CCACHE_MAXSIZE=500M + export CCACHE_DIR="${PWD}/ccache" + ccache --show-stats + if [ -d "${lib_directory}/ccache" ]; then + PATH="${lib_directory}/ccache:$PATH" + fi +fi -run mkdir -p /build/rpmbuild +run mkdir -p rpmbuild +run cd +rm -rf rpmbuild run ln -fs /build/rpmbuild ./ if [ -x /usr/bin/rpmdev-setuptree ]; then rm -rf .rpmmacros run rpmdev-setuptree else - run cat < ~/.rpmmacros + run cat < ~/.rpmmacros %_topdir ${HOME}/rpmbuild -EOM +RPMMACROS run mkdir -p rpmbuild/SOURCES run mkdir -p rpmbuild/SPECS run mkdir -p rpmbuild/BUILD @@ -130,6 +147,10 @@ else fi fi +if which ccache > /dev/null 2>&1; then + ccache --show-stats +fi + run mv rpmbuild/RPMS/*/* "${rpm_dir}/" run mv rpmbuild/SRPMS/* "${srpm_dir}/"