From: A. Maitland Bottoms Date: Sun, 4 Sep 2022 16:00:56 +0000 (+0100) Subject: volk (2.5.2-1) unstable; urgency=medium X-Git-Tag: archive/raspbian/2.5.2-1+rpi1^2~8 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=06cf0843441f41be5edaee8ad0239ea4ebd43e33;p=volk.git volk (2.5.2-1) unstable; urgency=medium * New upstream release. * volk_8u_x4_conv_k7_r2_8u - Add NEON implementation `neonspiral` via `sse2neon.h` * Fixes - Fix out-of-bounds reads - Fix broken neon kernels - Fix float to int conversion * CMake - Suppress superfluous warning - Fix Python install path calculation and documentation [dgit import unpatched volk 2.5.2-1] --- 06cf0843441f41be5edaee8ad0239ea4ebd43e33 diff --cc debian/changelog index 0000000,0000000..fd285e1 new file mode 100644 --- /dev/null +++ b/debian/changelog @@@ -1,0 -1,0 +1,557 @@@ ++volk (2.5.2-1) unstable; urgency=medium ++ ++ * New upstream release. ++ * volk_8u_x4_conv_k7_r2_8u ++ - Add NEON implementation `neonspiral` via `sse2neon.h` ++ * Fixes ++ - Fix out-of-bounds reads ++ - Fix broken neon kernels ++ - Fix float to int conversion ++ * CMake ++ - Suppress superfluous warning ++ - Fix Python install path calculation and documentation ++ ++ -- A. Maitland Bottoms Sun, 04 Sep 2022 12:00:56 -0400 ++ ++volk (2.5.1-2) unstable; urgency=medium ++ ++ * VolkPython use posix prefix scheme (Closes: #1009394) ++ ++ -- A. Maitland Bottoms Tue, 12 Apr 2022 18:39:33 -0400 ++ ++volk (2.5.1-1) unstable; urgency=medium ++ ++ * New upstream release. ++ ++ -- A. Maitland Bottoms Sun, 13 Feb 2022 00:18:58 -0500 ++ ++volk (2.5.0-2) unstable; urgency=medium ++ ++ * upload to unstable ++ * with some upstream bugfixes ++ ++ -- A. Maitland Bottoms Thu, 21 Oct 2021 23:30:05 -0400 ++ ++volk (2.5.0-1) experimental; urgency=medium ++ ++ * New upstream release ++ * Use libcpu-features-dev on powerpc and x32 (Closes: #978602) ++ * Mention volk-config-info and volk_modtool in description (Closes: #989263) ++ * Upload to experimental for soversion bump ++ ++ -- A. Maitland Bottoms Thu, 10 Jun 2021 18:29:47 -0400 ++ ++volk (2.4.1-2) unstable; urgency=medium ++ ++ [ Shengjing Zhu ] ++ * Use system cpu_features package ++ ++ [ A. Maitland Bottoms ] ++ * Adopt Use system cpu_features package patch (Closes: #978096) ++ ++ -- A. Maitland Bottoms Sun, 27 Dec 2020 15:16:07 -0500 ++ ++volk (2.4.1-1) unstable; urgency=medium ++ ++ * New upstream release ++ ++ -- A. Maitland Bottoms Thu, 17 Dec 2020 23:53:21 -0500 ++ ++volk (2.4.0-4) unstable; urgency=medium ++ ++ * skip cpu_features on "Unsupported OS" kFreeBSD ++ * bump Standards-Version - no other changes. ++ ++ -- A. Maitland Bottoms Tue, 15 Dec 2020 19:53:16 -0500 ++ ++volk (2.4.0-3) unstable; urgency=medium ++ ++ * Fix binary-indep build (Closes: #976300) ++ * Upload to unstable ++ ++ -- A. Maitland Bottoms Thu, 03 Dec 2020 20:43:29 -0500 ++ ++volk (2.4.0-2) experimental; urgency=medium ++ ++ * Make use of cpu_features a CMake option with sensible defaults per arch ++ ++ -- A. Maitland Bottoms Mon, 30 Nov 2020 16:19:19 -0500 ++ ++volk (2.4.0-1) experimental; urgency=medium ++ ++ * New upstream release ++ * cpu_features git submodule packaged as cpu-features source component. ++ * Upload to experimental for soversion bump ++ ++ -- A. Maitland Bottoms Sun, 22 Nov 2020 12:35:43 -0500 ++ ++volk (2.3.0-3) unstable; urgency=medium ++ ++ * update to v2.3.0-14-g91e5d07 ++ emit an emms instruction after using the mmx extension ++ ++ -- A. Maitland Bottoms Tue, 30 Jun 2020 19:48:20 -0400 ++ ++volk (2.3.0-2) unstable; urgency=medium ++ ++ * Upload to unstable ++ ++ -- A. Maitland Bottoms Mon, 11 May 2020 07:26:03 -0400 ++ ++volk (2.3.0-1) experimental; urgency=medium ++ ++ * New upstream release, to experimental for soversion bump ++ * Kernels ++ - volk: accurate exp kernel ++ - exp: Rename SSE4.1 to SSE2 kernel ++ - Add 32f_s32f_add_32f kernel ++ - This kernel adds in vector + scalar functionality ++ - Fix the broken index max kernels ++ - Treat the mod_range puppet as such ++ - Add puppet for power spectral density kernel ++ - Updated log10 calcs to use faster log2 approach ++ - fix: Use unaligned load ++ - divide: Optimize complexmultiplyconjugate ++ ++ -- A. Maitland Bottoms Sat, 09 May 2020 15:42:23 -0400 ++ ++volk (2.2.1-3) unstable; urgency=medium ++ ++ * update to v2.2.1-34-gd4756c5 ++ ++ -- A. Maitland Bottoms Sun, 05 Apr 2020 10:37:46 -0400 ++ ++volk (2.2.1-2) unstable; urgency=medium ++ ++ * update to v2.2.1-11-gfaf230e ++ * cmake: Remove the ORC from the VOLK public link interface ++ * Fix the broken index max kernels ++ ++ -- A. Maitland Bottoms Fri, 27 Mar 2020 21:48:10 -0400 ++ ++volk (2.2.1-1) unstable; urgency=high ++ ++ * New upstream bugfix release ++ reason for high urgency: ++ - Fix loop bound in AVX rotator (only one fixed in 2.2.0-3) ++ - Fix out-of-bounds read in AVX2 square dist kernel ++ - Fix length checks in AVX2 index max kernels ++ ++ -- A. Maitland Bottoms Mon, 24 Feb 2020 18:08:05 -0500 ++ ++volk (2.2.0-3) unstable; urgency=high ++ ++ * Update to v2.2.0-6-g5701f8f ++ reason for high urgency: ++ - Fix loop bound in AVX rotator ++ ++ -- A. Maitland Bottoms Sun, 23 Feb 2020 23:49:18 -0500 ++ ++volk (2.2.0-2) unstable; urgency=medium ++ ++ * Upload to unstable ++ ++ -- A. Maitland Bottoms Tue, 18 Feb 2020 17:56:58 -0500 ++ ++volk (2.2.0-1) experimental; urgency=medium ++ ++ * New upstream release ++ - Remove build dependency on python six ++ - Fixup VolkConfigVersion ++ - add volk_version.h ++ ++ -- A. Maitland Bottoms Sun, 16 Feb 2020 18:25:20 -0500 ++ ++volk (2.1.0-2) unstable; urgency=medium ++ ++ * Upload to unstable ++ ++ -- A. Maitland Bottoms Sun, 05 Jan 2020 23:17:57 -0500 ++ ++volk (2.1.0-1) experimental; urgency=medium ++ ++ * New upstream release ++ - The AVX FMA rotator bug is fixed ++ - VOLK offers `volk::vector<>` for C++ to follow RAII ++ - Use C++17 `std::filesystem` ++ - This enables VOLK to be built without Boost if available! ++ - lots of bugfixes ++ - more optimized kernels, especially more NEON versions ++ * Upload to experimental for new ABI library package libvolk2.1 ++ ++ -- A. Maitland Bottoms Sun, 22 Dec 2019 10:27:36 -0500 ++ ++volk (2.0.0-3) unstable; urgency=medium ++ ++ * update to v2.0.0-4-gf04a46f ++ ++ -- A. Maitland Bottoms Thu, 14 Nov 2019 22:47:23 -0500 ++ ++volk (2.0.0-2) unstable; urgency=medium ++ ++ * Upload to unstable ++ ++ -- A. Maitland Bottoms Mon, 12 Aug 2019 22:49:11 -0400 ++ ++volk (2.0.0-1) experimental; urgency=medium ++ ++ * New upstream release ++ ++ -- A. Maitland Bottoms Wed, 07 Aug 2019 23:31:20 -0400 ++ ++volk (1.4-4) unstable; urgency=medium ++ ++ * working volk_modtool with Python 3 ++ * build and install libvolk.a ++ ++ -- A. Maitland Bottoms Mon, 29 Oct 2018 01:32:05 -0400 ++ ++volk (1.4-3) unstable; urgency=medium ++ ++ * update to v1.4-9-g297fefd ++ Added an AVX protokernel for volk_32fc_x2_32f_square_dist_scalar_mult_32f ++ fixed a buffer over-read and over-write in ++ volk_32fc_x2_s32f_square_dist_scalar_mult_32f_a_avx ++ Fix 32u_reverse_32u for ARM ++ ++ -- A. Maitland Bottoms Sat, 12 May 2018 15:25:04 -0400 ++ ++volk (1.4-2) unstable; urgency=medium ++ ++ * Upload to unstable, needed by gnuradio (>= 3.7.12.0) ++ ++ -- A. Maitland Bottoms Tue, 03 Apr 2018 01:03:19 -0400 ++ ++volk (1.4-1) experimental; urgency=medium ++ ++ * New upstream release ++ upstream changelog http://libvolk.org/release-v14.html ++ ++ -- A. Maitland Bottoms Tue, 27 Mar 2018 22:57:42 -0400 ++ ++volk (1.3.1-1) unstable; urgency=medium ++ ++ * New upstream bugfix release ++ * Refresh all debian patches for use with git am ++ ++ -- A. Maitland Bottoms Tue, 27 Mar 2018 21:54:29 -0400 ++ ++volk (1.3-3) unstable; urgency=medium ++ ++ * update to v1.3-23-g0109b2e ++ * update debian/libvolk1-dev.abi.tar.gz.amd64 ++ * Add breaks/replaces gnuradio (<=3.7.2.1) (LP: #1614235) ++ ++ -- A. Maitland Bottoms Sun, 04 Feb 2018 13:12:21 -0500 ++ ++volk (1.3-2) unstable; urgency=medium ++ ++ * update to v1.3-16-g28b03a9 ++ apps: fix profile update reading end of lines ++ qa: lower tolerance for 32fc_mag to fix issue #96 ++ * include upstream master patch to sort input files ++ ++ -- A. Maitland Bottoms Sun, 27 Aug 2017 13:44:55 -0400 ++ ++volk (1.3-1) unstable; urgency=medium ++ ++ * New upstream release ++ * The index_max kernels were named with the wrong output datatype. To ++ fix this there are new kernels that return a 32u (int32_t) and the ++ existing kernels had their signatures changed to return 16u (int16_t). ++ * The output to stdout and stderr has been shuffled around. There is no ++ longer a message that prints what VOLK machine is being used and the ++ warning messages go to stderr rather than stdout. ++ * The 32fc_index_max kernels previously were only accurate to the SSE ++ register width (4 points). This was a pretty serious and long-lived ++ bug that's been fixed and the QA updated appropriately. ++ ++ -- A. Maitland Bottoms Sat, 02 Jul 2016 16:30:47 -0400 ++ ++volk (1.2.2-2) unstable; urgency=medium ++ ++ * update to v1.2.2-11-g78c8bc4 (to follow gnuradio maint branch) ++ ++ -- A. Maitland Bottoms Sun, 19 Jun 2016 14:44:15 -0400 ++ ++volk (1.2.2-1) unstable; urgency=medium ++ ++ * New upstream release ++ ++ -- A. Maitland Bottoms Fri, 08 Apr 2016 00:12:10 -0400 ++ ++volk (1.2.1-2) unstable; urgency=medium ++ ++ * Upstream patches: ++ Fix some CMake complaints ++ The fix for compilation with cmake 3.5 ++ ++ -- A. Maitland Bottoms Wed, 23 Mar 2016 17:47:54 -0400 ++ ++volk (1.2.1-1) unstable; urgency=medium ++ ++ * New upstream release ++ ++ -- A. Maitland Bottoms Sun, 07 Feb 2016 19:38:32 -0500 ++ ++volk (1.2-1) unstable; urgency=medium ++ ++ * New upstream release ++ ++ -- A. Maitland Bottoms Thu, 24 Dec 2015 20:28:13 -0500 ++ ++volk (1.1.1-5) experimental; urgency=medium ++ ++ * update to v1.1.1-22-gef53547 to support gnuradio 3.7.9 ++ ++ -- A. Maitland Bottoms Fri, 11 Dec 2015 13:12:55 -0500 ++ ++volk (1.1.1-4) unstable; urgency=medium ++ ++ * more lintian fixes ++ ++ -- A. Maitland Bottoms Wed, 25 Nov 2015 21:49:58 -0500 ++ ++volk (1.1.1-3) unstable; urgency=medium ++ ++ * Lintian fixes Pre-Depends ++ ++ -- A. Maitland Bottoms Thu, 19 Nov 2015 21:24:27 -0500 ++ ++volk (1.1.1-2) unstable; urgency=medium ++ ++ * Note that libvolk1-dev replaces files in gnuradio-dev versions <<3.7.8 ++ (Closes: #802646) again. Thanks Andreas Beckmann. ++ ++ -- A. Maitland Bottoms Fri, 13 Nov 2015 18:45:49 -0500 ++ ++volk (1.1.1-1) unstable; urgency=medium ++ ++ * New upstream release ++ * New architectures exist for the AVX2 and FMA ISAs. ++ * The profiler now generates buffers that are vlen + a tiny amount and ++ generates random data to fill buffers. This is intended to catch bugs ++ in protokernels that write beyond num_points. ++ * Note that libvolk1-dev replaces files in earlier gnuradio-dev versions ++ (Closes: #802646) ++ ++ -- A. Maitland Bottoms Sun, 01 Nov 2015 18:45:43 -0500 ++ ++volk (1.1-4) unstable; urgency=medium ++ ++ * update to v1.1-12-g264addc ++ ++ -- A. Maitland Bottoms Tue, 29 Sep 2015 23:41:50 -0400 ++ ++volk (1.1-3) unstable; urgency=low ++ ++ * drop dh_acc to get reproducible builds ++ ++ -- A. Maitland Bottoms Fri, 11 Sep 2015 22:57:06 -0400 ++ ++volk (1.1-2) unstable; urgency=low ++ ++ * use dh-acc ++ ++ -- A. Maitland Bottoms Mon, 07 Sep 2015 15:45:20 -0400 ++ ++volk (1.1-1) unstable; urgency=medium ++ ++ * re-organize package naming convention ++ * New upstream release tag v1.1 ++ New architectures exist for the AVX2 and FMA ISAs. Along ++ with the build-system support the following kernels have ++ no proto-kernels taking advantage of these architectures: ++ ++ * 32f_x2_dot_prod_32f ++ * 32fc_x2_multiply_32fc ++ * 64_byteswap ++ * 32f_binary_slicer_8i ++ * 16u_byteswap ++ * 32u_byteswap ++ ++ QA/profiler ++ ----------- ++ ++ The profiler now generates buffers that are vlen + a tiny ++ amount and generates random data to fill buffers. This is ++ intended to catch bugs in protokernels that write beyond ++ num_points. ++ ++ -- A. Maitland Bottoms Wed, 26 Aug 2015 09:22:48 -0400 ++ ++volk (1.0.2-2) unstable; urgency=low ++ ++ * Use SOURCE_DATE_EPOCH from the environment, if defined, ++ rather than current date and time to implement volk_build_date() ++ (embedding build date in a library does not help reproducible builds) ++ * add watch file ++ ++ -- A. Maitland Bottoms Sat, 15 Aug 2015 17:43:15 -0400 ++ ++volk (1.0.2-1) unstable; urgency=medium ++ ++ * Maintenance release 24 Jul 2015 by Nathan West ++ * The major change is the CMake logic to add ASM protokernels. Rather ++ than depending on CFLAGS and ASMFLAGS we use the results of VOLK's ++ built in has_ARCH tests. All configurations should work the same as ++ before, but manually specifying CFLAGS and ASMFLAGS on the cmake call ++ for ARM native builds should no longer be necessary. ++ * The 32fc_s32fc_x2_rotator_32fc generic protokernel now includes a ++ previously implied header. ++ * Finally, there is a fix to return the "best" protokernel to the ++ dispatcher when no volk_config exists. Thanks to Alexandre Raymond for ++ pointing this out. ++ * with maint branch patch: ++ kernels-add-missing-include-arm_neon.h ++ * removed unused build-dependency on liboil0.3-dev (closes: #793626) ++ ++ -- A. Maitland Bottoms Wed, 05 Aug 2015 00:43:40 -0400 ++ ++volk (1.0.1-1) unstable; urgency=low ++ ++ * Maintenance Release v1.0.1 08 Jul 2015 by Nathan West ++ This is a maintenance release with bug fixes since the initial release of ++ v1.0 in April. ++ ++ * Contributors ++ ++ The following authors have contributed code to this release: ++ ++ Doug Geiger doug.geiger@bioradiation.net ++ Elliot Briggs elliot.briggs@gmail.com ++ Marcus Mueller marcus@hostalia.de ++ Nathan West nathan.west@okstate.edu ++ Tom Rondeau tom@trondeau.com ++ ++ * Kernels ++ ++ Several bug fixes in different kernels. The NEON implementations of the ++ following kernels have been fixed: ++ ++ 32f_x2_add_32f ++ 32f_x2_dot_prod_32f ++ 32fc_s32fc_multiply_32fc ++ 32fc_x2_multiply_32fc ++ ++ Additionally the NEON asm based 32f_x2_add_32f protokernels were not being ++ used and are now included and available for use via the dispatcher. ++ ++ The 32f_s32f_x2_fm_detect_32f kernel now has a puppet. This solves QA seg ++ faults on 32-bit machines and provide a better test for this kernel. ++ ++ The 32fc_s32fc_x2_rotator_32fc generic protokernel replaced cabsf with ++ hypotf for better Android support. ++ ++ * Building ++ ++ Static builds now trigger the applications (volk_profile and ++ volk-config-info) to be statically linked. ++ ++ The file gcc_x86_cpuid.h has been removed since it was no longer being ++ used. Previously it provided cpuid functionality for ancient compilers ++ that we do not support. ++ ++ All build types now use -Wall. ++ ++ * QA and Testing ++ ++ The documentation around the --update option to volk_profile now makes it ++ clear that the option will only profile kernels without entries in ++ volk_profile. The signature of run_volk_tests with expanded args changed ++ signed types to unsigned types to reflect the actual input. ++ ++ The remaining changes are all non-functional changes to address issues ++ from Coverity. ++ ++ -- A. Maitland Bottoms Fri, 10 Jul 2015 17:57:42 -0400 ++ ++volk (1.0-5) unstable; urgency=medium ++ ++ * native-armv7-build-support skips neon on Debian armel (Closes: #789972) ++ ++ -- A. Maitland Bottoms Sat, 04 Jul 2015 12:36:36 -0400 ++ ++volk (1.0-4) unstable; urgency=low ++ ++ * update native-armv7-build-support patch from gnuradio volk package ++ ++ -- A. Maitland Bottoms Thu, 25 Jun 2015 16:38:49 -0400 ++ ++volk (1.0-3) unstable; urgency=medium ++ ++ * Add Breaks/Replaces (Closes: #789893, #789894) ++ * Allow failing tests ++ ++ -- A. Maitland Bottoms Thu, 25 Jun 2015 12:46:06 -0400 ++ ++volk (1.0-2) unstable; urgency=medium ++ ++ * kernels-add-missing-math.h-include-to-rotator ++ ++ -- A. Maitland Bottoms Wed, 24 Jun 2015 21:09:32 -0400 ++ ++volk (1.0-1) unstable; urgency=low ++ ++ * Initial package (Closes: #782417) ++ Initial Release 11 Apr 2015 by Nathan West ++ ++ VOLK 1.0 is available. This is the first release of VOLK as an independently ++ tracked sub-project of GNU Radio. ++ ++ * Contributors ++ ++ VOLK has been tracked separately from GNU Radio since 2014 Dec 23. ++ Contributors between the split and the initial release are ++ ++ Albert Holguin aholguin_77@yahoo.com ++ Doug Geiger doug.geiger@bioradiation.net ++ Elliot Briggs elliot.briggs@gmail.com ++ Julien Olivain julien.olivain@lsv.ens-cachan.fr ++ Michael Dickens michael.dickens@ettus.com ++ Nathan West nathan.west@okstate.edu ++ Tom Rondeau tom@trondeau.com ++ ++ * QA ++ ++ The test and profiler have significantly changed. The profiler supports ++ run-time changes to vlen and iters to help kernel development and provide ++ more flexibility on embedded systems. Additionally there is a new option ++ to update an existing volk_profile results file with only new kernels which ++ will save time when updating to newer versions of VOLK ++ ++ The QA system creates a static list of kernels and test cases. The QA ++ testing and profiler iterate over this static list rather than each source ++ file keeping its own list. The QA also emits XML results to ++ lib/.unittest/kernels.xml which is formatted similarly to JUnit results. ++ ++ * Modtool ++ ++ Modtool was updated to support the QA and profiler changes. ++ ++ * Kernels ++ ++ New proto-kernels: ++ ++ 16ic_deinterleave_real_8i_neon ++ 16ic_s32f_deinterleave_32f_neon ++ fix preprocessor errors for some compilers on byteswap and popcount puppets ++ ++ ORC was moved to the asm kernels directory. ++ volk_malloc ++ ++ The posix_memalign implementation of Volk_malloc now falls back to a standard ++ malloc if alignment is 1. ++ ++ * Miscellaneous ++ ++ Several build system and cmake changes have made it possible to build VOLK ++ both independently with proper soname versions and in-tree for projects ++ such as GNU Radio. ++ ++ The static builds take advantage of cmake object libraries to speed up builds. ++ ++ Finally, there are a number of changes to satisfy compiler warnings and make ++ QA work on multiple machines. ++ ++ -- A. Maitland Bottoms Sun, 12 Apr 2015 23:20:41 -0400 diff --cc debian/control index 0000000,0000000..a2d9627 new file mode 100644 --- /dev/null +++ b/debian/control @@@ -1,0 -1,0 +1,83 @@@ ++Source: volk ++Section: libdevel ++Priority: optional ++Maintainer: A. Maitland Bottoms ++Build-Depends: cmake, ++ debhelper-compat (= 13), ++ dh-python, ++ liborc-0.4-dev, ++ libcpu-features-dev [amd64 arm64 armel armhf i386 mips64el mipsel powerpc ppc64 ppc64el x32], ++ python3-dev, ++ python3-mako ++Build-Depends-Indep: doxygen, graphviz ++Standards-Version: 4.6.1 ++Rules-Requires-Root: no ++Homepage: https://libvolk.org ++Vcs-Browser: https://salsa.debian.org/bottoms/pkg-volk ++Vcs-Git: https://salsa.debian.org/bottoms/pkg-volk.git ++ ++Package: libvolk2.5 ++Section: libs ++Architecture: any ++Pre-Depends: ${misc:Pre-Depends} ++Depends: ${misc:Depends}, ${shlibs:Depends} ++Multi-Arch: same ++Recommends: libvolk2-bin ++Suggests: libvolk2-dev ++Description: vector optimized functions ++ Vector-Optimized Library of Kernels is designed to help ++ applications work with the processor's SIMD instruction sets. These are ++ very powerful vector operations that can give signal processing a ++ huge boost in performance. ++ ++Package: libvolk2-dev ++Architecture: any ++Pre-Depends: ${misc:Pre-Depends} ++Depends: libvolk2.5 (=${binary:Version}), ${misc:Depends} ++Breaks: gnuradio-dev (<<3.7.8), libvolk-dev, libvolk1.0-dev, libvolk1-dev ++Replaces: gnuradio-dev (<<3.7.8), libvolk-dev, libvolk1.0-dev, libvolk1-dev ++Suggests: libvolk2-doc ++Multi-Arch: same ++Description: vector optimized function headers ++ Vector-Optimized Library of Kernels is designed to help ++ applications work with the processor's SIMD instruction sets. These are ++ very powerful vector operations that can give signal processing a ++ huge boost in performance. ++ . ++ This package contains the header files. ++ For documentation, see libvolk-doc. ++ ++Package: libvolk2-bin ++Section: libs ++Architecture: any ++Pre-Depends: ${misc:Pre-Depends} ++Depends: libvolk2.5 (=${binary:Version}), ++ ${misc:Depends}, ++ ${python3:Depends}, ++ ${shlibs:Depends} ++Breaks: libvolk1-bin, libvolk-bin, libvolk1.0-bin, gnuradio (<=3.7.2.1) ++Replaces: libvolk1-bin, libvolk-bin, libvolk1.0-bin, gnuradio (<=3.7.2.1) ++Description: vector optimized runtime tools ++ Vector-Optimized Library of Kernels is designed to help ++ applications work with the processor's SIMD instruction sets. These are ++ very powerful vector operations that can give signal processing a ++ huge boost in performance. ++ . ++ This package includes: the volk_profile tool to customize settings for ++ the system; volk_modtool to create new optimized modules; and ++ volk-config-info to show settings. ++ ++Package: libvolk2-doc ++Section: doc ++Architecture: all ++Multi-Arch: foreign ++Depends: ${misc:Depends} ++Recommends: www-browser ++Description: vector optimized library documentation ++ Vector-Optimized Library of Kernels is designed to help ++ applications work with the processor's SIMD instruction sets. These are ++ very powerful vector operations that can give signal processing a ++ huge boost in performance. ++ . ++ This package includes the Doxygen generated documentation in ++ /usr/share/doc/libvolk2-dev/html/index.html diff --cc debian/copyright index 0000000,0000000..b4cb64f new file mode 100644 --- /dev/null +++ b/debian/copyright @@@ -1,0 -1,0 +1,172 @@@ ++Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ ++Upstream-Name: volk ++Upstream-Contact: http://libvolk.org/ ++Source: ++ https://github.com/gnuradio/volk ++ https://github.com/google/cpu_features ++Comment: ++ Debian packages by A. Maitland Bottoms ++ https://github.com/gnuradio/volk/releases/download/v2.5.1/volk-2.5.1.tar.xz ++ . ++ Upstream Maintainers: ++ Johannes Demel ++ Michael Dickens ++Copyright: 2014-2020 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: * ++Copyright: 2006, 2009-2020, Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: apps/volk_profile.h ++Copyright: 2014-2020 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: appveyor.yml ++Copyright: 2016 Paul Cercueil ++License: GPL-3+ ++ ++Files: cmake/* ++Copyright: 2014-2020 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: cmake/Modules/* ++Copyright: 2006, 2009-2020, Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: cpu_features/* ++Copyright: 2020 Google LLC ++License: Apache-2.0 ++ Licensed under the Apache License, Version 2.0 (the "License"); ++ you may not use this file except in compliance with the License. ++ You may obtain a copy of the License at ++ . ++ http://www.apache.org/licenses/LICENSE-2.0 ++ . ++ Unless required by applicable law or agreed to in writing, software ++ distributed under the License is distributed on an "AS IS" BASIS, ++ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ++ See the License for the specific language governing permissions and ++ limitations under the License. ++ . ++ On Debian systems, the complete text of the Apache-2.0 License ++ can be found in "/usr/share/common-licenses/Apache-2.0". ++ ++Files: cmake/Modules/CMakeParseArgumentsCopy.cmake ++Copyright: 2010 Alexander Neundorf ++License: Kitware-BSD ++ All rights reserved. ++ . ++ Redistribution and use in source and binary forms, with or without ++ modification, are permitted provided that the following conditions ++ are met: ++ . ++ * Redistributions of source code must retain the above copyright ++ notice, this list of conditions and the following disclaimer. ++ . ++ * Redistributions in binary form must reproduce the above copyright ++ notice, this list of conditions and the following disclaimer in the ++ documentation and/or other materials provided with the distribution. ++ . ++ * Neither the names of Kitware, Inc., the Insight Software Consortium, ++ nor the names of their contributors may be used to endorse or promote ++ products derived from this software without specific prior written ++ permission. ++ . ++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ++ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ++ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ++ HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ++ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ++ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ++ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ++ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ ++Files: cmake/Modules/FindORC.cmake ++ cmake/Modules/VolkConfig.cmake.in ++Copyright: 2014-2015 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: cmake/msvc/* ++Copyright: 2006-2008, Alexander Chemeris ++License: BSD-2-clause ++ Redistribution and use in source and binary forms, with or without ++ modification, are permitted provided that the following conditions are met: ++ . ++ 1. Redistributions of source code must retain the above copyright notice, ++ this list of conditions and the following disclaimer. ++ . ++ 2. Redistributions in binary form must reproduce the above copyright ++ notice, this list of conditions and the following disclaimer in the ++ documentation and/or other materials provided with the distribution. ++ . ++ 3. The name of the author may be used to endorse or promote products ++ derived from this software without specific prior written permission. ++ . ++ THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED ++ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF ++ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO ++ EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, ++ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; ++ OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, ++ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR ++ OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ++ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ ++Files: debian/* ++Copyright: 2015-2020 Free Software Foundation, Inc ++License: GPL-3+ ++Comment: assigned by A. Maitland Bottoms ++ ++Files: docs/* ++Copyright: 2014-2015 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: gen/archs.xml ++ gen/machines.xml ++Copyright: 2014-2015 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: include/volk/volk_common.h ++ include/volk/volk_complex.h ++ include/volk/volk_prefs.h ++Copyright: 2014-2015 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: kernels/volk/asm/* ++Copyright: 2014-2015 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: kernels/volk/volk_16u_byteswappuppet_16u.h ++ kernels/volk/volk_32u_byteswappuppet_32u.h ++ kernels/volk/volk_64u_byteswappuppet_64u.h ++Copyright: 2014-2015 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++Files: lib/kernel_tests.h ++ lib/qa_utils.cc ++ lib/qa_utils.h ++ lib/volk_prefs.c ++Copyright: 2014-2015 Free Software Foundation, Inc. ++License: GPL-3+ ++ ++License: GPL-3+ ++ This program is free software: you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 3 of the License, or ++ (at your option) any later version. ++ . ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ . ++ You should have received a copy of the GNU General Public License ++ along with this program. If not, see . ++ . ++ On Debian systems, the complete text of the GNU General ++ Public License version 3 can be found in "/usr/share/common-licenses/GPL-3". diff --cc debian/libvolk2-bin.install index 0000000,0000000..2f34922 new file mode 100644 --- /dev/null +++ b/debian/libvolk2-bin.install @@@ -1,0 -1,0 +1,2 @@@ ++usr/bin/volk* ++usr/lib/python3*/site-packages/* usr/lib/python3/dist-packages/ diff --cc debian/libvolk2-bin.manpages index 0000000,0000000..95bae9e new file mode 100644 --- /dev/null +++ b/debian/libvolk2-bin.manpages @@@ -1,0 -1,0 +1,3 @@@ ++debian/volk-config-info.1 ++debian/volk_modtool.1 ++debian/volk_profile.1 diff --cc debian/libvolk2-dev.acc index 0000000,0000000..37f5a79 new file mode 100644 --- /dev/null +++ b/debian/libvolk2-dev.acc @@@ -1,0 -1,0 +1,50 @@@ ++ ++ ++ ++ ++ -DHAVE_CPUID_H ++ -DHAVE_DLFCN_H ++ -DHAVE_FENV_H ++ -DHAVE_POSIX_MEMALIGN ++ -DHAVE_XGETBV ++ -D_GLIBCXX_USE_CXX11_ABI=1 ++ -I/usr/include/orc-0.4 ++ -DNDEBUG ++ -std=gnu11 ++ -m64 ++ -mmmx ++ -msse ++ -msse2 ++ -msse3 ++ -mssse3 ++ -msse4.1 ++ -msse4.2 ++ -mpopcnt ++ -mavx ++ -mfma ++ -mavx2 ++ -mavx512f ++ -mavx512cd ++ -fPIC ++ -g ++ -O2 ++ -fstack-protector-strong ++ -Wformat ++ -Werror=format-security ++ -Wdate-time ++ -D_FORTIFY_SOURCE=2 ++ -fvisibility=hidden ++ -Wsign-compare ++ -Wall ++ -Wno-uninitialized ++ ++ ++ ++debian/libvolk2-dev/usr/include/volk/ ++ ++ ++ ++debian/libvolk2.0/usr/lib/ ++ ++ ++ diff --cc debian/libvolk2-dev.install index 0000000,0000000..8b14c56 new file mode 100644 --- /dev/null +++ b/debian/libvolk2-dev.install @@@ -1,0 -1,0 +1,5 @@@ ++usr/include/* ++usr/lib/*/*volk.a ++usr/lib/*/*volk*so ++usr/lib/*/cmake/volk ++usr/lib/*/pkgconfig/*volk* diff --cc debian/libvolk2-doc.doc-base index 0000000,0000000..3d5fdc8 new file mode 100644 --- /dev/null +++ b/debian/libvolk2-doc.doc-base @@@ -1,0 -1,0 +1,19 @@@ ++Document: libvolk2-doc ++Title: Vector-Optimized Library of Kernels Reference Manual ++Author: GNU Radio Developers ++Abstract: VOLK is the Vector-Optimized Library of Kernels. ++ It is a library that contains kernels of hand-written SIMD code for ++ different mathematical operations. Since each SIMD architecture can ++ be very different and no compiler has yet come along to handle ++ vectorization properly or highly efficiently, VOLK approaches the ++ problem differently. For each architecture or platform that a ++ developer wishes to vectorize for, a new proto-kernel is added to ++ VOLK. At runtime, VOLK will select the correct proto-kernel. In this ++ way, the users of VOLK call a kernel for performing the operation ++ that is platform/architecture agnostic. This allows us to write ++ portable SIMD code. ++Section: Programming/C++ ++ ++Format: HTML ++Index: /usr/share/doc/libvolk2-dev/html/index.html ++Files: /usr/share/doc/libvolk2-dev/html/*.html diff --cc debian/libvolk2-doc.docs index 0000000,0000000..87dd314 new file mode 100644 --- /dev/null +++ b/debian/libvolk2-doc.docs @@@ -1,0 -1,0 +1,1 @@@ ++obj-*/html diff --cc debian/libvolk2.5.install index 0000000,0000000..e4252f4 new file mode 100644 --- /dev/null +++ b/debian/libvolk2.5.install @@@ -1,0 -1,0 +1,1 @@@ ++usr/lib/*/libvolk.so.* diff --cc debian/not-installed index 0000000,0000000..6f354d0 new file mode 100644 --- /dev/null +++ b/debian/not-installed @@@ -1,0 -1,0 +1,6 @@@ ++usr/bin/list_cpu_features ++usr/lib/*/cmake/CpuFeatures/CpuFeaturesConfig.cmake ++usr/lib/*/cmake/CpuFeatures/CpuFeaturesConfigVersion.cmake ++usr/lib/*/cmake/CpuFeatures/CpuFeaturesTargets-relwithdebinfo.cmake ++usr/lib/*/cmake/CpuFeatures/CpuFeaturesTargets.cmake ++usr/lib/*/libcpu_features.a diff --cc debian/patches/make-acc-happy index 0000000,0000000..15727f3 new file mode 100644 --- /dev/null +++ b/debian/patches/make-acc-happy @@@ -1,0 -1,0 +1,60 @@@ ++From 799245ea6e9e05cc0ed0fabe783fbbe1a5054fd4 Mon Sep 17 00:00:00 2001 ++From: "A. Maitland Bottoms" ++Date: Tue, 27 Mar 2018 22:02:59 -0400 ++Subject: [PATCH 2/6] make acc happy ++ ++The abi-compliance-checker grabs all the .h files it finds ++and tries to compile them all. Even though some are not ++appropriate for the architecture being run on. Being careful ++with preprocessor protections avoids problems. ++--- ++ include/volk/volk_neon_intrinsics.h | 2 ++ ++ kernels/volk/volk_32f_8u_polarbutterflypuppet_32f.h | 1 + ++ kernels/volk/volk_8u_x2_encodeframepolar_8u.h | 3 --- ++ 3 files changed, 3 insertions(+), 3 deletions(-) ++ ++--- a/include/volk/volk_neon_intrinsics.h +++++ b/include/volk/volk_neon_intrinsics.h ++@@ -66,6 +66,7 @@ ++ ++ #ifndef INCLUDE_VOLK_VOLK_NEON_INTRINSICS_H_ ++ #define INCLUDE_VOLK_VOLK_NEON_INTRINSICS_H_ +++#ifdef LV_HAVE_NEON ++ #include ++ ++ ++@@ -281,4 +282,5 @@ ++ #endif ++ } ++ +++#endif /*LV_HAVE_NEON*/ ++ #endif /* INCLUDE_VOLK_VOLK_NEON_INTRINSICS_H_ */ ++--- a/kernels/volk/volk_32f_8u_polarbutterflypuppet_32f.h +++++ b/kernels/volk/volk_32f_8u_polarbutterflypuppet_32f.h ++@@ -18,6 +18,7 @@ ++ #include ++ #include ++ #include +++#include ++ ++ ++ static inline void sanitize_bytes(unsigned char* u, const int elements) ++--- a/kernels/volk/volk_8u_x2_encodeframepolar_8u.h +++++ b/kernels/volk/volk_8u_x2_encodeframepolar_8u.h ++@@ -47,8 +47,6 @@ ++ } ++ } ++ ++-#ifdef LV_HAVE_GENERIC ++- ++ static inline void volk_8u_x2_encodeframepolar_8u_generic(unsigned char* frame, ++ unsigned char* temp, ++ unsigned int frame_size) ++@@ -68,7 +66,6 @@ ++ --stage; ++ } ++ } ++-#endif /* LV_HAVE_GENERIC */ ++ ++ #ifdef LV_HAVE_SSSE3 ++ #include diff --cc debian/patches/omit-build-paths index 0000000,0000000..c7efd9e new file mode 100644 --- /dev/null +++ b/debian/patches/omit-build-paths @@@ -1,0 -1,0 +1,28 @@@ ++From f3ee79c2c366f79e3e59b5deec438d4145e12cd3 Mon Sep 17 00:00:00 2001 ++From: "A. Maitland Bottoms" ++Date: Sun, 4 Sep 2022 21:20:13 -0400 ++Subject: [PATCH] omit build path ++ ++Have CMake filter out build path from COMPILER_INFO ++before using the string in constants.c ++ ++Signed-off-by: A. Maitland Bottoms ++--- ++ lib/CMakeLists.txt | 1 + ++ 1 file changed, 1 insertion(+) ++ ++diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt ++index 75055ee..412cb11 100644 ++--- a/lib/CMakeLists.txt +++++ b/lib/CMakeLists.txt ++@@ -454,6 +454,7 @@ message(STATUS "Loading version ${VERSION} into constants...") ++ ++ #double escape for windows backslash path separators ++ string(REPLACE "\\" "\\\\" prefix "${prefix}") +++string(REPLACE "${CMAKE_SOURCE_DIR}" "$BUILD_DIR" COMPILER_INFO "${COMPILER_INFO}") ++ ++ configure_file( ++ ${CMAKE_CURRENT_SOURCE_DIR}/constants.c.in ++-- ++2.35.1 ++ diff --cc debian/patches/omit-doxygen-build-paths index 0000000,0000000..96441c9 new file mode 100644 --- /dev/null +++ b/debian/patches/omit-doxygen-build-paths @@@ -1,0 -1,0 +1,82 @@@ ++From 58cc2b105211f0e5beab4dc228b478ebe105be06 Mon Sep 17 00:00:00 2001 ++From: "A. Maitland Bottoms" ++Date: Sun, 4 Sep 2022 21:37:45 -0400 ++Subject: [PATCH] omit doxygen build paths ++ ++Use reproducible-builds friendly configuration settings. ++ ++Signed-off-by: A. Maitland Bottoms ++--- ++ docs/Doxyfile.in | 14 +++++++------- ++ 1 file changed, 7 insertions(+), 7 deletions(-) ++ ++diff --git a/docs/Doxyfile.in b/docs/Doxyfile.in ++index 70913f5..a0fb23f 100644 ++--- a/docs/Doxyfile.in +++++ b/docs/Doxyfile.in ++@@ -157,7 +157,7 @@ FULL_PATH_NAMES = YES ++ # will be relative from the directory where doxygen is started. ++ # This tag requires that the tag FULL_PATH_NAMES is set to YES. ++ ++-STRIP_FROM_PATH = +++STRIP_FROM_PATH = @CMAKE_BINARY_DIR@ @CMAKE_SOURCE_DIR@ ++ ++ # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the ++ # path mentioned in the documentation of a class, which tells the reader which ++@@ -166,7 +166,7 @@ STRIP_FROM_PATH = ++ # specify the list of include paths that are normally passed to the compiler ++ # using the -I flag. ++ ++-STRIP_FROM_INC_PATH = +++STRIP_FROM_INC_PATH = @CMAKE_SOURCE_DIR@/include @CMAKE_BINARY_DIR@ @CMAKE_SOURCE_DIR@/lib ++ ++ # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but ++ # less readable) file names. This can be useful is your file systems doesn't ++@@ -637,7 +637,7 @@ MAX_INITIALIZER_LINES = 30 ++ # will mention the files that were used to generate the documentation. ++ # The default value is: YES. ++ ++-SHOW_USED_FILES = YES +++SHOW_USED_FILES = NO ++ ++ # Set the SHOW_FILES tag to NO to disable the generation of the Files page. This ++ # will remove the Files entry from the Quick Index and from the Folder Tree View ++@@ -832,7 +832,7 @@ RECURSIVE = YES ++ # Note that relative paths are relative to the directory from which doxygen is ++ # run. ++ ++-EXCLUDE = @CMAKE_BINARY_DIR@ @CMAKE_SOURCE_DIR@/cpu_features @CMAKE_SOURCE_DIR@/README.md @CMAKE_SOURCE_DIR@/docs/AUTHORS_RESUBMITTING_UNDER_LGPL_LICENSE.md +++EXCLUDE = @CMAKE_BINARY_DIR@ @CMAKE_SOURCE_DIR@/cpu_features @CMAKE_SOURCE_DIR@/README.md @CMAKE_SOURCE_DIR@/cmake @CMAKE_SOURCE_DIR@/docs/AUTHORS_RESUBMITTING_UNDER_LGPL_LICENSE.md @CMAKE_SOURCE_DIR@/apps @CMAKE_SOURCE_DIR@/lib/*qa* @CMAKE_SOURCE_DIR@/tmpl ++ ++ # The EXCLUDE_SYMLINKS tag can be used to select whether or not files or ++ # directories that are symbolic links (a Unix file system feature) are excluded ++@@ -979,7 +979,7 @@ REFERENCES_RELATION = NO ++ # link to the documentation. ++ # The default value is: YES. ++ ++-REFERENCES_LINK_SOURCE = YES +++REFERENCES_LINK_SOURCE = NO ++ ++ # If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the ++ # source code will show a tooltip with additional information such as prototype, ++@@ -989,7 +989,7 @@ REFERENCES_LINK_SOURCE = YES ++ # The default value is: YES. ++ # This tag requires that the tag SOURCE_BROWSER is set to YES. ++ ++-SOURCE_TOOLTIPS = YES +++SOURCE_TOOLTIPS = NO ++ ++ # If the USE_HTAGS tag is set to YES then the references to source code will ++ # point to the HTML generated by the htags(1) tool instead of doxygen built-in ++@@ -1099,7 +1099,7 @@ HTML_HEADER = ++ # that doxygen normally uses. ++ # This tag requires that the tag GENERATE_HTML is set to YES. ++ ++-HTML_FOOTER = +++HTML_FOOTER = "" ++ ++ # The HTML_STYLESHEET tag can be used to specify a user-defined cascading style ++ # sheet that is used by each HTML page. It can be used to fine-tune the look of ++-- ++2.35.1 ++ diff --cc debian/patches/optional-static-apps index 0000000,0000000..5f52e57 new file mode 100644 --- /dev/null +++ b/debian/patches/optional-static-apps @@@ -1,0 -1,0 +1,24 @@@ ++Author: A. Maitland Bottoms ++Description: optional static apps ++ For Debian, build apps with static libs if ENABLE_STATIC_APPS. ++ ++--- a/apps/CMakeLists.txt +++++ b/apps/CMakeLists.txt ++@@ -44,7 +44,7 @@ ++ endif() ++ target_link_libraries(volk_profile PRIVATE std::filesystem) ++ ++-if(ENABLE_STATIC_LIBS) +++if(ENABLE_STATIC_LIBS AND ENABLE_STATIC_APPS) ++ target_link_libraries(volk_profile PRIVATE volk_static) ++ set_target_properties(volk_profile PROPERTIES LINK_FLAGS "-static") ++ else() ++@@ -61,7 +61,7 @@ ++ add_executable(volk-config-info volk-config-info.cc ${CMAKE_CURRENT_SOURCE_DIR}/volk_option_helpers.cc ++ ) ++ ++-if(ENABLE_STATIC_LIBS) +++if(ENABLE_STATIC_LIBS AND ENABLE_STATIC_APPS) ++ target_link_libraries(volk-config-info volk_static) ++ set_target_properties(volk-config-info PROPERTIES LINK_FLAGS "-static") ++ else() diff --cc debian/patches/remove-external-HTML-resources index 0000000,0000000..2917d6c new file mode 100644 --- /dev/null +++ b/debian/patches/remove-external-HTML-resources @@@ -1,0 -1,0 +1,32 @@@ ++Author: A. Maitland Bottoms ++Description: remove external HTML resources ++ Debian packages should not generate traffic to external web services. ++ ++--- a/README.md +++++ b/README.md ++@@ -1,8 +1,3 @@ ++-[![Build Status](https://travis-ci.com/gnuradio/volk.svg?branch=master)](https://travis-ci.com/gnuradio/volk) [![Build status](https://ci.appveyor.com/api/projects/status/5o56mgw0do20jlh3/branch/master?svg=true)](https://ci.appveyor.com/project/gnuradio/volk/branch/master) ++-![Check PR Formatting](https://github.com/gnuradio/volk/workflows/Check%20PR%20Formatting/badge.svg) ++-![Run VOLK tests](https://github.com/gnuradio/volk/workflows/Run%20VOLK%20tests/badge.svg) ++-[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3360942.svg)](https://doi.org/10.5281/zenodo.3360942) ++- ++ ![VOLK Logo](/docs/volk_logo.png) ++ ++ # Welcome to VOLK! ++--- a/cpu_features/README.md +++++ b/cpu_features/README.md ++@@ -1,14 +1,4 @@ ++ # cpu_features ++-[![Linux Status][linux_svg]][linux_link] ++-[![Macos Status][macos_svg]][macos_link] ++-[![Windows Status][windows_svg]][windows_link] ++- ++-[linux_svg]: https://github.com/google/cpu_features/actions/workflows/amd64_linux.yml/badge.svg?branch=master ++-[linux_link]: https://github.com/google/cpu_features/actions/workflows/amd64_linux.yml ++-[macos_svg]: https://github.com/google/cpu_features/actions/workflows/amd64_macos.yml/badge.svg?branch=master ++-[macos_link]: https://github.com/google/cpu_features/actions/workflows/amd64_macos.yml ++-[windows_svg]: https://github.com/google/cpu_features/actions/workflows/amd64_windows.yml/badge.svg?branch=master ++-[windows_link]: https://github.com/google/cpu_features/actions/workflows/amd64_windows.yml ++ ++ A cross-platform C library to retrieve CPU features (such as available ++ instructions) at runtime. diff --cc debian/patches/series index 0000000,0000000..f5336f8 new file mode 100644 --- /dev/null +++ b/debian/patches/series @@@ -1,0 -1,0 +1,7 @@@ ++make-acc-happy ++optional-static-apps ++skip-cpu_features-on-kfreebsd ++remove-external-HTML-resources ++omit-build-paths ++omit-doxygen-build-paths ++update-doxygen diff --cc debian/patches/skip-cpu_features-on-kfreebsd index 0000000,0000000..e708b15 new file mode 100644 --- /dev/null +++ b/debian/patches/skip-cpu_features-on-kfreebsd @@@ -1,0 -1,0 +1,20 @@@ ++Subject: skip cpu_freatures on kfreebsd ++Author: A. Maitland Bottoms ++ ++ Avoid #error "Unsupported OS" on kFreeBSD ++ ++--- a/CMakeLists.txt +++++ b/CMakeLists.txt ++@@ -120,8 +120,10 @@ ++ ######################################################################## ++ ++ # cpu_features - sensible defaults, user settable option ++-if(CMAKE_SYSTEM_PROCESSOR MATCHES ++- "(^mips)|(^arm)|(^aarch64)|(x86_64)|(AMD64|amd64)|(^i.86$)|(^powerpc)|(^ppc)") +++message(STATUS "Building Volk for ${CMAKE_SYSTEM_NAME} on ${CMAKE_SYSTEM_PROCESSOR}") +++if((CMAKE_SYSTEM_PROCESSOR MATCHES +++ "(^mips)|(^arm)|(^aarch64)|(x86_64)|(AMD64|amd64)|(^i.86$)|(^powerpc)|(^ppc)") +++ AND (NOT CMAKE_SYSTEM_NAME MATCHES "kFreeBSD")) ++ option(VOLK_CPU_FEATURES "Volk uses cpu_features" ON) ++ else() ++ option(VOLK_CPU_FEATURES "Volk uses cpu_features" OFF) diff --cc debian/patches/update-doxygen index 0000000,0000000..3764e8a new file mode 100644 --- /dev/null +++ b/debian/patches/update-doxygen @@@ -1,0 -1,0 +1,113 @@@ ++Author: A. Maitland Bottoms ++Description: update doxygen ++ Debian has recent version that complains of these settings. ++ ++--- a/docs/Doxyfile.in +++++ b/docs/Doxyfile.in ++@@ -235,12 +235,6 @@ ++ ++ ALIASES = ++ ++-# This tag can be used to specify a number of word-keyword mappings (TCL only). ++-# A mapping has the form "name=value". For example adding "class=itcl::class" ++-# will allow you to use the command class in the itcl::class meaning. ++- ++-TCL_SUBST = ++- ++ # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources ++ # only. Doxygen will then generate output that is more tailored for C. For ++ # instance, some of the names that are used will be different. The list of all ++@@ -1032,13 +1026,6 @@ ++ ++ ALPHABETICAL_INDEX = YES ++ ++-# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in ++-# which the alphabetical index list will be split. ++-# Minimum value: 1, maximum value: 20, default value: 5. ++-# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. ++- ++-COLS_IN_ALPHA_INDEX = 5 ++- ++ # In case all classes in a project start with a common prefix, all classes will ++ # be put under the same header in the alphabetical index. The IGNORE_PREFIX tag ++ # can be used to specify a prefix (or a list of prefixes) that should be ignored ++@@ -1714,16 +1701,6 @@ ++ ++ LATEX_HIDE_INDICES = NO ++ ++-# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source ++-# code with syntax highlighting in the LaTeX output. ++-# ++-# Note that which sources are shown also depends on other settings such as ++-# SOURCE_BROWSER. ++-# The default value is: NO. ++-# This tag requires that the tag GENERATE_LATEX is set to YES. ++- ++-LATEX_SOURCE_CODE = NO ++- ++ # The LATEX_BIB_STYLE tag can be used to specify the style to use for the ++ # bibliography, e.g. plainnat, or ieeetr. See ++ # http://en.wikipedia.org/wiki/BibTeX and \cite for more info. ++@@ -1843,18 +1820,6 @@ ++ ++ XML_OUTPUT = xml ++ ++-# The XML_SCHEMA tag can be used to specify a XML schema, which can be used by a ++-# validating XML parser to check the syntax of the XML files. ++-# This tag requires that the tag GENERATE_XML is set to YES. ++- ++-XML_SCHEMA = ++- ++-# The XML_DTD tag can be used to specify a XML DTD, which can be used by a ++-# validating XML parser to check the syntax of the XML files. ++-# This tag requires that the tag GENERATE_XML is set to YES. ++- ++-XML_DTD = ++- ++ # If the XML_PROGRAMLISTING tag is set to YES doxygen will dump the program ++ # listings (including syntax highlighting and cross-referencing information) to ++ # the XML output. Note that enabling this will significantly increase the size ++@@ -2062,34 +2027,10 @@ ++ ++ EXTERNAL_PAGES = YES ++ ++-# The PERL_PATH should be the absolute path and name of the perl script ++-# interpreter (i.e. the result of 'which perl'). ++-# The default file (with absolute path) is: /usr/bin/perl. ++- ++-PERL_PATH = /usr/bin/perl ++- ++ #--------------------------------------------------------------------------- ++ # Configuration options related to the dot tool ++ #--------------------------------------------------------------------------- ++ ++-# If the CLASS_DIAGRAMS tag is set to YES doxygen will generate a class diagram ++-# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to ++-# NO turns the diagrams off. Note that this option also works with HAVE_DOT ++-# disabled, but it is recommended to install and use dot, since it yields more ++-# powerful graphs. ++-# The default value is: YES. ++- ++-CLASS_DIAGRAMS = NO ++- ++-# You can define message sequence charts within doxygen comments using the \msc ++-# command. Doxygen will then run the mscgen tool (see: ++-# http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the ++-# documentation. The MSCGEN_PATH tag allows you to specify the directory where ++-# the mscgen tool resides. If left empty the tool is assumed to be found in the ++-# default search path. ++- ++-MSCGEN_PATH = ++- ++ # You can include diagrams made with dia in doxygen documentation. Doxygen will ++ # then run dia to produce the diagram and insert it in the documentation. The ++ # DIA_PATH tag allows you to specify the directory where the dia binary resides. ++@@ -2226,7 +2167,7 @@ ++ # The default value is: NO. ++ # This tag requires that the tag HAVE_DOT is set to YES. ++ ++-CALL_GRAPH = NO +++CALL_GRAPH = YES ++ ++ # If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller ++ # dependency graph for every global function or class method. diff --cc debian/rules index 0000000,0000000..add6dd2 new file mode 100755 --- /dev/null +++ b/debian/rules @@@ -1,0 -1,0 +1,23 @@@ ++#!/usr/bin/make -f ++DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) ++export DEB_HOST_MULTIARCH ++#export DH_VERBOSE=1 ++ ++%: ++ dh $@ --with python3 ++ ++override_dh_auto_configure: ++ dh_auto_configure -- -DLIB_SUFFIX="/$(DEB_HOST_MULTIARCH)" \ ++ -DENABLE_STATIC_LIBS=On -DPYTHON_EXECUTABLE=/usr/bin/python3 \ ++ -DCMAKE_BUILD_TYPE=RelWithDebInfo ++ ++override_dh_auto_build-indep: ++ cmake --build obj-* --target all ++ cmake --build obj-* --target volk_doc ++ ++override_dh_auto_install: ++ dh_auto_install ++ find debian -type d -empty -delete ++ ++override_dh_auto_test: ++ - dh_auto_test -- CTEST_TEST_TIMEOUT=60 diff --cc debian/source/format index 0000000,0000000..163aaf8 new file mode 100644 --- /dev/null +++ b/debian/source/format @@@ -1,0 -1,0 +1,1 @@@ ++3.0 (quilt) diff --cc debian/volk-config-info.1 index 0000000,0000000..e8d6efd new file mode 100644 --- /dev/null +++ b/debian/volk-config-info.1 @@@ -1,0 -1,0 +1,45 @@@ ++.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.40.10. ++.TH VOLK-CONFIG-INFO "1" "July 2014" "volk-config-info 0.1" "User Commands" ++.SH NAME ++volk-config-info \- pkgconfig-like tool for Vector Optimized Library of Kernels 0.1 ++.SH DESCRIPTION ++.SS "Program options: volk-config-info [options]:" ++.TP ++\fB\-h\fR [ \fB\-\-help\fR ] ++print help message ++.TP ++\fB\-\-prefix\fR ++print VOLK installation prefix ++.TP ++\fB\-\-builddate\fR ++print VOLK build date (RFC2822 format) ++.TP ++\fB\-\-cc\fR ++print VOLK C compiler version ++.TP ++\fB\-\-cflags\fR ++print VOLK CFLAGS ++.TP ++\fB\-\-all\-machines\fR ++print VOLK machines built into library ++.TP ++\fB\-\-avail\-machines\fR ++print VOLK machines the current platform can use ++.TP ++\fB\-\-machine\fR ++print the VOLK machine that will be used ++.TP ++\fB\-v\fR [ \fB\-\-version\fR ] ++print VOLK version ++.SH "SEE ALSO" ++The full documentation for ++.B volk-config-info ++is maintained as a Texinfo manual. If the ++.B info ++and ++.B volk-config-info ++programs are properly installed at your site, the command ++.IP ++.B info volk-config-info ++.PP ++should give you access to the complete manual. diff --cc debian/volk_modtool.1 index 0000000,0000000..752e7f5 new file mode 100644 --- /dev/null +++ b/debian/volk_modtool.1 @@@ -1,0 -1,0 +1,112 @@@ ++.TH GNURADIO "1" "August 2013" "volk_modtool 3.7" "User Commands" ++.SH NAME ++volk_modtool \- tailor VOLK modules ++.SH DESCRIPTION ++The volk_modtool tool is installed along with VOLK as a way of helping ++to construct, add to, and interogate the VOLK library or companion ++libraries. ++.P ++volk_modtool is installed into $prefix/bin. ++.P ++VOLK modtool enables creating standalone (out-of-tree) VOLK modules ++and provides a few tools for sharing VOLK kernels between VOLK ++modules. If you need to design or work with VOLK kernels away from ++the canonical VOLK library, this is the tool. If you need to tailor ++your own VOLK library for whatever reason, this is the tool. ++.P ++The canonical VOLK library installs a volk.h and a libvolk.so. Your ++own library will install volk_$name.h and libvolk_$name.so. Ya Gronk? ++Good. ++.P ++There isn't a substantial difference between the canonical VOLK ++module and any other VOLK module. They're all peers. Any module ++created via VOLK modtool will come complete with a default ++volk_modtool.cfg file associating the module with the base from which ++it came, its distinctive $name and its destination (or path). These ++values (created from user input if VOLK modtool runs without a ++user-supplied config file or a default config file) serve as default ++values for some VOLK modtool actions. It's more or less intended for ++the user to change directories to the top level of a created VOLK ++module and then run volk_modtool to take advantage of the values ++stored in the default volk_modtool.cfg file. ++.P ++Apart from creating new VOLK modules, VOLK modtool allows you to list ++the names of kernels in other modules, list the names of kernels in ++the current module, add kernels from another module into the current ++module, and remove kernels from the current module. When moving ++kernels between modules, VOLK modtool does its best to keep the qa ++and profiling code for those kernels intact. If the base has a test ++or a profiling call for some kernel, those calls will follow the ++kernel when VOLK modtool adds that kernel. If QA or profiling ++requires a puppet kernel, the puppet kernel will follow the original ++kernel when VOLK modtool adds that original kernel. VOLK modtool ++respects puppets. ++.P ++====================================================================== ++.P ++.SH Installing a new VOLK Library: ++.P ++Run the command "volk_modtool -i". This will ask you three questions: ++.P ++ name: // the name to give your VOLK library: volk_ ++ destination: // directory new source tree is built under -- must exists. ++ // It will create /volk_ ++ base: // the directory containing the original VOLK source code ++.P ++This will build a new skeleton directory in the destination provided ++with the name volk_. It will contain the necessary structure to ++build: ++.P ++ mkdir build ++ cd build ++ cmake -DCMAKE_INSTALL_PREFIX=/opt/volk ../ ++ make ++ sudo make install ++.P ++Right now, the library is empty and contains no kernels. Kernels can ++be added from another VOLK library using the '-a' option. If not ++specified, the kernel will be extracted from the base VOLK ++directory. Using the '-b' allows us to specify another VOLK library to ++use for this purpose. ++.P ++ volk_modtool -a -n 32fc_x2_conjugate_dot_prod_32fc ++.P ++This will put the code for the new kernel into ++/volk_/kernels/volk_/ ++.P ++Other kernels must be added by hand. See the following webpages for ++more information about creating VOLK kernels: ++ http://gnuradio.org/doc/doxygen/volk_guide.html ++ http://gnuradio.org/redmine/projects/gnuradio/wiki/Volk ++.P ++====================================================================== ++.P ++.SH OPTIONS ++.P ++Options for Adding and Removing Kernels: ++ -a, --add_kernel ++ Add kernel from existing VOLK module. Uses the base VOLK module ++ unless -b is used. Use -n to specify the kernel name. ++ Requires: -n. ++ Optional: -b ++.P ++ -A, --add_all_kernels ++ Add all kernels from existing VOLK module. Uses the base VOLK ++ module unless -b is used. ++ Optional: -b ++.P ++ -x, --remove_kernel ++ Remove kernel from module. ++ Required: -n. ++ Optional: -b ++.P ++Options for Listing Kernels: ++ -l, --list ++ Lists all kernels available in the base VOLK module. ++.P ++ -k, --kernels ++ Lists all kernels in this VOLK module. ++.P ++ -r, --remote-list ++ Lists all kernels in another VOLK module that is specified ++ using the -b option. diff --cc debian/volk_profile.1 index 0000000,0000000..405facb new file mode 100644 --- /dev/null +++ b/debian/volk_profile.1 @@@ -1,0 -1,0 +1,5 @@@ ++.TH UHD_FFT "1" "March 2012" "volk_profile 3.5" "User Commands" ++.SH NAME ++volk_profile \- Quality Assurance application for libvolk functions ++.SH DESCRIPTION ++Writes profile results to a file. diff --cc debian/watch index 0000000,0000000..de9e7d1 new file mode 100644 --- /dev/null +++ b/debian/watch @@@ -1,0 -1,0 +1,4 @@@ ++version=4 ++ opts="filenamemangle=s%(?:.*?)?volk-?(\d[\d.]*)\.tar\.xz%volk_$1.orig.tar.xz%" \ ++ https://github.com/gnuradio/volk/releases \ ++ (?:.*?/)?volk-?(\d[\d.]*)\.tar\.xz debian uupdate