Date: Fri, 20 Dec 2019 22:56:37 +0000 (UTC) From: Yuri Victorovich <yuri@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r520530 - in head/security: . palisade palisade/files Message-ID: <201912202256.xBKMub45052327@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: yuri Date: Fri Dec 20 22:56:37 2019 New Revision: 520530 URL: https://svnweb.freebsd.org/changeset/ports/520530 Log: New port: security/palisade: PALISADE lattice cryptography library Added: head/security/palisade/ head/security/palisade/Makefile (contents, props changed) head/security/palisade/distinfo (contents, props changed) head/security/palisade/files/ head/security/palisade/files/patch-CMakeLists.txt (contents, props changed) head/security/palisade/files/patch-third-party_google-benchmark_CMakeLists.txt (contents, props changed) head/security/palisade/files/patch-third-party_google-benchmark_test_CMakeLists.txt (contents, props changed) head/security/palisade/pkg-descr (contents, props changed) head/security/palisade/pkg-plist (contents, props changed) Modified: head/security/Makefile Modified: head/security/Makefile ============================================================================== --- head/security/Makefile Fri Dec 20 22:02:20 2019 (r520529) +++ head/security/Makefile Fri Dec 20 22:56:37 2019 (r520530) @@ -713,6 +713,7 @@ SUBDIR += p5-openxpki-i18n SUBDIR += p5-plog SUBDIR += pad + SUBDIR += palisade SUBDIR += pam-modules SUBDIR += pam-mysql SUBDIR += pam-pgsql Added: head/security/palisade/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/palisade/Makefile Fri Dec 20 22:56:37 2019 (r520530) @@ -0,0 +1,38 @@ +# $FreeBSD$ + +PORTNAME= palisade +DISTVERSIONPREFIX= v +DISTVERSION= 1.7.0.b.20191219 +CATEGORIES= security math + +MAINTAINER= yuri@FreeBSD.org +COMMENT= PALISADE lattice cryptography library + +LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/License.md + +BUILD_DEPENDS= autoconf:devel/autoconf # possibly a mistake in the project + +USES= cmake:noninja localbase +USE_GITLAB= yes +USE_GITHUB= nodefault +GL_PROJECT= palisade-development +GL_COMMIT= db57986b98596b176ca4d1f8426fb4d9af35515c +GH_TUPLE= \ + JerryRyan:cereal:181fbcd3:cereal/third-party/cereal \ + google:benchmark:c50ac68c:benchmark/third-party/google-benchmark \ + google:googletest:78fdd6c0:google_test/third-party/google-test \ + gperftools:gperftools:c1d546d7:gperftools/third-party/gperftools +USE_GCC= any # clang fails: fatal error: 'quadmath.h' file not found +USE_LDCONFIG= yes + +TEST_TARGET= testall + +CMAKE_ON= BUILD_TESTING + +CXXFLAGS+= -I${WRKSRC}/third-party/google-test/googletest + +post-extract: # post-extract to not interfere with patches in files/, see https://gitlab.com/palisade/palisade-release/issues/4 + @${FIND} ${WRKSRC} -name CMakeLists.txt | ${XARGS} ${REINPLACE_CMD} -e 's|DESTINATION palisade/|DESTINATION |' + +.include <bsd.port.mk> Added: head/security/palisade/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/palisade/distinfo Fri Dec 20 22:56:37 2019 (r520530) @@ -0,0 +1,11 @@ +TIMESTAMP = 1576786538 +SHA256 (JerryRyan-cereal-181fbcd3_GH0.tar.gz) = 1a8a1dc36eb4a409c301885b74017b4074e1e338c629f1761db8198680a83675 +SIZE (JerryRyan-cereal-181fbcd3_GH0.tar.gz) = 345404 +SHA256 (google-benchmark-c50ac68c_GH0.tar.gz) = 82d15f9bd07df524c455aeecc8b496045230c326989acc22a9a1d5ef231dc210 +SIZE (google-benchmark-c50ac68c_GH0.tar.gz) = 152333 +SHA256 (google-googletest-78fdd6c0_GH0.tar.gz) = 11aaf9577e1623d7857b46b5230924d848e96310e2847a8d80f47252d27c95b1 +SIZE (google-googletest-78fdd6c0_GH0.tar.gz) = 874422 +SHA256 (gperftools-gperftools-c1d546d7_GH0.tar.gz) = cc00b738497234a131749dd96a11d47f90df29b6bec426005164597c2ff4e4c5 +SIZE (gperftools-gperftools-c1d546d7_GH0.tar.gz) = 925949 +SHA256 (palisade-palisade-development-db57986b98596b176ca4d1f8426fb4d9af35515c_GL0.tar.gz) = 8ceecd36bf18f9d57c95a632a2af27e5d7308b309bde02d10e3441bf0c7aa60c +SIZE (palisade-palisade-development-db57986b98596b176ca4d1f8426fb4d9af35515c_GL0.tar.gz) = 4437903 Added: head/security/palisade/files/patch-CMakeLists.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/palisade/files/patch-CMakeLists.txt Fri Dec 20 22:56:37 2019 (r520530) @@ -0,0 +1,59 @@ +--- CMakeLists.txt.orig 2019-12-20 22:38:49 UTC ++++ CMakeLists.txt +@@ -183,7 +183,7 @@ set(COMPILEFLAGS "-Wall -Werror -O3 -DPALISADE_VERSION + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMPILEFLAGS}") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COMPILEFLAGS}") + +-find_package (Git REQUIRED) ++find_package (Git) + + find_package (Doxygen QUIET COMPONENTS dot) + if (DOXYGEN_FOUND) +@@ -209,7 +209,9 @@ include_directories( ${THIRDPARTYDIR}/include ) + include_directories( ${THIRDPARTYDIR}/cereal/include ) + install(DIRECTORY ${THIRDPARTYDIR}/cereal/include/ DESTINATION include) + ++if (BUILD_TESTING) + include_directories( third-party/google-test/googletest third-party/google-test/googletest/include ) ++endif() + include_directories( ${CMAKE_CURRENT_BINARY_DIR}/third-party/include ) + + ## for tests +@@ -426,15 +428,21 @@ add_subdirectory(src/signature) + add_subdirectory(src/binfhe) + + ### build the google test handlers ++if (BUILD_TESTING) + add_subdirectory(third-party/google-test EXCLUDE_FROM_ALL) ++endif() + + ### build the google benchmark handlers (just the parts we need) ++if (BUILD_TESTING) + set(BENCHMARK_ENABLE_TESTING OFF CACHE BOOL "Enable testing of the benchmark library." FORCE) + set(BENCHMARK_ENABLE_INSTALL OFF CACHE BOOL "Enable installation of benchmark. (Projects embedding benchmark may want to turn this OFF.)" FORCE) + set(BENCHMARK_ENABLE_GTEST_TESTS OFF CACHE BOOL "Enable building the unit tests which depend on gtest" FORCE) + add_subdirectory(third-party/google-benchmark EXCLUDE_FROM_ALL) ++endif() + ++if (BUILD_TESTING) + add_subdirectory(benchmark) ++endif() + + ## clobber cleans AND cleans the third-party stuff + add_custom_target( clobber DEPENDS gmp_clobber ntl_clobber +@@ -442,6 +450,7 @@ add_custom_target( clobber DEPENDS gmp_clobber ntl_clo + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + ) + ++if (BUILD_TESTING) + add_custom_target( testall + DEPENDS core_tests pke_tests abe_tests signature_tests binfhe_tests + COMMAND echo core: && unittest/core_tests -t +@@ -450,6 +459,7 @@ add_custom_target( testall + COMMAND echo signature: && unittest/signature_tests -t + COMMAND echo binfhe: && unittest/binfhe_tests -t + ) ++endif() + + add_custom_target( alldemos + DEPENDS allcoredemos allpkedemos allabedemos allsignaturedemos allbinfhedemos Added: head/security/palisade/files/patch-third-party_google-benchmark_CMakeLists.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/palisade/files/patch-third-party_google-benchmark_CMakeLists.txt Fri Dec 20 22:56:37 2019 (r520530) @@ -0,0 +1,11 @@ +--- third-party/google-benchmark/CMakeLists.txt.orig 2019-12-20 21:44:46 UTC ++++ third-party/google-benchmark/CMakeLists.txt +@@ -258,7 +258,7 @@ endif() + cxx_feature_check(STEADY_CLOCK) + # Ensure we have pthreads + set(THREADS_PREFER_PTHREAD_FLAG ON) +-find_package(Threads REQUIRED) ++find_package(Threads) + + # Set up directories + include_directories(${PROJECT_SOURCE_DIR}/include) Added: head/security/palisade/files/patch-third-party_google-benchmark_test_CMakeLists.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/palisade/files/patch-third-party_google-benchmark_test_CMakeLists.txt Fri Dec 20 22:56:37 2019 (r520530) @@ -0,0 +1,10 @@ +--- third-party/google-benchmark/test/CMakeLists.txt.orig 2019-12-20 21:45:20 UTC ++++ third-party/google-benchmark/test/CMakeLists.txt +@@ -1,6 +1,6 @@ + # Enable the tests + +-find_package(Threads REQUIRED) ++find_package(Threads) + include(CheckCXXCompilerFlag) + + # NOTE: Some tests use `<cassert>` to perform the test. Therefore we must Added: head/security/palisade/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/palisade/pkg-descr Fri Dec 20 22:56:37 2019 (r520530) @@ -0,0 +1,11 @@ +PALISADE is a general lattice cryptography library that currently includes +efficient implementations of the following lattice cryptography capabilities: + +* Homomorphic Encryption (HE): Brakerski/Fan-Vercauteren (3 variants), + Brakerski-Gentry-Vaikuntanathan, and Stehle-Steinfeld schemes +* Proxy Re-Encryption for all HE schemes +* Digital Signature +* Identity-Based Encryption +* Ciphertext-Policy Attribute-Based Encryption + +WWW: https://gitlab.com/palisade/palisade-release Added: head/security/palisade/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/security/palisade/pkg-plist Fri Dec 20 22:56:37 2019 (r520530) @@ -0,0 +1,220 @@ +include/abe/abecontext.h +include/abe/abecore.h +include/abe/abeparamset.h +include/abe/cpabe.h +include/abe/ibe.h +include/binfhe/binfhecontext-ser.h +include/binfhe/binfhecontext.h +include/binfhe/fhew.h +include/binfhe/lwe.h +include/binfhe/lwecore.h +include/binfhe/ringcore.h +include/cereal/access.hpp +include/cereal/archives/adapters.hpp +include/cereal/archives/binary.hpp +include/cereal/archives/json.hpp +include/cereal/archives/portable_binary.hpp +include/cereal/archives/xml.hpp +include/cereal/cereal.hpp +include/cereal/details/helpers.hpp +include/cereal/details/polymorphic_impl.hpp +include/cereal/details/polymorphic_impl_fwd.hpp +include/cereal/details/static_object.hpp +include/cereal/details/traits.hpp +include/cereal/details/util.hpp +include/cereal/external/base64.hpp +include/cereal/external/rapidjson/allocators.h +include/cereal/external/rapidjson/document.h +include/cereal/external/rapidjson/encodedstream.h +include/cereal/external/rapidjson/encodings.h +include/cereal/external/rapidjson/error/en.h +include/cereal/external/rapidjson/error/error.h +include/cereal/external/rapidjson/filereadstream.h +include/cereal/external/rapidjson/filewritestream.h +include/cereal/external/rapidjson/fwd.h +include/cereal/external/rapidjson/internal/biginteger.h +include/cereal/external/rapidjson/internal/diyfp.h +include/cereal/external/rapidjson/internal/dtoa.h +include/cereal/external/rapidjson/internal/ieee754.h +include/cereal/external/rapidjson/internal/itoa.h +include/cereal/external/rapidjson/internal/meta.h +include/cereal/external/rapidjson/internal/pow10.h +include/cereal/external/rapidjson/internal/regex.h +include/cereal/external/rapidjson/internal/stack.h +include/cereal/external/rapidjson/internal/strfunc.h +include/cereal/external/rapidjson/internal/strtod.h +include/cereal/external/rapidjson/internal/swap.h +include/cereal/external/rapidjson/istreamwrapper.h +include/cereal/external/rapidjson/memorybuffer.h +include/cereal/external/rapidjson/memorystream.h +include/cereal/external/rapidjson/msinttypes/inttypes.h +include/cereal/external/rapidjson/msinttypes/stdint.h +include/cereal/external/rapidjson/ostreamwrapper.h +include/cereal/external/rapidjson/pointer.h +include/cereal/external/rapidjson/prettywriter.h +include/cereal/external/rapidjson/rapidjson.h +include/cereal/external/rapidjson/reader.h +include/cereal/external/rapidjson/schema.h +include/cereal/external/rapidjson/stream.h +include/cereal/external/rapidjson/stringbuffer.h +include/cereal/external/rapidjson/writer.h +include/cereal/external/rapidxml/license.txt +include/cereal/external/rapidxml/manual.html +include/cereal/external/rapidxml/rapidxml.hpp +include/cereal/external/rapidxml/rapidxml_iterators.hpp +include/cereal/external/rapidxml/rapidxml_print.hpp +include/cereal/external/rapidxml/rapidxml_utils.hpp +include/cereal/macros.hpp +include/cereal/types/array.hpp +include/cereal/types/atomic.hpp +include/cereal/types/base_class.hpp +include/cereal/types/bitset.hpp +include/cereal/types/boost_variant.hpp +include/cereal/types/chrono.hpp +include/cereal/types/common.hpp +include/cereal/types/complex.hpp +include/cereal/types/concepts/pair_associative_container.hpp +include/cereal/types/deque.hpp +include/cereal/types/forward_list.hpp +include/cereal/types/functional.hpp +include/cereal/types/list.hpp +include/cereal/types/map.hpp +include/cereal/types/memory.hpp +include/cereal/types/optional.hpp +include/cereal/types/polymorphic.hpp +include/cereal/types/queue.hpp +include/cereal/types/set.hpp +include/cereal/types/stack.hpp +include/cereal/types/string.hpp +include/cereal/types/tuple.hpp +include/cereal/types/unordered_map.hpp +include/cereal/types/unordered_set.hpp +include/cereal/types/utility.hpp +include/cereal/types/valarray.hpp +include/cereal/types/variant.hpp +include/cereal/types/vector.hpp +include/cereal/version.hpp +include/core/encoding/ckkspackedencoding.h +include/core/encoding/coefpackedencoding.h +include/core/encoding/encodingparams.h +include/core/encoding/encodings.h +include/core/encoding/fractionalencoding.h +include/core/encoding/integerencoding.h +include/core/encoding/packedencoding.h +include/core/encoding/plaintext.h +include/core/encoding/plaintextfactory.h +include/core/encoding/scalarencoding.h +include/core/encoding/stringencoding.h +include/core/lattice/backend.h +include/core/lattice/dcrtpoly.h +include/core/lattice/dgsampling.h +include/core/lattice/elemparamfactory.h +include/core/lattice/elemparams.h +include/core/lattice/field2n.h +include/core/lattice/ildcrtparams.h +include/core/lattice/ilelement.h +include/core/lattice/ilparams.h +include/core/lattice/poly.h +include/core/lattice/stdlatticeparms.h +include/core/lattice/trapdoor.h +include/core/lattice/trapdoorparameters.h +include/core/math/armquadmath.h +include/core/math/backend.h +include/core/math/binaryuniformgenerator.h +include/core/math/cpu_int/binint.h +include/core/math/cpu_int/binvect.h +include/core/math/cpu_int/dtstruct.h +include/core/math/dftransfrm.h +include/core/math/discretegaussiangenerator.h +include/core/math/discretegaussiangeneratorgeneric.h +include/core/math/discreteuniformgenerator.h +include/core/math/distrgen.h +include/core/math/distributiongenerator.h +include/core/math/exp_int/mubintvec.h +include/core/math/exp_int/ubint.h +include/core/math/gmp_int/gmpint.h +include/core/math/gmp_int/mgmpintvec.h +include/core/math/interface.h +include/core/math/matrix.h +include/core/math/matrixstrassen.h +include/core/math/native_int/binint.h +include/core/math/native_int/binvect.h +include/core/math/nbtheory.h +include/core/math/quadfloat.h +include/core/math/ternaryuniformgenerator.h +include/core/math/transfrm.h +include/core/palisadecore.h +include/core/utils/aesutil.h +include/core/utils/blockAllocator/blockAllocator.h +include/core/utils/blockAllocator/stl_allocator.h +include/core/utils/blockAllocator/xallocator.h +include/core/utils/blockAllocator/xlist.h +include/core/utils/blockAllocator/xmap.h +include/core/utils/blockAllocator/xqueue.h +include/core/utils/blockAllocator/xset.h +include/core/utils/blockAllocator/xsstream.h +include/core/utils/blockAllocator/xstring.h +include/core/utils/blockAllocator/xvector.h +include/core/utils/debug.h +include/core/utils/exception.h +include/core/utils/hashutil.h +include/core/utils/inttypes.h +include/core/utils/memory.h +include/core/utils/palisadebase64.h +include/core/utils/parallel.h +include/core/utils/parmfactory.h +include/core/utils/serial.h +include/core/utils/serializable.h +include/core/utils/serialize-binary.h +include/core/utils/serialize-json.h +include/core/utils/sertype.h +include/core/utils/testcasegen.h +include/core/utils/utilities.h +include/core/version.h +include/pke/ciphertext-ser.h +include/pke/ciphertext.h +include/pke/cryptocontext-ser.h +include/pke/cryptocontext.h +include/pke/cryptocontextgen.h +include/pke/cryptocontexthelper.h +include/pke/cryptocontextparametersets.h +include/pke/cryptotiming.h +include/pke/palisade.h +include/pke/pubkeylp-ser.h +include/pke/pubkeylp.h +include/pke/rationalciphertext.h +include/pke/rationalct-ser.h +include/pke/scheme/allscheme.h +include/pke/scheme/bfv/bfv-ser.h +include/pke/scheme/bfv/bfv.h +include/pke/scheme/bfvrns/bfvrns-ser.h +include/pke/scheme/bfvrns/bfvrns.h +include/pke/scheme/bfvrnsb/bfvrnsB-ser.h +include/pke/scheme/bfvrnsb/bfvrnsB.h +include/pke/scheme/bgv/bgv-ser.h +include/pke/scheme/bgv/bgv.h +include/pke/scheme/ckks/ckks-ser.h +include/pke/scheme/ckks/ckks.h +include/pke/scheme/null/nullscheme-ser.h +include/pke/scheme/null/nullscheme.h +include/pke/scheme/rlwe.h +include/pke/scheme/stst/stst-ser.h +include/pke/scheme/stst/stst.h +include/signature/gpv.h +include/signature/signaturecontext.h +include/signature/signaturecore.h +lib/libPALISADEabe.so +lib/libPALISADEabe.so.1 +lib/libPALISADEabe.so.1.7.b +lib/libPALISADEbinfhe.so +lib/libPALISADEbinfhe.so.1 +lib/libPALISADEbinfhe.so.1.7.b +lib/libPALISADEcore.so +lib/libPALISADEcore.so.1 +lib/libPALISADEcore.so.1.7.b +lib/libPALISADEpke.so +lib/libPALISADEpke.so.1 +lib/libPALISADEpke.so.1.7.b +lib/libPALISADEsignature.so +lib/libPALISADEsignature.so.1 +lib/libPALISADEsignature.so.1.7.b
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201912202256.xBKMub45052327>