diff --git a/finance/ktoblzcheck/Makefile b/finance/ktoblzcheck/Makefile index 62bdedeb58c4..9cd874021447 100644 --- a/finance/ktoblzcheck/Makefile +++ b/finance/ktoblzcheck/Makefile @@ -1,47 +1,51 @@ PORTNAME= ktoblzcheck -PORTVERSION= 1.53 -PORTREVISION= 9 +PORTVERSION= 1.57 CATEGORIES= finance german MASTER_SITES= SF/${PORTNAME} \ LOCAL/jhale/${PORTNAME}:bankdata DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ ${PORTNAME}-bankdata-${BANKDATA_DATE}${EXTRACT_SUFX}:bankdata MAINTAINER= jhale@FreeBSD.org COMMENT= Check bank codes of German banks WWW= https://ktoblzcheck.sourceforge.net/ LICENSE= LGPL21+ LICENSE_FILE= ${WRKSRC}/COPYING -USES= cmake pathfix python:build +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}openpyxl>0:textproc/py-openpyxl@${PY_FLAVOR} +LIB_DEPENDS= libcurl.so:ftp/curl + +USES= cmake localbase pathfix python:build sqlite USE_LDCONFIG= yes -CMAKE_ON= INSTALL_RAW_BANKDATA_FILE -CMAKE_OFF= ENABLE_BANKDATA_DOWNLOAD +CMAKE_OFF= ENABLE_BANKDATA_DOWNLOAD \ + INSTALL_RAW_BANKDATA_FILE -PLIST_SUB= BANKDATA_DATE=${BANKDATA_DATE} PORTDOCS= README.md -BANKDATA_DATE= 20231204 +BANKDATA_DATE= 20240108 OPTIONS_DEFINE= DOCS DOXYGEN OPTIONS_SUB= yes DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen \ dot:graphics/graphviz DOXYGEN_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Doxygen TEST_TARGET= test post-patch: - @${REINPLACE_CMD} -e 's|$${CMAKE_INSTALL_DATADIR}\/man|$${CMAKE_INSTALL_MANDIR}|' ${WRKSRC}/doc/CMakeLists.txt - @(cd ${WRKSRC}/src/bankdata && ${RM} bankdata_*.txt blz_*.txt) @${CP} ${WRKDIR}/${PORTNAME}-bankdata-${BANKDATA_DATE}/blz_${BANKDATA_DATE}.txt ${WRKSRC}/src/bankdata - @${TOUCH} ${WRKSRC}/src/bankdata/bankdata_${BANKDATA_DATE}.txt + @${CP} ${WRKDIR}/${PORTNAME}-bankdata-${BANKDATA_DATE}/ch_data.txt ${WRKSRC}/src/bankdata + @${CP} ${WRKDIR}/${PORTNAME}-bankdata-${BANKDATA_DATE}/nl_data.xlsx ${WRKSRC}/src/bankdata + @${CP} ${WRKDIR}/${PORTNAME}-bankdata-${BANKDATA_DATE}/sepa_${BANKDATA_DATE}.txt ${WRKSRC}/src/bankdata/sepa + @${REINPLACE_CMD} -e 's|%%BANKDATA_DATE%%|'"$$(date -j -f "%Y%m%d" "+%d.%m.%Y" ${BANKDATA_DATE})"'|' \ + ${WRKSRC}/src/bankdata/CMakeLists.txt post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR} .include diff --git a/finance/ktoblzcheck/distinfo b/finance/ktoblzcheck/distinfo index 7d2d13ce6e51..571dbedc4375 100644 --- a/finance/ktoblzcheck/distinfo +++ b/finance/ktoblzcheck/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1703801052 -SHA256 (ktoblzcheck-1.53.tar.gz) = 18b9118556fe83240f468f770641d2578f4ff613cdcf0a209fb73079ccb70c55 -SIZE (ktoblzcheck-1.53.tar.gz) = 531459 -SHA256 (ktoblzcheck-bankdata-20231204.tar.gz) = fbb84b8bc149c9a111fb7408a8bd48f47385dca7182383e425450556ea68a547 -SIZE (ktoblzcheck-bankdata-20231204.tar.gz) = 293232 +TIMESTAMP = 1705083248 +SHA256 (ktoblzcheck-1.57.tar.gz) = 4c3b782e5d8e31e219c3e2ece0c6e84a93929ae0b2f36080d4c183a644d05672 +SIZE (ktoblzcheck-1.57.tar.gz) = 96788 +SHA256 (ktoblzcheck-bankdata-20240108.tar.gz) = ce039f989ef7ac7b12de5ea57fa58991e98cecf0ce7ba2b75d567ca5c4db43e5 +SIZE (ktoblzcheck-bankdata-20240108.tar.gz) = 534789 diff --git a/finance/ktoblzcheck/files/patch-src_bankdata_CMakeLists.txt b/finance/ktoblzcheck/files/patch-src_bankdata_CMakeLists.txt new file mode 100644 index 000000000000..ac0dfb7bc07a --- /dev/null +++ b/finance/ktoblzcheck/files/patch-src_bankdata_CMakeLists.txt @@ -0,0 +1,23 @@ +--- src/bankdata/CMakeLists.txt.orig 2024-01-05 07:31:23 UTC ++++ src/bankdata/CMakeLists.txt +@@ -23,6 +23,7 @@ file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/ch_data.cmake " + file(DOWNLOAD \"${CH_RAW_DATA_URL}\" \"${CH_RAW_DATA_PATH}\") + ") + ++if(ENABLE_BANKDATA_DOWNLOAD) + # fetch validity date from bank's website + function(extract_date ARG) + file(DOWNLOAD ${BANK_WEBSITE_URL} ${TEMP_FILE}) +@@ -57,10 +58,10 @@ add_custom_command( + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + COMMENT "Download raw bank data file to ${CH_RAW_DATA_PATH}" + ) ++endif() + + # store the validity date in VALID_DATE +-set(VALID_DATE "") +-extract_date(VALID_DATE) ++set(VALID_DATE "%%BANKDATA_DATE%%") + + if(NOT "${VALID_DATE}" STREQUAL "") + add_custom_command( diff --git a/finance/ktoblzcheck/files/patch-src_lib_methods.cc b/finance/ktoblzcheck/files/patch-src_lib_methods.cc deleted file mode 100644 index 58e7293ef25e..000000000000 --- a/finance/ktoblzcheck/files/patch-src_lib_methods.cc +++ /dev/null @@ -1,83 +0,0 @@ -Update methods 45, B1, and C2. Implement method E4. -https://sourceforge.net/p/ktoblzcheck/code/merge-requests/14/ - ---- src/lib/methods.cc.orig 2020-01-20 15:07:55 UTC -+++ src/lib/methods.cc -@@ -530,15 +530,15 @@ AccountNumberCheck::Result method_44(const int *accoun - return algo01(11, weight, false, 10, account); - } - -+// method 45 was extended for due-date 2018-06-04 - AccountNumberCheck::Result method_45(const int *account, int *weight) - { -- // some numbers do not have a checksum -- if (0 == account[0] || 1 == account[4]) { -+ // accountIDs starting with "0" or "48" do not have a check digit -+ // accountIDs that have "1" as the fifth digit do not have a check digit -+ if (0 == account[0] || 1 == account[4] || (4 == account[0] && 8 == account[1])) { - return AccountNumberCheck::OK; - } -- -- number2Array("2121212120", weight); -- return algo01(10, weight, true, 10, account); -+ return method_00(account, weight); - } - - AccountNumberCheck::Result method_46(const int *account, int *weight) -@@ -1644,13 +1644,13 @@ AccountNumberCheck::Result method_B0(const int *accoun - // Checked with Bundesbank-Testnumbers - AccountNumberCheck::Result method_B1(const int *account, int *weight) - { -- number2Array("1371371370", weight); -- if (AccountNumberCheck::OK == algo01(10, weight, false, 10, account)) { -- return AccountNumberCheck::OK; // variant 1 (method "05") -+ if (AccountNumberCheck::OK == method_05(account, weight)) { -+ return AccountNumberCheck::OK; // variant 1 - } -- number2Array("1731731730", weight); -- return algo01(10, weight, false, 10, account); -- // variant 2 (method "01") -+ if (AccountNumberCheck::OK == method_01(account, weight)) { -+ return AccountNumberCheck::OK; // variant 2 -+ } -+ return method_00(account, weight); //variant 3, extended for due-date 2017-06-05 - } - - // Added by Jens Gecius (new Method as of September 6th, 2004) -@@ -1824,7 +1824,10 @@ AccountNumberCheck::Result method_C2(const int *accoun - if (AccountNumberCheck::OK == method_22(account, weight)) { // variant 1 - return AccountNumberCheck::OK; - } -- return method_00(account, weight); // variant 2 -+ if (AccountNumberCheck::OK == method_00(account, weight)) { // variant 2 -+ return AccountNumberCheck::OK; -+ } -+ return method_04(account, weight); // variant 3, extended for due-date 2017-09-04 - } - - // new method C3 and C4 valid from March 5th, 2007, checked with Bundesbank-Testnumbers -@@ -2190,6 +2193,16 @@ AccountNumberCheck::Result method_E3(const int *accoun - return method_21(account, weight); // variant 2 - } - -+// new method E4 valid from 2017-06-05 -+// checked with Bundesbank-Testnumbers -+AccountNumberCheck::Result method_E4(const int *account, int *weight) -+{ -+ if (AccountNumberCheck::OK == method_02(account, weight)) { // variant 1 -+ return AccountNumberCheck::OK; -+ } -+ return method_00(account, weight); // variant 2 -+} -+ - struct method_func_s { - const char *str; - AccountNumberCheck::MethodFunc func; -@@ -2337,6 +2350,7 @@ const struct method_func_s cb_funcs[] = { - { "E1", method_E1}, - { "E2", method_E2}, - { "E3", method_E3}, -+ { "E4", method_E4}, - { 0, 0} // Important: The array has to end with the {0,0} entry, - // otherwise initMethodMap() will runaway and crash! - }; diff --git a/finance/ktoblzcheck/pkg-plist b/finance/ktoblzcheck/pkg-plist index f8648fff30f8..d7ba80871f02 100644 --- a/finance/ktoblzcheck/pkg-plist +++ b/finance/ktoblzcheck/pkg-plist @@ -1,74 +1,92 @@ bin/ibanchk bin/ktoblzcheck +bin/ktoblzupdate include/iban.h include/ktoblzcheck.h +include/ktoblzcheck_export.h lib/cmake/KtoBlzCheck/KtoBlzCheckConfig.cmake lib/cmake/KtoBlzCheck/KtoBlzCheckConfigVersion.cmake lib/cmake/KtoBlzCheck/KtoBlzCheckTargets-%%CMAKE_BUILD_TYPE%%.cmake lib/cmake/KtoBlzCheck/KtoBlzCheckTargets.cmake lib/libktoblzcheck.so lib/libktoblzcheck.so.1 lib/libktoblzcheck.so.1.5.26 libdata/pkgconfig/ktoblzcheck.pc -share/man/man1/ibanchk.1.gz -share/man/man1/ktoblzcheck.1.gz %%DOXYGEN%%%%DOCSDIR%%/api/README_8md.html +%%DOXYGEN%%%%DOCSDIR%%/api/_8build_2src_2include_2ktoblzcheck__export_8h.html +%%DOXYGEN%%%%DOCSDIR%%/api/_8build_2src_2include_2ktoblzcheck__export_8h_source.html %%DOXYGEN%%%%DOCSDIR%%/api/annotated.html %%DOXYGEN%%%%DOCSDIR%%/api/bc_s.png +%%DOXYGEN%%%%DOCSDIR%%/api/bc_sd.png %%DOXYGEN%%%%DOCSDIR%%/api/bdwn.png %%DOXYGEN%%%%DOCSDIR%%/api/classAccountNumberCheck-members.html %%DOXYGEN%%%%DOCSDIR%%/api/classAccountNumberCheck.html %%DOXYGEN%%%%DOCSDIR%%/api/classAccountNumberCheck_1_1Record-members.html %%DOXYGEN%%%%DOCSDIR%%/api/classAccountNumberCheck_1_1Record.html +%%DOXYGEN%%%%DOCSDIR%%/api/classDataUpdater-members.html +%%DOXYGEN%%%%DOCSDIR%%/api/classDataUpdater.html %%DOXYGEN%%%%DOCSDIR%%/api/classIban-members.html %%DOXYGEN%%%%DOCSDIR%%/api/classIban.html %%DOXYGEN%%%%DOCSDIR%%/api/classIbanCheck-members.html %%DOXYGEN%%%%DOCSDIR%%/api/classIbanCheck.html %%DOXYGEN%%%%DOCSDIR%%/api/classes.html %%DOXYGEN%%%%DOCSDIR%%/api/closed.png -%%DOXYGEN%%%%DOCSDIR%%/api/dir_2d731f5ea854aa8d4182cb287b4b4714.html -%%DOXYGEN%%%%DOCSDIR%%/api/dir_5652562e240707faebb7b26ba93ec871.html +%%DOXYGEN%%%%DOCSDIR%%/api/dir_027acad13201f25411f30b3a77f2b006.html %%DOXYGEN%%%%DOCSDIR%%/api/dir_5a44bfe66872ebd87256b63344bc501a.html -%%DOXYGEN%%%%DOCSDIR%%/api/dir_6b601777cc03b1c222ba0713691323f0.html +%%DOXYGEN%%%%DOCSDIR%%/api/dir_63c478c42e36c4f05959c97623df5ccd.html %%DOXYGEN%%%%DOCSDIR%%/api/dir_8f1ddfcaba34d370f217a025e0bf2872.html +%%DOXYGEN%%%%DOCSDIR%%/api/dir_b6310677cdb1a308af776abddf4b17ae.html %%DOXYGEN%%%%DOCSDIR%%/api/doc.png +%%DOXYGEN%%%%DOCSDIR%%/api/docd.png %%DOXYGEN%%%%DOCSDIR%%/api/doxygen.css %%DOXYGEN%%%%DOCSDIR%%/api/doxygen.svg %%DOXYGEN%%%%DOCSDIR%%/api/dynsections.js %%DOXYGEN%%%%DOCSDIR%%/api/files.html %%DOXYGEN%%%%DOCSDIR%%/api/folderclosed.png %%DOXYGEN%%%%DOCSDIR%%/api/folderopen.png %%DOXYGEN%%%%DOCSDIR%%/api/functions.html %%DOXYGEN%%%%DOCSDIR%%/api/functions_enum.html %%DOXYGEN%%%%DOCSDIR%%/api/functions_eval.html %%DOXYGEN%%%%DOCSDIR%%/api/functions_func.html %%DOXYGEN%%%%DOCSDIR%%/api/functions_rela.html %%DOXYGEN%%%%DOCSDIR%%/api/functions_type.html %%DOXYGEN%%%%DOCSDIR%%/api/functions_vars.html %%DOXYGEN%%%%DOCSDIR%%/api/globals.html %%DOXYGEN%%%%DOCSDIR%%/api/globals_defs.html %%DOXYGEN%%%%DOCSDIR%%/api/globals_func.html %%DOXYGEN%%%%DOCSDIR%%/api/globals_type.html %%DOXYGEN%%%%DOCSDIR%%/api/iban_8h.html %%DOXYGEN%%%%DOCSDIR%%/api/iban_8h_source.html %%DOXYGEN%%%%DOCSDIR%%/api/index.html %%DOXYGEN%%%%DOCSDIR%%/api/jquery.js +%%DOXYGEN%%%%DOCSDIR%%/api/ktoblzcheck-1_857_2src_2include_2ktoblzcheck__export_8h.html +%%DOXYGEN%%%%DOCSDIR%%/api/ktoblzcheck-1_857_2src_2include_2ktoblzcheck__export_8h_source.html %%DOXYGEN%%%%DOCSDIR%%/api/ktoblzcheck_8h.html %%DOXYGEN%%%%DOCSDIR%%/api/ktoblzcheck_8h_source.html %%DOXYGEN%%%%DOCSDIR%%/api/menu.js %%DOXYGEN%%%%DOCSDIR%%/api/menudata.js %%DOXYGEN%%%%DOCSDIR%%/api/nav_f.png +%%DOXYGEN%%%%DOCSDIR%%/api/nav_fd.png %%DOXYGEN%%%%DOCSDIR%%/api/nav_g.png %%DOXYGEN%%%%DOCSDIR%%/api/nav_h.png +%%DOXYGEN%%%%DOCSDIR%%/api/nav_hd.png %%DOXYGEN%%%%DOCSDIR%%/api/open.png %%DOXYGEN%%%%DOCSDIR%%/api/splitbar.png +%%DOXYGEN%%%%DOCSDIR%%/api/splitbard.png %%DOXYGEN%%%%DOCSDIR%%/api/sync_off.png %%DOXYGEN%%%%DOCSDIR%%/api/sync_on.png %%DOXYGEN%%%%DOCSDIR%%/api/tab_a.png +%%DOXYGEN%%%%DOCSDIR%%/api/tab_ad.png %%DOXYGEN%%%%DOCSDIR%%/api/tab_b.png +%%DOXYGEN%%%%DOCSDIR%%/api/tab_bd.png %%DOXYGEN%%%%DOCSDIR%%/api/tab_h.png +%%DOXYGEN%%%%DOCSDIR%%/api/tab_hd.png %%DOXYGEN%%%%DOCSDIR%%/api/tab_s.png +%%DOXYGEN%%%%DOCSDIR%%/api/tab_sd.png %%DOXYGEN%%%%DOCSDIR%%/api/tabs.css -%%DATADIR%%/bankdata_%%BANKDATA_DATE%%.txt -%%DATADIR%%/blz_%%BANKDATA_DATE%%.txt +%%DATADIR%%/bankdata.ch.db +%%DATADIR%%/bankdata.de.db +%%DATADIR%%/bankdata.nl.db %%DATADIR%%/ibandata.txt +share/man/man1/ibanchk.1.gz +share/man/man1/ktoblzcheck.1.gz