view scripts/specfun/module.mk @ 31942:7782d1ead0a0

Replace perms.m with new perms.cc (bugs 63962 and 63965) The perms() function was previously an Octave m-file. This edit replaces it with the faster perms.cc C++ function for performance (bug 63962), using std::next_permutation from the C++ STL. Incidentally, this new function also correctly returns unique permutations for cells, thereby fixing bug 63965. * scripts/specfun/perms.m: Delete old m-file. * scripts/specfun/module.mk: Remove m-file from build system. * libinterp/corefcn/perms.cc: Add new C++ function. * libinterp/corefcn/module.mk: Add perms.cc to build system.
author Hendrik Koerner <koerhen@web.de>
date Tue, 28 Mar 2023 11:52:15 -0400
parents a7c4fb821d64
children
line wrap: on
line source

FCN_FILE_DIRS += %reldir%

%canon_reldir%_FCN_FILES = \
  %reldir%/.oct-config \
  %reldir%/beta.m \
  %reldir%/betainc.m \
  %reldir%/betaincinv.m \
  %reldir%/betaln.m \
  %reldir%/cosint.m \
  %reldir%/ellipke.m \
  %reldir%/expint.m \
  %reldir%/factor.m \
  %reldir%/factorial.m \
  %reldir%/gammainc.m \
  %reldir%/gammaincinv.m \
  %reldir%/isprime.m \
  %reldir%/lcm.m \
  %reldir%/legendre.m \
  %reldir%/nchoosek.m \
  %reldir%/nthroot.m \
  %reldir%/primes.m \
  %reldir%/reallog.m \
  %reldir%/realpow.m \
  %reldir%/realsqrt.m \
  %reldir%/sinint.m

%canon_reldir%dir = $(fcnfiledir)/specfun

%canon_reldir%_DATA = $(%canon_reldir%_FCN_FILES)

FCN_FILES += $(%canon_reldir%_FCN_FILES)

PKG_ADD_FILES += %reldir%/PKG_ADD

DIRSTAMP_FILES += %reldir%/$(octave_dirstamp)