Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F146653043
D13468.id36527.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
13 KB
Referenced Files
None
Subscribers
None
D13468.id36527.diff
View Options
Index: misc/Makefile
===================================================================
--- misc/Makefile
+++ misc/Makefile
@@ -250,6 +250,7 @@
SUBDIR += libisocodes
SUBDIR += libkdeedu
SUBDIR += libmetalink
+ SUBDIR += libpostal
SUBDIR += libpri
SUBDIR += libsupertone
SUBDIR += libutf
Index: misc/libpostal/Makefile
===================================================================
--- /dev/null
+++ misc/libpostal/Makefile
@@ -0,0 +1,55 @@
+# $FreeBSD$
+
+PORTNAME= libpostal
+DISTVERSIONPREFIX= v
+DISTVERSION= 1.0.0
+CATEGORIES= misc geography
+
+MAINTAINER= dg@syrec.org
+COMMENT= Library for parsing/normalizing street addresses around the world
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${LOCALBASE}/bin/curl:ftp/curl
+
+USES= autoreconf libtool localbase
+GNU_CONFIGURE= yes
+USE_LDCONFIG= yes
+CONFIGURE_ARGS= --datadir=${LIBPOSTAL_DATADIR} \
+ --disable-data-download
+USE_GITHUB= yes
+GH_ACCOUNT= openvenues
+TEST_TARGET= check
+
+LIBPOSTAL_DATADIR?= /var/db/${PORTNAME}
+
+CONFIGURE_ENV+= CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}"
+
+SUB_FILES= pkg-message
+SUB_LIST= PORTNAME=${PORTNAME} \
+ LIBPOSTAL_DATADIR=${LIBPOSTAL_DATADIR}
+
+PORTDOCS= README.md
+
+OPTIONS_DEFINE= CBLAS DOCS SSE2
+CBLAS_DESC= Build with CBLAS/OPENBLAS
+SSE2_DESC= Enable SSE2 optimization
+
+CBLAS_BUILD_DEPENDS= ${LOCALBASE}/include/cblas.h:math/cblas \
+ ${LOCALBASE}/lib/libopenblas.a:math/openblas
+CBLAS_CONFIGURE_WITH= cblas=${LOCALBASE}/lib/libopenblas.a
+
+SSE2_CONFIGURE_ENABLE= sse2
+
+pre-configure:
+ @cd ${WRKSRC} && ${SH} bootstrap.sh
+
+post-install:
+ @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libpostal.so
+ ${INSTALL_PROGRAM} ${WRKSRC}/src/address_parser ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_SCRIPT} ${WRKSRC}/src/libpostal ${STAGEDIR}${PREFIX}/bin
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_MAN} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
Index: misc/libpostal/distinfo
===================================================================
--- /dev/null
+++ misc/libpostal/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1513006366
+SHA256 (openvenues-libpostal-v1.0.0_GH0.tar.gz) = 3035af7e15b2894069753975d953fa15a86d968103913dbf8ce4b8aa26231644
+SIZE (openvenues-libpostal-v1.0.0_GH0.tar.gz) = 5537587
Index: misc/libpostal/files/patch-configure.ac
===================================================================
--- /dev/null
+++ misc/libpostal/files/patch-configure.ac
@@ -0,0 +1,11 @@
+--- configure.ac.orig 2017-04-07 21:40:27 UTC
++++ configure.ac
+@@ -19,7 +19,7 @@ AC_CONFIG_HEADERS([config.h])
+ AC_PROG_CC_C99
+ AC_PROG_INSTALL
+
+-LDFLAGS="$LDFLAGS -L/usr/local/lib"
++#LDFLAGS="$LDFLAGS -L/usr/local/lib"
+
+ # Checks for libraries.
+ AC_SEARCH_LIBS([log],
Index: misc/libpostal/files/patch-src_Makefile.am
===================================================================
--- /dev/null
+++ misc/libpostal/files/patch-src_Makefile.am
@@ -0,0 +1,74 @@
+--- src/Makefile.am.orig 2017-04-07 21:40:27 UTC
++++ src/Makefile.am
+@@ -1,11 +1,11 @@
+ # Inherited from autoconf / user-specified
+ CFLAGS_CONF = @CFLAGS@
+-CFLAGS_BASE = -Wall -Wextra -Wno-unused-function -Wformat -Werror=format-security -Winit-self -Wno-sign-compare -DLIBPOSTAL_DATA_DIR='"$(datadir)/libpostal"' -g $(CFLAGS_CONF)
++CFLAGS_BASE = -Wall -Wextra -Wno-unused-function -Wformat -Werror=format-security -Winit-self -Wno-sign-compare -DLIBPOSTAL_DATA_DIR='"$(datadir)"' $(CFLAGS_CONF)
+ CFLAGS_O0 = $(CFLAGS_BASE) -O0
+ CFLAGS_O1 = $(CFLAGS_BASE) -O1
+ CFLAGS_O2 = $(CFLAGS_BASE) -O2
+ CFLAGS_O3 = $(CFLAGS_BASE) -O3
+-DEFAULT_INCLUDES = -I.. -I/usr/local/include
++DEFAULT_INCLUDES = -I..
+
+ # Wonky but have to be able to override the user's optimization level to compile the scanner
+ # as it takes an unreasonably long time to compile with the optimizer on.
+@@ -14,7 +14,7 @@ CFLAGS =
+ lib_LTLIBRARIES = libpostal.la
+ libpostal_la_SOURCES = libpostal.c address_dictionary.c transliterate.c tokens.c trie.c trie_search.c trie_utils.c string_utils.c file_utils.c numex.c utf8proc/utf8proc.c cmp/cmp.c normalize.c features.c unicode_scripts.c address_parser.c address_parser_io.c averaged_perceptron.c crf.c crf_context.c sparse_matrix.c averaged_perceptron_tagger.c graph.c graph_builder.c language_classifier.c language_features.c logistic_regression.c logistic.c minibatch.c float_utils.c ngrams.c
+ libpostal_la_LIBADD = libscanner.la $(CBLAS_LIBS)
+-libpostal_la_CFLAGS = $(CFLAGS_O2)
++libpostal_la_CFLAGS = $(CFLAGS_BASE)
+ libpostal_la_LDFLAGS = -version-info @LIBPOSTAL_SO_VERSION@
+
+ dist_bin_SCRIPTS = libpostal_data
+@@ -30,37 +30,37 @@ noinst_PROGRAMS = libpostal bench addres
+
+ libpostal_SOURCES = main.c json_encode.c
+ libpostal_LDADD = libpostal.la
+-libpostal_CFLAGS = $(CFLAGS_O3)
++libpostal_CFLAGS = $(CFLAGS_BASE)
+ bench_SOURCES = bench.c
+ bench_LDADD = libpostal.la libscanner.la $(CBLAS_LIBS)
+-bench_CFLAGS = $(CFLAGS_O3)
++bench_CFLAGS = $(CFLAGS_BASE)
+ address_parser_SOURCES = address_parser_cli.c json_encode.c linenoise/linenoise.c libpostal.c address_parser.c address_parser_io.c averaged_perceptron.c crf.c crf_context.c sparse_matrix.c graph.c graph_builder.c float_utils.c averaged_perceptron_tagger.c address_dictionary.c normalize.c features.c unicode_scripts.c transliterate.c trie.c trie_search.c trie_utils.c string_utils.c tokens.c file_utils.c utf8proc/utf8proc.c ngrams.c numex.c language_classifier.c language_features.c logistic_regression.c logistic.c minibatch.c
+ address_parser_LDADD = libscanner.la $(CBLAS_LIBS)
+-address_parser_CFLAGS = $(CFLAGS_O3)
++address_parser_CFLAGS = $(CFLAGS_BASE)
+
+ build_address_dictionary_SOURCES = address_dictionary_builder.c address_dictionary.c file_utils.c string_utils.c trie.c trie_search.c utf8proc/utf8proc.c
+-build_address_dictionary_CFLAGS = $(CFLAGS_O3)
++build_address_dictionary_CFLAGS = $(CFLAGS_BASE)
+ build_numex_table_SOURCES = numex_table_builder.c numex.c file_utils.c string_utils.c tokens.c trie.c trie_search.c utf8proc/utf8proc.c
+-build_numex_table_CFLAGS = $(CFLAGS_O3)
++build_numex_table_CFLAGS = $(CFLAGS_BASE)
+ build_trans_table_SOURCES = transliteration_table_builder.c transliterate.c trie.c trie_search.c file_utils.c string_utils.c utf8proc/utf8proc.c
+-build_trans_table_CFLAGS = $(CFLAGS_O3)
++build_trans_table_CFLAGS = $(CFLAGS_BASE)
+ address_parser_train_SOURCES = address_parser_train.c address_parser.c address_parser_io.c averaged_perceptron.c crf.c crf_context.c sparse_matrix.c graph.c graph_builder.c float_utils.c averaged_perceptron_trainer.c crf_trainer.c crf_trainer_averaged_perceptron.c averaged_perceptron_tagger.c address_dictionary.c normalize.c features.c unicode_scripts.c transliterate.c trie.c trie_search.c trie_utils.c string_utils.c tokens.c file_utils.c shuffle.c utf8proc/utf8proc.c ngrams.c
+ address_parser_train_LDADD = libscanner.la $(CBLAS_LIBS)
+-address_parser_train_CFLAGS = $(CFLAGS_O3)
++address_parser_train_CFLAGS = $(CFLAGS_BASE)
+
+ address_parser_test_SOURCES = address_parser_test.c address_parser.c address_parser_io.c averaged_perceptron.c crf.c crf_context.c sparse_matrix.c graph.c graph_builder.c float_utils.c averaged_perceptron_tagger.c address_dictionary.c normalize.c features.c unicode_scripts.c transliterate.c trie.c trie_search.c trie_utils.c string_utils.c tokens.c file_utils.c utf8proc/utf8proc.c ngrams.c
+ address_parser_test_LDADD = libscanner.la $(CBLAS_LIBS)
+-address_parser_test_CFLAGS = $(CFLAGS_O3)
++address_parser_test_CFLAGS = $(CFLAGS_BASE)
+
+ language_classifier_train_SOURCES = language_classifier_train.c language_classifier.c language_features.c language_classifier_io.c logistic_regression_trainer.c logistic_regression.c logistic.c sparse_matrix.c sparse_matrix_utils.c features.c minibatch.c float_utils.c stochastic_gradient_descent.c ftrl.c regularization.c cartesian_product.c normalize.c transliterate.c trie.c trie_search.c trie_utils.c address_dictionary.c string_utils.c file_utils.c utf8proc/utf8proc.c unicode_scripts.c shuffle.c
+ language_classifier_train_LDADD = libscanner.la $(CBLAS_LIBS)
+-language_classifier_train_CFLAGS = $(CFLAGS_O3)
++language_classifier_train_CFLAGS = $(CFLAGS_BASE)
+ language_classifier_SOURCES = language_classifier_cli.c language_classifier.c language_features.c logistic_regression.c logistic.c sparse_matrix.c features.c minibatch.c float_utils.c normalize.c transliterate.c trie.c trie_search.c trie_utils.c address_dictionary.c string_utils.c file_utils.c utf8proc/utf8proc.c unicode_scripts.c
+ language_classifier_LDADD = libscanner.la $(CBLAS_LIBS)
+-language_classifier_CFLAGS = $(CFLAGS_O3)
++language_classifier_CFLAGS = $(CFLAGS_BASE)
+ language_classifier_test_SOURCES = language_classifier_test.c language_classifier.c language_classifier_io.c language_features.c logistic_regression.c logistic.c sparse_matrix.c features.c minibatch.c float_utils.c normalize.c transliterate.c trie.c trie_search.c trie_utils.c address_dictionary.c string_utils.c file_utils.c utf8proc/utf8proc.c unicode_scripts.c
+ language_classifier_test_LDADD = libscanner.la $(CBLAS_LIBS)
+-language_classifier_test_CFLAGS = $(CFLAGS_O3)
++language_classifier_test_CFLAGS = $(CFLAGS_BASE)
+
+
+ pkginclude_HEADERS = libpostal.h
Index: misc/libpostal/files/patch-src_libpostal__data
===================================================================
--- /dev/null
+++ misc/libpostal/files/patch-src_libpostal__data
@@ -0,0 +1,23 @@
+--- src/libpostal_data.orig 2017-04-07 21:40:27 UTC
++++ src/libpostal_data
+@@ -78,9 +78,9 @@ download_multipart() {
+ else
+ max=$size;
+ fi;
+- printf "%s\0%s\0%s\0%s\0%s\0" "$i" "$offset" "$max" "$url" "$part_filename"
++ printf "%s\0%s\0%s\0%s\0%s\0%s\0%s\0" "x" "$i" "$offset" "$max" "$url" "$part_filename"
+ offset=$((offset+CHUNK_SIZE))
+- done | xargs -0 -n 5 -P $NUM_WORKERS sh -c "$DOWNLOAD_PART" --
++ done | xargs -0 -n 6 -P $NUM_WORKERS sh -c "$DOWNLOAD_PART" --
+
+ > $local_path
+
+@@ -176,6 +176,8 @@ if [ $COMMAND = "download" ]; then
+ download_file $LIBPOSTAL_LANG_CLASS_UPDATED_PATH $LIBPOSTAL_DATA_DIR $lang_class_s3_prefix $LIBPOSTAL_LANG_CLASS_FILE "language classifier data file" $LANGUAGE_CLASSIFIER_MODULE_DIR
+ fi
+
++ chown -R root:wheel $LIBPOSTAL_DATA_DIR
++
+ if [ "$LIBPOSTAL_DATA_DIR_VERSION" != "$LIBPOSTAL_VERSION_STRING" ]; then
+ echo $LIBPOSTAL_VERSION_STRING > $LIBPOSTAL_DATA_VERSION_FILE;
+ fi
Index: misc/libpostal/files/patch-src_sparkey_Makefile.am
===================================================================
--- /dev/null
+++ misc/libpostal/files/patch-src_sparkey_Makefile.am
@@ -0,0 +1,15 @@
+--- src/sparkey/Makefile.am.orig 2017-04-07 21:40:27 UTC
++++ src/sparkey/Makefile.am
+@@ -1,5 +1,5 @@
+ CFLAGS_CONF = @CFLAGS@
+-CFLAGS = -I/usr/local/include -O2 -Wall -Wextra -Wfloat-equal -Wshadow -Wpointer-arith -Werror -pedantic $(CFLAGS_CONF)
++CFLAGS = -Wall -Wextra -Wfloat-equal -Wshadow -Wpointer-arith -Werror -pedantic $(CFLAGS_CONF)
+
+ noinst_LTLIBRARIES = libsparkey.la
+ libsparkey_la_SOURCES = endiantools.h hashheader.h logheader.h \
+@@ -8,4 +8,4 @@ logreader.c returncodes.c util.c buf.h h
+ sparkey.h util.h endiantools.c \
+ hashheader.c hashreader.c logheader.c logwriter.c MurmurHash3.c \
+ sparkey-internal.h
+-libsparkey_la_LDFLAGS = -L/usr/local/lib
++#libsparkey_la_LDFLAGS = -L/usr/local/lib
Index: misc/libpostal/files/patch-test_Makefile.am
===================================================================
--- /dev/null
+++ misc/libpostal/files/patch-test_Makefile.am
@@ -0,0 +1,20 @@
+--- test/Makefile.am.orig 2017-04-07 21:40:27 UTC
++++ test/Makefile.am
+@@ -1,9 +1,9 @@
+-CFLAGS_BASE = -Wfloat-equal -Wpointer-arith -std=gnu99 -DLIBPOSTAL_DATA_DIR='"$(datadir)/libpostal"' -g
++CFLAGS_BASE = -Wfloat-equal -Wpointer-arith -std=gnu99 -DLIBPOSTAL_DATA_DIR='"$(datadir)"'
+ CFLAGS_O0 = $(CFLAGS_BASE) -O0
+ CFLAGS_O1 = $(CFLAGS_BASE) -O1
+ CFLAGS_O2 = $(CFLAGS_BASE) -O2
+ CFLAGS_O3 = $(CFLAGS_BASE) -O3
+-DEFAULT_INCLUDES = -I.. -I/usr/local/include
++DEFAULT_INCLUDES = -I..
+
+ CFLAGS = $(CFLAGS_BASE)
+
+@@ -11,4 +11,4 @@ TESTS = test_libpostal
+ noinst_PROGRAMS = test_libpostal
+ test_libpostal_SOURCES = test.c test_expand.c test_parser.c test_transliterate.c test_numex.c test_trie.c test_string_utils.c test_crf_context.c
+ test_libpostal_LDADD = ../src/libpostal.la $(CBLAS_LIBS)
+-test_libpostal_CFLAGS = $(CFLAGS_O3)
++test_libpostal_CFLAGS = $(CFLAGS_BASE)
Index: misc/libpostal/files/pkg-message.in
===================================================================
--- /dev/null
+++ misc/libpostal/files/pkg-message.in
@@ -0,0 +1,4 @@
+%%PORTNAME%% requires model data (about 1.5GB) which can be downloaded using
+the following command:
+
+# %%PREFIX%%/bin/libpostal_data download all %%LIBPOSTAL_DATADIR%%
Index: misc/libpostal/pkg-descr
===================================================================
--- /dev/null
+++ misc/libpostal/pkg-descr
@@ -0,0 +1,6 @@
+C library for parsing/normalizing street addresses around the world, powered
+by statistical NLP and open geo data. This library helps convert the
+free-form addresses that humans use into clean normalized forms suitable for
+machine comparison and full-text indexing.
+
+WWW: https://github.com/openvenues/libpostal
Index: misc/libpostal/pkg-plist
===================================================================
--- /dev/null
+++ misc/libpostal/pkg-plist
@@ -0,0 +1,9 @@
+bin/address_parser
+bin/libpostal
+bin/libpostal_data
+include/libpostal/libpostal.h
+lib/libpostal.a
+lib/libpostal.so
+lib/libpostal.so.1
+lib/libpostal.so.1.0.0
+libdata/pkgconfig/libpostal.pc
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Mar 5, 10:52 AM (21 h, 43 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29282358
Default Alt Text
D13468.id36527.diff (13 KB)
Attached To
Mode
D13468: New port: misc/libpostal: Library for parsing/normalizing street addresses around the world
Attached
Detach File
Event Timeline
Log In to Comment