summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorBeini2023-06-10 16:29:29 +0300
committerBeini2023-06-10 16:31:32 +0300
commitbd2ffa2ad10efd47b8aa1bb095ca496aa6bffb88 (patch)
treef13201eb9a9a60ad7a8531e73b2f859e387eb433
parent9da018bd15c2121e15ba21f246487e8208b4c76d (diff)
downloadaur-cld2-git.tar.gz
update
-rw-r--r--.SRCINFO21
-rw-r--r--CMakeLists.txt161
-rw-r--r--PKGBUILD70
3 files changed, 218 insertions, 34 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 1de98d911946..247ec59b6e84 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,23 +1,24 @@
-# Generated by mksrcinfo v8
-# Sat Jan 7 17:17:56 UTC 2017
pkgbase = cld2-git
- pkgdesc = Compact Language Detector 2
- pkgver = 20150820
- pkgrel = 3
+ pkgdesc = Probabilistically detects over 80 languages in Unicode UTF-8 text, either plain text or HTML/XML
+ pkgver = r152.b56fa78
+ pkgrel = 1
+ epoch = 1
url = https://github.com/CLD2Owners/cld2
arch = x86_64
license = Apache
makedepends = git
+ makedepends = cmake
+ depends = glibc
+ depends = gcc-libs
provides = cld2
- provides = cld2-hg
- provides = cld2-svn
- conflicts = cld2-hg
conflicts = cld2
+ conflicts = cld2-hg
conflicts = cld2-svn
replaces = cld2-hg
replaces = cld2-svn
source = git+https://github.com/CLD2Owners/cld2.git
- md5sums = SKIP
+ source = CMakeLists.txt
+ b2sums = SKIP
+ b2sums = 1e5d8282a8a88735cb2114766efbee1747fe3817fcfae48c74366f3094c348c9850fa89bc6f94e4a009b01de8b3256a974d652694206e2e6d691dcef6334a0ee
pkgname = cld2-git
-
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 000000000000..b04a604e06ff
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,161 @@
+cmake_minimum_required(VERSION 2.8.12)
+project (cld2)
+enable_language(CXX)
+
+set (VERSION "0.0.198")
+set (common_SOURCE_FILES
+ internal/cldutil.cc
+ internal/cldutil_shared.cc
+ internal/compact_lang_det.cc
+ internal/compact_lang_det_hint_code.cc
+ internal/compact_lang_det_impl.cc
+ internal/debug.cc
+ internal/fixunicodevalue.cc
+ internal/generated_entities.cc
+ internal/generated_language.cc
+ internal/generated_ulscript.cc
+ internal/getonescriptspan.cc
+ internal/lang_script.cc
+ internal/offsetmap.cc
+ internal/scoreonescriptspan.cc
+ internal/tote.cc
+ internal/utf8statetable.cc
+ )
+
+set (cld2_SOURCE_FILES
+ internal/generated_distinct_bi_0.cc
+ internal/cld_generated_cjk_uni_prop_80.cc
+ internal/cld2_generated_cjk_compatible.cc
+ internal/cld_generated_cjk_delta_bi_4.cc
+ internal/cld2_generated_quadchrome_2.cc
+ internal/cld2_generated_deltaoctachrome.cc
+ internal/cld2_generated_distinctoctachrome.cc
+ internal/cld_generated_score_quad_octa_2.cc
+ )
+
+set (cld2_full_SOURCE_FILES
+ internal/generated_distinct_bi_0.cc
+ internal/cld_generated_cjk_uni_prop_80.cc
+ internal/cld2_generated_cjk_compatible.cc
+ internal/cld_generated_cjk_delta_bi_32.cc
+ internal/cld2_generated_quad0122.cc
+ internal/cld2_generated_deltaocta0122.cc
+ internal/cld2_generated_distinctocta0122.cc
+ internal/cld_generated_score_quad_octa_0122.cc
+ )
+
+set (cld2_dynamic_SOURCE_FILES
+ internal/cld2_dynamic_data.cc
+ internal/cld2_dynamic_data_loader.cc
+ )
+
+add_library(cld2 SHARED ${common_SOURCE_FILES} ${cld2_SOURCE_FILES})
+set_target_properties(cld2 PROPERTIES
+ ENABLE_EXPORTS On
+ OUTPUT_NAME cld2
+ VERSION ${VERSION}
+ SOVERSION 0
+ )
+#add_library(cld2_full SHARED ${cld2_full_SOURCE_FILES})
+# 2017-05-03, Wolfgang Stöggl
+# added common_SOURCE_FILES to cld2_full, otherwise shared-lib-without-dependency-information
+add_library(cld2_full SHARED ${common_SOURCE_FILES} ${cld2_full_SOURCE_FILES})
+set_target_properties(cld2_full PROPERTIES
+ ENABLE_EXPORTS On
+ OUTPUT_NAME cld2_full
+ VERSION ${VERSION}
+ SOVERSION 0
+ )
+
+add_library(cld2_dynamic SHARED ${cld2_dynamic_SOURCE_FILES})
+set_target_properties(cld2_dynamic PROPERTIES
+ ENABLE_EXPORTS On
+ OUTPUT_NAME cld2_dynamic
+ VERSION ${VERSION}
+ SOVERSION 0
+ COMPILE_FLAGS "-DCLD2_DYNAMIC_MODE"
+ )
+#install(TARGETS cld2 DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE})
+#install(TARGETS cld2_full DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE})
+#install(TARGETS cld2_dynamic DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE})
+install(TARGETS cld2 DESTINATION ${CMAKE_INSTALL_LIBDIR})
+install(TARGETS cld2_full DESTINATION ${CMAKE_INSTALL_LIBDIR})
+install(TARGETS cld2_dynamic DESTINATION ${CMAKE_INSTALL_LIBDIR})
+
+set (cld2_internal_HEADERS
+ internal/cld2_dynamic_compat.h
+ internal/cld2_dynamic_data_extractor.h
+ internal/cld2_dynamic_data.h
+ internal/cld2_dynamic_data_loader.h
+ internal/cld2tablesummary.h
+ internal/cldutil.h
+ internal/cldutil_offline.h
+ internal/cldutil_shared.h
+ internal/compact_lang_det_hint_code.h
+ internal/compact_lang_det_impl.h
+ internal/debug.h
+ internal/fixunicodevalue.h
+ internal/generated_language.h
+ internal/generated_ulscript.h
+ internal/getonescriptspan.h
+ internal/integral_types.h
+ internal/lang_script.h
+ internal/langspan.h
+ internal/offsetmap.h
+ internal/port.h
+ internal/scoreonescriptspan.h
+ internal/stringpiece.h
+ internal/tote.h
+ internal/unittest_data.h
+ internal/utf8acceptinterchange.h
+ internal/utf8prop_lettermarkscriptnum.h
+ internal/utf8repl_lettermarklower.h
+ internal/utf8scannot_lettermarkspecial.h
+ internal/utf8statetable.h
+ )
+
+install(FILES ${cld2_internal_HEADERS} DESTINATION include/cld2/internal)
+set (cld2_public_HEADERS
+ public/compact_lang_det.h
+ public/encodings.h
+ )
+install(FILES ${cld2_public_HEADERS} DESTINATION include/cld2/public)
+
+set (full_SOURCE_FILES
+ internal/cld_generated_cjk_uni_prop_80.cc
+ internal/cld2_generated_cjk_compatible.cc
+ internal/cld_generated_cjk_delta_bi_32.cc
+ internal/generated_distinct_bi_0.cc
+ internal/cld2_generated_quad0122.cc
+ internal/cld2_generated_deltaocta0122.cc
+ internal/cld2_generated_distinctocta0122.cc
+ internal/cld_generated_score_quad_octa_0122.cc
+ )
+
+add_executable(compact_lang_det_test_full ${full_SOURCE_FILES} internal/compact_lang_det_test.cc)
+add_executable(cld2_unittest_full ${full_SOURCE_FILES} internal/cld2_unittest_full.cc)
+add_executable(cld2_unittest_full_avoid ${full_SOURCE_FILES} internal/cld2_unittest_full.cc)
+set_target_properties(cld2_unittest_full_avoid PROPERTIES COMPILE_FLAGS "-Davoid_utf8_string_constants")
+
+add_executable(cld2_dynamic_data_tool internal/cld2_dynamic_data_extractor.cc internal/cld2_dynamic_data_tool.cc)
+add_executable(compact_lang_det_dynamic_test_chrome ${common_SOURCE_FILES} internal/cld2_dynamic_data_extractor.cc internal/compact_lang_det_test.cc)
+add_executable(cld2_dynamic_unittest ${common_SOURCE_FILES} internal/cld2_unittest.cc)
+set_target_properties(compact_lang_det_dynamic_test_chrome PROPERTIES COMPILE_FLAGS "-DCLD2_DYNAMIC_MODE")
+set_target_properties(cld2_dynamic_unittest PROPERTIES COMPILE_FLAGS "-DCLD2_DYNAMIC_MODE")
+
+add_executable(compact_lang_det_test_chrome_2 internal/compact_lang_det_test.cc)
+add_executable(compact_lang_det_test_chrome_16 internal/compact_lang_det_test.cc)
+add_executable(cld2_unittest_chrome_2 internal/cld2_unittest.cc)
+add_executable(cld2_unittest_avoid_chrome_2 internal/cld2_unittest.cc)
+set_target_properties(cld2_unittest_avoid_chrome_2 PROPERTIES COMPILE_FLAGS "-Davoid_utf8_string_constants")
+
+target_link_libraries(compact_lang_det_test_full cld2)
+target_link_libraries(cld2_unittest_full cld2)
+target_link_libraries(cld2_unittest_full_avoid cld2)
+target_link_libraries(cld2_dynamic_data_tool cld2 cld2_dynamic)
+target_link_libraries(compact_lang_det_dynamic_test_chrome cld2_dynamic)
+target_link_libraries(cld2_dynamic_unittest cld2_dynamic)
+target_link_libraries(compact_lang_det_test_chrome_2 cld2)
+target_link_libraries(compact_lang_det_test_chrome_16 cld2)
+target_link_libraries(cld2_unittest_chrome_2 cld2)
+target_link_libraries(cld2_unittest_avoid_chrome_2 cld2)
diff --git a/PKGBUILD b/PKGBUILD
index 8e2670ff7df5..1d397ca53913 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,42 +1,64 @@
-# Maintainer: lilydjwg <lilydjwg@gmail.com>
+# Maintainer: Beini <bane at iki dot fi>
+# Contributor: lilydjwg <lilydjwg@gmail.com>
_pkgname=cld2
pkgname=${_pkgname}-git
-pkgver=20150820
-pkgrel=3
-pkgdesc='Compact Language Detector 2'
+pkgver=r152.b56fa78
+pkgrel=1
+epoch=1
+pkgdesc='Probabilistically detects over 80 languages in Unicode UTF-8 text, either plain text or HTML/XML'
arch=('x86_64')
url='https://github.com/CLD2Owners/cld2'
license=('Apache')
-provides=('cld2' 'cld2-hg' 'cld2-svn')
+provides=('cld2')
+conflicts=('cld2' 'cld2-hg' 'cld2-svn')
replaces=('cld2-hg' 'cld2-svn')
-conflicts=('cld2-hg' 'cld2' 'cld2-svn')
-makedepends=('git')
-source=('git+https://github.com/CLD2Owners/cld2.git')
-md5sums=('SKIP')
+depends=('glibc' 'gcc-libs')
+makedepends=('git' 'cmake')
+source=('git+https://github.com/CLD2Owners/cld2.git'
+ 'CMakeLists.txt')
+b2sums=('SKIP'
+ '1e5d8282a8a88735cb2114766efbee1747fe3817fcfae48c74366f3094c348c9850fa89bc6f94e4a009b01de8b3256a974d652694206e2e6d691dcef6334a0ee')
+
+prepare() {
+ cp "$srcdir/CMakeLists.txt" "$srcdir/$_pkgname/"
+}
pkgver() {
cd "$srcdir/$_pkgname"
- git log -1 --pretty='%cd' --date=short | tr -d '-'
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
}
build() {
- cd "$srcdir/$_pkgname"
- cd internal
- # use C++98, or it won't compile; see
- # https://github.com/CLD2Owners/cld2/pull/52
- CXXFLAGS="-std=c++98 $CXXFLAGS" sh ./compile_libs.sh
+ # -std=c++98 is needed for gcc-6
+ # https://github.com/CLD2Owners/cld2/issues/47
+ CXXFLAGS="$CXXFLAGS -std=c++98 -Wl,--as-needed" cmake \
+ -B build \
+ -S "$_pkgname" \
+ -DCMAKE_BUILD_TYPE:STRING='None' \
+ -DCMAKE_INSTALL_PREFIX:PATH='/usr' \
+ -DCMAKE_INSTALL_LIBDIR:PATH='lib'
+ cmake --build build
}
-package() {
- cd "$srcdir/$_pkgname"
- install -Dm755 internal/libcld2.so "${pkgdir}/usr/lib/libcld2.so"
- install -Dm755 internal/libcld2_full.so "${pkgdir}/usr/lib/libcld2_full.so"
+check() {
+ cd build
+ # Tests from: internal/compile_and_test_all.sh
+ echo "this is some english text" | ./compact_lang_det_test_chrome_2
+ echo "this is some english text" | ./compact_lang_det_test_chrome_16
+ ./cld2_unittest_chrome_2 > /dev/null
+ ./cld2_unittest_avoid_chrome_2 > /dev/null
+ echo "this is some english text" | ./compact_lang_det_test_full
+ ./cld2_unittest_full > /dev/null
+ ./cld2_unittest_full_avoid > /dev/null
+ ./cld2_dynamic_data_tool --dump cld2_data.bin
+ ./cld2_dynamic_data_tool --verify cld2_data.bin
+ echo "this is some english text" | ./compact_lang_det_dynamic_test_chrome --data-file cld2_data.bin
+ ./cld2_dynamic_unittest --data-file cld2_data.bin > /dev/null
+}
- for header in internal/*.h public/*.h; do
- install -Dm644 "$header" "${pkgdir}/usr/include/cld2/$header"
- done
+package() {
+ DESTDIR="$pkgdir" cmake --install build
- install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ install -Dm644 "$srcdir/$_pkgname/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
-