From owner-svn-ports-all@freebsd.org Fri Jan 1 06:47:04 2021 Return-Path: Delivered-To: svn-ports-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D3EDE4C08D7; Fri, 1 Jan 2021 06:47:04 +0000 (UTC) (envelope-from yuri@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4D6bD85Z4cz4X1x; Fri, 1 Jan 2021 06:47:04 +0000 (UTC) (envelope-from yuri@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id AD9991E82A; Fri, 1 Jan 2021 06:47:04 +0000 (UTC) (envelope-from yuri@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 1016l450068077; Fri, 1 Jan 2021 06:47:04 GMT (envelope-from yuri@FreeBSD.org) Received: (from yuri@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 1016l3V1068069; Fri, 1 Jan 2021 06:47:03 GMT (envelope-from yuri@FreeBSD.org) Message-Id: <202101010647.1016l3V1068069@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: yuri set sender to yuri@FreeBSD.org using -f From: Yuri Victorovich Date: Fri, 1 Jan 2021 06:47:03 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r559809 - in head/math: . permlib permlib/files X-SVN-Group: ports-head X-SVN-Commit-Author: yuri X-SVN-Commit-Paths: in head/math: . permlib permlib/files X-SVN-Commit-Revision: 559809 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Jan 2021 06:47:04 -0000 Author: yuri Date: Fri Jan 1 06:47:02 2021 New Revision: 559809 URL: https://svnweb.freebsd.org/changeset/ports/559809 Log: New port: math/permlib: C++ header-only library for permutation computations Added: head/math/permlib/ head/math/permlib/Makefile (contents, props changed) head/math/permlib/distinfo (contents, props changed) head/math/permlib/files/ head/math/permlib/files/patch-CMakeLists.txt (contents, props changed) head/math/permlib/files/patch-boost-from-arch (contents, props changed) head/math/permlib/pkg-descr (contents, props changed) head/math/permlib/pkg-plist (contents, props changed) Modified: head/math/Makefile Modified: head/math/Makefile ============================================================================== --- head/math/Makefile Fri Jan 1 06:40:05 2021 (r559808) +++ head/math/Makefile Fri Jan 1 06:47:02 2021 (r559809) @@ -696,6 +696,7 @@ SUBDIR += pear-Math_Combinatorics SUBDIR += pecl-bitset SUBDIR += pecl-stats2 + SUBDIR += permlib SUBDIR += petiga SUBDIR += php73-bcmath SUBDIR += php73-gmp Added: head/math/permlib/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/math/permlib/Makefile Fri Jan 1 06:47:02 2021 (r559809) @@ -0,0 +1,27 @@ +# $FreeBSD$ + +PORTNAME= permlib +DISTVERSIONPREFIX= v +DISTVERSION= 0.2.9 +CATEGORIES= math + +MAINTAINER= yuri@FreeBSD.org +COMMENT= C++ header-only library for permutation computations + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= boost-libs>0:devel/boost-libs + +USE_GITHUB= yes +GH_ACCOUNT= tremlin +GH_PROJECT= PermLib + +NO_BUILD= yes +NO_ARCH= yes + +do-install: + cd ${WRKSRC} && ${COPYTREE_SHARE} include ${STAGEDIR}${PREFIX} + ${FIND} ${STAGEDIR}${PREFIX}/include -name "*.orig" -delete + +.include Added: head/math/permlib/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/math/permlib/distinfo Fri Jan 1 06:47:02 2021 (r559809) @@ -0,0 +1,3 @@ +TIMESTAMP = 1609481998 +SHA256 (tremlin-PermLib-v0.2.9_GH0.tar.gz) = 40b9c03df57d73412d75ee4098937706d95e252b4f40d091cc13633a0c56d20e +SIZE (tremlin-PermLib-v0.2.9_GH0.tar.gz) = 151895 Added: head/math/permlib/files/patch-CMakeLists.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/math/permlib/files/patch-CMakeLists.txt Fri Jan 1 06:47:02 2021 (r559809) @@ -0,0 +1,16 @@ +--- CMakeLists.txt.orig 2021-01-01 06:23:17 UTC ++++ CMakeLists.txt +@@ -27,7 +27,11 @@ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D + + enable_testing() + +-add_subdirectory(example) +-add_subdirectory(test) ++if (BUILD_EXAMPLES) ++ add_subdirectory(example) ++endif() ++if (BUILD_TESTS) ++ add_subdirectory(test) ++endif() + + exec_program( ${CMAKE_COMMAND} ARGS -E copy_directory ${PROJECT_SOURCE_DIR}/data ${PROJECT_BINARY_DIR}/data ) Added: head/math/permlib/files/patch-boost-from-arch ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/math/permlib/files/patch-boost-from-arch Fri Jan 1 06:47:02 2021 (r559809) @@ -0,0 +1,100 @@ +--- include/permlib/bsgs.h.orig 2016-07-16 17:37:15 UTC ++++ include/permlib/bsgs.h +@@ -39,6 +39,7 @@ + + #include + #include ++#include + #include + #include + #include +--- include/permlib/change/base_transpose.h.orig 2016-07-16 17:37:15 UTC ++++ include/permlib/change/base_transpose.h +@@ -38,6 +38,7 @@ + + #include + #include ++#include + + namespace permlib { + +--- include/permlib/generator/schreier_generator.h.orig 2016-07-16 17:37:15 UTC ++++ include/permlib/generator/schreier_generator.h +@@ -39,6 +39,7 @@ + #include + #include + #include ++#include + + namespace permlib { + +--- include/permlib/permutation.h.orig 2016-07-16 17:37:15 UTC ++++ include/permlib/permutation.h +@@ -48,7 +48,7 @@ + #include + #include + #include +-#include ++#include + + namespace permlib { + +@@ -343,7 +343,7 @@ inline boost::uint64_t Permutation::order() const { + std::list cycleList = this->cycles(); + boost::uint64_t ord = 1; + BOOST_FOREACH(const CyclePair& cyc, cycleList) { +- ord = boost::math::lcm(ord, static_cast(cyc.second)); ++ ord = boost::integer::lcm(ord, static_cast(cyc.second)); + } + return ord; + } +--- include/permlib/test/giant_test.h.orig 2016-07-16 17:37:15 UTC ++++ include/permlib/test/giant_test.h +@@ -40,7 +40,7 @@ + #include + + #include +-#include ++#include + #include + #include + +@@ -195,7 +195,7 @@ GiantTestBase::GiantGroupType GiantTest::determi + for (unsigned int k = 0; k < cycleLength.size(); ++k) { + if (j == k) + continue; +- if (boost::math::gcd(cycleLength[j], cycleLength[k]) != 1) { ++ if (boost::integer::gcd(cycleLength[j], cycleLength[k]) != 1) { + isCoprime = false; + break; + } +--- include/permlib/test/primitivity_sgs_test.h.orig 2016-07-16 17:37:15 UTC ++++ include/permlib/test/primitivity_sgs_test.h +@@ -39,6 +39,7 @@ + #include + #include + #include ++#include + #include + #include + +--- include/permlib/test/type_recognition.h.orig 2016-07-16 17:37:15 UTC ++++ include/permlib/test/type_recognition.h +@@ -44,7 +44,7 @@ + #include + + #include +-#include ++#include + #include + + +@@ -344,7 +344,7 @@ GroupType* TypeRecognition::largeSym + + size_t orbitGCD = orbits.front()->size(); + BOOST_FOREACH(const OrbitPtr& orbit, orbits) { +- orbitGCD = boost::math::gcd(orbitGCD, orbit->size()); ++ orbitGCD = boost::integer::gcd(orbitGCD, orbit->size()); + } + + GroupType* lastType = 0; Added: head/math/permlib/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/math/permlib/pkg-descr Fri Jan 1 06:47:02 2021 (r559809) @@ -0,0 +1,7 @@ +PermLib is a C++ library for permutation computations. Currently it supports set +stabilizer and in-orbit computations, based on bases and strong generating sets +(BSGS). Additionally, it computes automorphisms of symmetric matrices and find +the lexicographically smallest set in an orbit of sets. It also features a very +basic recognition of permutation group types. + +WWW: http://www.math.uni-rostock.de/~rehn/software/permlib.html Added: head/math/permlib/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/math/permlib/pkg-plist Fri Jan 1 06:47:02 2021 (r559809) @@ -0,0 +1,84 @@ +include/permlib/abstract_bsgs.h +include/permlib/abstract_bsgs_helpers.h +include/permlib/abstract_permutation_group.h +include/permlib/abstract_symmetric_product.h +include/permlib/bsgs.h +include/permlib/bsgs_core.h +include/permlib/change/base_change.h +include/permlib/change/base_transpose.h +include/permlib/change/conjugating_base_change.h +include/permlib/change/deterministic_base_transpose.h +include/permlib/change/new_base_change.h +include/permlib/change/random_base_transpose.h +include/permlib/change/simple_base_change.h +include/permlib/common.h +include/permlib/construct/base_construction.h +include/permlib/construct/cyclic_group_construction.h +include/permlib/construct/known_bsgs_construction.h +include/permlib/construct/random_schreier_sims_construction.h +include/permlib/construct/schreier_sims_construction.h +include/permlib/export/bsgs_schreier_export.h +include/permlib/generator/bsgs_generator.h +include/permlib/generator/bsgs_random_generator.h +include/permlib/generator/generator.h +include/permlib/generator/product_replacement_generator.h +include/permlib/generator/random_generator.h +include/permlib/generator/random_schreier_generator.h +include/permlib/generator/schreier_generator.h +include/permlib/permlib_api.h +include/permlib/permutation.h +include/permlib/permutationword.h +include/permlib/predicate/group_intersection_predicate.h +include/permlib/predicate/identity_predicate.h +include/permlib/predicate/lex_smaller_image_predicate.h +include/permlib/predicate/matrix_automorphism_predicate.h +include/permlib/predicate/pointwise_stabilizer_predicate.h +include/permlib/predicate/set_image_predicate.h +include/permlib/predicate/setwise_stabilizer_predicate.h +include/permlib/predicate/stabilizes_point_predicate.h +include/permlib/predicate/subgroup_predicate.h +include/permlib/predicate/vector_stabilizer_predicate.h +include/permlib/prime_helper.h +include/permlib/redundant_base_point_insertion_strategy.h +include/permlib/search/base_search.h +include/permlib/search/classic/backtrack_search.h +include/permlib/search/classic/intersection_search.h +include/permlib/search/classic/lex_smaller_image_search.h +include/permlib/search/classic/set_image_search.h +include/permlib/search/classic/set_stabilizer_search.h +include/permlib/search/dset.h +include/permlib/search/orbit_lex_min_search.h +include/permlib/search/partition/backtrack_refinement.h +include/permlib/search/partition/group_refinement.h +include/permlib/search/partition/intersection_search.h +include/permlib/search/partition/matrix_automorphism_search.h +include/permlib/search/partition/matrix_refinement1.h +include/permlib/search/partition/matrix_refinement2.h +include/permlib/search/partition/partition.h +include/permlib/search/partition/r_base.h +include/permlib/search/partition/refinement.h +include/permlib/search/partition/refinement_family.h +include/permlib/search/partition/set_image_refinement.h +include/permlib/search/partition/set_image_search.h +include/permlib/search/partition/set_stabilize_refinement.h +include/permlib/search/partition/set_stabilizer_search.h +include/permlib/search/partition/vector_stabilizer_search.h +include/permlib/sorter/base_sorter.h +include/permlib/sorter/group_sorter.h +include/permlib/sorter/trivial_sorter.h +include/permlib/symmetric_group.h +include/permlib/test/giant_test.h +include/permlib/test/group_type.h +include/permlib/test/primitivity_sgs_test.h +include/permlib/test/primitivity_test.h +include/permlib/test/type_recognition.h +include/permlib/test/type_recognition_heuristic.h +include/permlib/transversal/explicit_transversal.h +include/permlib/transversal/orbit.h +include/permlib/transversal/orbit_list.h +include/permlib/transversal/orbit_set.h +include/permlib/transversal/schreier_tree_transversal.h +include/permlib/transversal/shallow_schreier_tree_transversal.h +include/permlib/transversal/symmetric_group_transversal.h +include/permlib/transversal/transversal.h +include/permlib/version.h