[arch-commits] Commit in opencc/trunk (PKGBUILD fix-system-pybind11.patch)

Felix Yan felixonmars at archlinux.org
Sat Mar 13 10:37:19 UTC 2021


    Date: Saturday, March 13, 2021 @ 10:37:18
  Author: felixonmars
Revision: 890179

upgpkg: opencc 1.1.2-1

Added:
  opencc/trunk/fix-system-pybind11.patch
Modified:
  opencc/trunk/PKGBUILD

---------------------------+
 PKGBUILD                  |   49 +++++++++++++++++++++++++-------------------
 fix-system-pybind11.patch |   15 +++++++++++++
 2 files changed, 43 insertions(+), 21 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2021-03-13 10:24:35 UTC (rev 890178)
+++ PKGBUILD	2021-03-13 10:37:18 UTC (rev 890179)
@@ -2,47 +2,54 @@
 
 pkgbase=opencc
 pkgname=(opencc opencc-doc)
-pkgver=1.1.1
-pkgrel=5
+pkgver=1.1.2
+pkgrel=1
+pkgdesc="Library for Open Chinese Convert"
 url="https://github.com/BYVoid/OpenCC"
 arch=('x86_64')
 license=('Apache')
-makedepends=('cmake' 'doxygen' 'python-setuptools' 'python-wheel')
+makedepends=('chrpath' 'cmake' 'darts' 'doxygen' 'marisa' 'pybind11' 'python-setuptools'
+             'python-wheel' 'rapidjson' 'tclap')
 source=("https://github.com/BYVoid/OpenCC/archive/ver.$pkgver/$pkgbase-$pkgver.tar.gz"
-        opencc-fix-missing-include.patch::https://github.com/BYVoid/OpenCC/pull/417.patch)
-sha512sums=('48ccf61f63cf0a1c0fc484a52ae1d406a28949a52be7d7d1595e6aaf87f40ac47ea4697308441a9381f0cd6f404ee5a28b85a2fa2f288c4b3933be36f4a41363'
-            '1c04eee731391c523ca8950f8520bb713a7e7f1fa9fd1c38e44dc193e5f026fc3fa120120eba9ecaa6108e12d22c56f50d5e92c05ac38d5afa624fc6cc9e8c7d')
+        fix-system-pybind11.patch)
+sha512sums=('56c84bc472b39eb0b23bac6df5aada2c2ed5fd2fbe653c1ae89d392ec0b74741a15de93c748883ec3c0779396e790a1197f6e3b267b524f111459d45daeb5d4b'
+            'e54bdc865505cacc79e05265ad82e05f35b246c62c68261e68aa51a862020848d39f6d6579abf56ed26edc6a0f5f21d39217ff80690047931037c55c4a59f594')
 
 prepare() {
-  patch -d OpenCC-ver.$pkgver -p1 < opencc-fix-missing-include.patch
-  cd OpenCC-ver.$pkgver/python
-  # Use system opencc
-  sed -i '/BuildPyCommand,/d' setup.py
-  sed -e "s|os.path.join(_thisdir, 'clib', 'lib', _libopenccfilename)|os.path.join('/usr/lib', _libopenccfilename)|" \
-      -e "s|os.path.join(_thisdir, 'clib', 'share', 'opencc')|'/usr/share/opencc'|" \
-      -i opencc/__init__.py
+  cd OpenCC-ver.$pkgver
+  rm -r deps
+  patch -p1 -i ../fix-system-pybind11.patch
 }
 
 build() {
   cd OpenCC-ver.$pkgver
-  cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_DOCUMENTATION:BOOL=ON
+  cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_DOCUMENTATION:BOOL=ON -DBUILD_PYTHON:BOOL=ON \
+        -DUSE_SYSTEM_MARISA:BOOL=ON -DUSE_SYSTEM_PYBIND11:BOOL=ON -DUSE_SYSTEM_RAPIDJSON:BOOL=ON \
+        -DUSE_SYSTEM_TCLAP:BOOL=ON -DUSE_SYSTEM_DARTS:BOOL=ON
   make
 
-  cd python
+  mkdir python/opencc/clib
+  cp opencc_clib.*.so python/opencc/clib/
+  touch python/opencc/clib/__init__.py
   python setup.py build
 }
 
 package_opencc() {
   pkgdesc="Library for Open Chinese Convert"
-  depends=('gcc-libs')
+  depends=('marisa')
 
   cd OpenCC-ver.$pkgver
-  make DESTDIR="${pkgdir}" install
-
-  cd python
+  make DESTDIR="$pkgdir" install
   python setup.py install --root="$pkgdir" --optimize=1
 
-  # Remove docs - install in splitted package
+  # Hack to make opencc's python binding to use system opencc's configs
+  mkdir "$pkgdir"/usr/lib/python3.9/site-packages/opencc/clib/share
+  ln -s ../../../../../../share/opencc "$pkgdir"/usr/lib/python3.9/site-packages/opencc/clib/share/
+
+  # Remove insecure RPath
+  chrpath --delete "$pkgdir"/usr/lib/python3.9/site-packages/opencc/clib/*.so
+
+  # Remove docs - install in split package
   rm -r "$pkgdir/usr/share/opencc/doc"
 }
 
@@ -50,5 +57,5 @@
   pkgdesc="Documentation for Library for Open Chinese Convert"
 
   cd OpenCC-ver.$pkgver/doc
-  make DESTDIR="${pkgdir}" install
+  make DESTDIR="$pkgdir" install
 }

Added: fix-system-pybind11.patch
===================================================================
--- fix-system-pybind11.patch	                        (rev 0)
+++ fix-system-pybind11.patch	2021-03-13 10:37:18 UTC (rev 890179)
@@ -0,0 +1,15 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d4b6530..cfc02c7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -219,9 +219,7 @@ endif()
+ 
+ if (BUILD_PYTHON)
+   if(USE_SYSTEM_PYBIND11)
+-    include(pybind11Config)
+-    include(pybind11Common)
+-    include(pybind11Tools)
++    find_package(pybind11 CONFIG)
+   else()
+     add_subdirectory(deps/pybind11-2.5.0)
+   endif()



More information about the arch-commits mailing list