pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Add audacity-cmake. audio/audacity building with cmake over autotools



Module Name:	pkgsrc-wip
Committed By:	nia <nia%netbsd.org@localhost>
Pushed By:	nee
Date:		Sat May 23 12:20:34 2020 +0100
Changeset:	667b14b48f0e4ba155d05cd1c185550c8749ca5b

Modified Files:
	Makefile
Added Files:
	audacity-cmake/DESCR
	audacity-cmake/Makefile
	audacity-cmake/PLIST
	audacity-cmake/TODO
	audacity-cmake/distinfo
	audacity-cmake/patches/patch-CMakeLists.txt
	audacity-cmake/patches/patch-aa
	audacity-cmake/patches/patch-cmake-proxies_CMakeLists.txt
	audacity-cmake/patches/patch-cmake-proxies_portaudio-v19_CMakeLists.txt
	audacity-cmake/patches/patch-cmake-proxies_portmidi_CMakeLists.txt
	audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_cmupv_src_cmupv.c
	audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_nyqsrc_sndread.c
	audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_sys_unix_switches.h
	audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_xlisp_xlisp.h
	audacity-cmake/patches/patch-src_AudioIO.cpp
	audacity-cmake/patches/patch-src_CMakeLists.txt
	audacity-cmake/patches/patch-src_effects_NoiseRemoval.cpp

Log Message:
Add audacity-cmake. audio/audacity building with cmake over autotools

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=667b14b48f0e4ba155d05cd1c185550c8749ca5b

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                                           |   1 +
 audacity-cmake/DESCR                               |   5 +
 audacity-cmake/Makefile                            | 115 ++++++++++++++++
 audacity-cmake/PLIST                               | 149 +++++++++++++++++++++
 audacity-cmake/TODO                                |   1 +
 audacity-cmake/distinfo                            |  18 +++
 audacity-cmake/patches/patch-CMakeLists.txt        |  15 +++
 audacity-cmake/patches/patch-aa                    |  15 +++
 .../patches/patch-cmake-proxies_CMakeLists.txt     |  15 +++
 ...atch-cmake-proxies_portaudio-v19_CMakeLists.txt |  34 +++++
 .../patch-cmake-proxies_portmidi_CMakeLists.txt    |  42 ++++++
 ...ch-lib-src_libnyquist_nyquist_cmupv_src_cmupv.c |  15 +++
 ...tch-lib-src_libnyquist_nyquist_nyqsrc_sndread.c |  15 +++
 ...-lib-src_libnyquist_nyquist_sys_unix_switches.h |  39 ++++++
 .../patch-lib-src_libnyquist_nyquist_xlisp_xlisp.h |  34 +++++
 audacity-cmake/patches/patch-src_AudioIO.cpp       |  18 +++
 audacity-cmake/patches/patch-src_CMakeLists.txt    |  15 +++
 .../patches/patch-src_effects_NoiseRemoval.cpp     |  17 +++
 18 files changed, 563 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index d4c9d9f385..ebbfb299e7 100644
--- a/Makefile
+++ b/Makefile
@@ -200,6 +200,7 @@ SUBDIR+=	atftp
 SUBDIR+=	atlas
 SUBDIR+=	atompaw
 SUBDIR+=	ats2
+SUBDIR+=	audacity-cmake
 SUBDIR+=	audiere
 SUBDIR+=	audio-mml
 SUBDIR+=	audit-system
diff --git a/audacity-cmake/DESCR b/audacity-cmake/DESCR
new file mode 100644
index 0000000000..b54ae64812
--- /dev/null
+++ b/audacity-cmake/DESCR
@@ -0,0 +1,5 @@
+Audacity is a program that manipulates digital audio waveforms. It supports all
+common editing operations such as Cut, Copy, and Paste, plus it will mix tracks
+and apply plug-in effects to any part of a sound. It also has a built-in
+amplitude envelope editor, a customizable spectrogram mode and a frequency
+analysis window for audio analysis applications.
diff --git a/audacity-cmake/Makefile b/audacity-cmake/Makefile
new file mode 100644
index 0000000000..f1751f35d3
--- /dev/null
+++ b/audacity-cmake/Makefile
@@ -0,0 +1,115 @@
+# $NetBSD: Makefile,v 1.132 2020/04/16 21:54:06 nia Exp $
+
+DISTNAME=	audacity-2.4.1
+CATEGORIES=	audio
+MASTER_SITES=	${MASTER_SITE_GITHUB:=audacity/}
+GITHUB_PROJECT=	Audacity
+GITHUB_TAG=	Audacity-${PKGVERSION_NOREV}
+
+MAINTAINER=	nia%NetBSD.org@localhost
+HOMEPAGE=	https://www.audacityteam.org/
+COMMENT=	Multi-track audio editor and recorder
+LICENSE=	gnu-gpl-v2 # AND cc-by-v3.0-license
+
+WRKSRC=		${WRKDIR}/audacity-${GITHUB_PROJECT}-${PKGVERSION_NOREV}
+
+USE_CMAKE=	yes
+USE_TOOLS+=	pkg-config msgfmt msgmerge
+USE_LANGUAGES=	c c++
+
+# uses -std=gnu++14
+GCC_REQD+=	4.9
+
+CONFIGURE_DIRS=	build
+CMAKE_ARG_PATH=	..
+
+CMAKE_ARGS+=	-DCMAKE_BUILD_TYPE="Debug"
+
+CMAKE_ARGS+=	-Daudacity_use_expat=system
+CMAKE_ARGS+=	-Daudacity_use_ffmpeg=linked
+CMAKE_ARGS+=	-Daudacity_use_flac=system
+CMAKE_ARGS+=	-Daudacity_use_id3tag=system
+CMAKE_ARGS+=	-Daudacity_use_lame=system
+CMAKE_ARGS+=	-Daudacity_use_libextra=local
+CMAKE_ARGS+=	-Daudacity_use_lv2=system
+CMAKE_ARGS+=	-Daudacity_use_mad=off
+CMAKE_ARGS+=	-Daudacity_use_midi=local
+CMAKE_ARGS+=	-Daudacity_use_nyquist=local
+CMAKE_ARGS+=	-Daudacity_use_ogg=system
+CMAKE_ARGS+=	-Daudacity_use_portaudio=system
+CMAKE_ARGS+=	-Daudacity_use_portmixer=local
+CMAKE_ARGS+=	-Daudacity_use_portsmf=local
+CMAKE_ARGS+=	-Daudacity_use_sbsms=local
+CMAKE_ARGS+=	-Daudacity_use_sndfile=system
+CMAKE_ARGS+=	-Daudacity_use_soundtouch=system
+CMAKE_ARGS+=	-Daudacity_use_soxr=system
+CMAKE_ARGS+=	-Daudacity_use_twolame=system
+CMAKE_ARGS+=	-Daudacity_use_vamp=system
+CMAKE_ARGS+=	-Daudacity_use_vorbis=system
+CMAKE_ARGS+=	-Daudacity_use_wxwidgets=system
+
+CMAKE_ARGS+=	-DLIB_avcodec=${PREFIX}/lib/ffmpeg4/libavcodec.so
+CMAKE_ARGS+=	-DLIB_avformat=${PREFIX}/lib/ffmpeg4/libavformat.so
+CMAKE_ARGS+=	-DLIB_avutil=${PREFIX}/lib/ffmpeg4/libavutil.so
+
+CFLAGS+=	-DHAVE_VISIBILITY=1 # ???
+
+.include "../../mk/oss.buildlink3.mk"
+
+.if ${OSS_TYPE} != "none"
+CMAKE_ARGS+=	-Daudacity_use_pa_oss=ON
+CFLAGS+=	-DHAVE_SYS_SOUNDCARD_H=1
+.endif
+
+.if ${OPSYS} == "Linux"
+CMAKE_ARGS+=	-Daudacity_use_pa_alsa=ON
+.  include "../../audio/alsa-lib/buildlink3.mk"
+.endif
+
+.if ${OPSYS} == "Darwin"
+CMAKE_ARGS+=	-Daudacity_use_pa_coreaudio=ON
+.endif
+
+.if ${MACHINE_ARCH} == "i386"
+# 64 bit atomic ops are required
+CXXFLAGS+=		-march=i586
+.endif
+
+CFLAGS.SunOS+=		-fPIC
+
+PYTHON_VERSIONS_ACCEPTED=	27
+PYTHON_FOR_BUILD_ONLY=		tool
+
+pre-configure:
+	${MKDIR} -p ${WRKSRC}/build
+
+.include "../../sysutils/desktop-file-utils/desktopdb.mk"
+.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
+.include "../../audio/lilv/buildlink3.mk"
+.include "../../audio/lv2/buildlink3.mk"
+.include "../../audio/soundtouch/buildlink3.mk"
+BUILDLINK_API_DEPENDS.twolame+=	twolame>=0.3.9
+.include "../../audio/twolame/buildlink3.mk"
+.include "../../audio/ladspa/buildlink3.mk"
+.include "../../audio/lame/buildlink3.mk"
+.include "../../audio/libid3tag/buildlink3.mk"
+.include "../../audio/libsoxr/buildlink3.mk"
+.include "../../audio/libsndfile/buildlink3.mk"
+.include "../../audio/libvorbis/buildlink3.mk"
+BUILDLINK_API_DEPENDS.portaudio+=	portaudio>=190600.20161030nb2
+.include "../../audio/portaudio/buildlink3.mk"
+.include "../../audio/suil/buildlink3.mk"
+.include "../../audio/vamp-plugin-sdk/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+BUILDLINK_API_DEPENDS.flac+=	flac>=1.3.0
+.include "../../audio/flac/buildlink3.mk"
+.include "../../lang/python/tool.mk"
+.include "../../multimedia/ffmpeg4/buildlink3.mk"
+.include "../../multimedia/libogg/buildlink3.mk"
+.include "../../textproc/expat/buildlink3.mk"
+.include "../../x11/wxGTK30/buildlink3.mk"
+.include "../../mk/dlopen.buildlink3.mk"
+BUILDLINK_TRANSFORM+=	opt:-ldl:${BUILDLINK_LDADD.dl:Q}
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/audacity-cmake/PLIST b/audacity-cmake/PLIST
new file mode 100644
index 0000000000..110499b10b
--- /dev/null
+++ b/audacity-cmake/PLIST
@@ -0,0 +1,149 @@
+@comment $NetBSD$
+bin/audacity
+man/man1/audacity.1
+share/appdata/audacity.appdata.xml
+share/applications/audacity.desktop
+share/audacity/EQDefaultCurves.xml
+share/audacity/nyquist/aud-do-support.lsp
+share/audacity/nyquist/dspprims.lsp
+share/audacity/nyquist/envelopes.lsp
+share/audacity/nyquist/equalizer.lsp
+share/audacity/nyquist/evalenv.lsp
+share/audacity/nyquist/fileio.lsp
+share/audacity/nyquist/init.lsp
+share/audacity/nyquist/misc.lsp
+share/audacity/nyquist/nyinit-dbg.lsp
+share/audacity/nyquist/nyinit.lsp
+share/audacity/nyquist/nyqmisc.lsp
+share/audacity/nyquist/nyquist-plot.txt
+share/audacity/nyquist/nyquist.lsp
+share/audacity/nyquist/printrec.lsp
+share/audacity/nyquist/profile.lsp
+share/audacity/nyquist/rawwaves/mand1.raw
+share/audacity/nyquist/rawwaves/mand10.raw
+share/audacity/nyquist/rawwaves/mand11.raw
+share/audacity/nyquist/rawwaves/mand12.raw
+share/audacity/nyquist/rawwaves/mand2.raw
+share/audacity/nyquist/rawwaves/mand3.raw
+share/audacity/nyquist/rawwaves/mand4.raw
+share/audacity/nyquist/rawwaves/mand5.raw
+share/audacity/nyquist/rawwaves/mand6.raw
+share/audacity/nyquist/rawwaves/mand7.raw
+share/audacity/nyquist/rawwaves/mand8.raw
+share/audacity/nyquist/rawwaves/mand9.raw
+share/audacity/nyquist/rawwaves/mandpluk.raw
+share/audacity/nyquist/rawwaves/marmstk1.raw
+share/audacity/nyquist/rawwaves/sinewave.raw
+share/audacity/nyquist/sal-parse.lsp
+share/audacity/nyquist/sal.lsp
+share/audacity/nyquist/seq.lsp
+share/audacity/nyquist/seqfnint.lsp
+share/audacity/nyquist/seqmidi.lsp
+share/audacity/nyquist/sliders.lsp
+share/audacity/nyquist/sndfnint.lsp
+share/audacity/nyquist/spec-plot.lsp
+share/audacity/nyquist/spectral-analysis.lsp
+share/audacity/nyquist/stk.lsp
+share/audacity/nyquist/system.lsp
+share/audacity/nyquist/test.lsp
+share/audacity/nyquist/velocity.lsp
+share/audacity/nyquist/xlinit.lsp
+share/audacity/nyquist/xm.lsp
+share/audacity/plug-ins/SilenceMarker.ny
+share/audacity/plug-ins/SoundFinder.ny
+share/audacity/plug-ins/SpectralEditMulti.ny
+share/audacity/plug-ins/SpectralEditParametricEQ.ny
+share/audacity/plug-ins/SpectralEditShelves.ny
+share/audacity/plug-ins/StudioFadeOut.ny
+share/audacity/plug-ins/adjustable-fade.ny
+share/audacity/plug-ins/beat.ny
+share/audacity/plug-ins/clipfix.ny
+share/audacity/plug-ins/crossfadeclips.ny
+share/audacity/plug-ins/crossfadetracks.ny
+share/audacity/plug-ins/delay.ny
+share/audacity/plug-ins/eq-xml-to-txt-converter.ny
+share/audacity/plug-ins/equalabel.ny
+share/audacity/plug-ins/highpass.ny
+share/audacity/plug-ins/limiter.ny
+share/audacity/plug-ins/lowpass.ny
+share/audacity/plug-ins/noisegate.ny
+share/audacity/plug-ins/notch.ny
+share/audacity/plug-ins/nyquist-plug-in-installer.ny
+share/audacity/plug-ins/pluck.ny
+share/audacity/plug-ins/rhythmtrack.ny
+share/audacity/plug-ins/rissetdrum.ny
+share/audacity/plug-ins/rms.ny
+share/audacity/plug-ins/sample-data-export.ny
+share/audacity/plug-ins/sample-data-import.ny
+share/audacity/plug-ins/spectral-delete.ny
+share/audacity/plug-ins/tremolo.ny
+share/audacity/plug-ins/vocalrediso.ny
+share/audacity/plug-ins/vocoder.ny
+share/doc/audacity/LICENSE.txt
+share/doc/audacity/README.txt
+share/icons/hicolor/16x16/audacity.png
+share/icons/hicolor/22x22/audacity.png
+share/icons/hicolor/24x24/audacity.png
+share/icons/hicolor/32x32/audacity.png
+share/icons/hicolor/48x48/audacity.png
+share/icons/hicolor/scalable/apps/audacity.svg
+share/locale/af/LC_MESSAGES/audacity.mo
+share/locale/ar/LC_MESSAGES/audacity.mo
+share/locale/be/LC_MESSAGES/audacity.mo
+share/locale/bg/LC_MESSAGES/audacity.mo
+share/locale/bn/LC_MESSAGES/audacity.mo
+share/locale/bs/LC_MESSAGES/audacity.mo
+share/locale/ca/LC_MESSAGES/audacity.mo
+share/locale/ca_ES@valencia/LC_MESSAGES/audacity.mo
+share/locale/cs/LC_MESSAGES/audacity.mo
+share/locale/cy/LC_MESSAGES/audacity.mo
+share/locale/da/LC_MESSAGES/audacity.mo
+share/locale/de/LC_MESSAGES/audacity.mo
+share/locale/el/LC_MESSAGES/audacity.mo
+share/locale/es/LC_MESSAGES/audacity.mo
+share/locale/eu/LC_MESSAGES/audacity.mo
+share/locale/eu_ES/LC_MESSAGES/audacity.mo
+share/locale/fa/LC_MESSAGES/audacity.mo
+share/locale/fi/LC_MESSAGES/audacity.mo
+share/locale/fr/LC_MESSAGES/audacity.mo
+share/locale/ga/LC_MESSAGES/audacity.mo
+share/locale/gl/LC_MESSAGES/audacity.mo
+share/locale/he/LC_MESSAGES/audacity.mo
+share/locale/hi/LC_MESSAGES/audacity.mo
+share/locale/hr/LC_MESSAGES/audacity.mo
+share/locale/hu/LC_MESSAGES/audacity.mo
+share/locale/hy/LC_MESSAGES/audacity.mo
+share/locale/id/LC_MESSAGES/audacity.mo
+share/locale/it/LC_MESSAGES/audacity.mo
+share/locale/ja/LC_MESSAGES/audacity.mo
+share/locale/ka/LC_MESSAGES/audacity.mo
+share/locale/km/LC_MESSAGES/audacity.mo
+share/locale/ko/LC_MESSAGES/audacity.mo
+share/locale/lt/LC_MESSAGES/audacity.mo
+share/locale/mk/LC_MESSAGES/audacity.mo
+share/locale/my/LC_MESSAGES/audacity.mo
+share/locale/nb/LC_MESSAGES/audacity.mo
+share/locale/nl/LC_MESSAGES/audacity.mo
+share/locale/oc/LC_MESSAGES/audacity.mo
+share/locale/pl/LC_MESSAGES/audacity.mo
+share/locale/pt_BR/LC_MESSAGES/audacity.mo
+share/locale/pt_PT/LC_MESSAGES/audacity.mo
+share/locale/ro/LC_MESSAGES/audacity.mo
+share/locale/ru/LC_MESSAGES/audacity.mo
+share/locale/sk/LC_MESSAGES/audacity.mo
+share/locale/sl/LC_MESSAGES/audacity.mo
+share/locale/sr_RS/LC_MESSAGES/audacity.mo
+share/locale/sr_RS@latin/LC_MESSAGES/audacity.mo
+share/locale/sv/LC_MESSAGES/audacity.mo
+share/locale/ta/LC_MESSAGES/audacity.mo
+share/locale/tg/LC_MESSAGES/audacity.mo
+share/locale/tr/LC_MESSAGES/audacity.mo
+share/locale/uk/LC_MESSAGES/audacity.mo
+share/locale/vi/LC_MESSAGES/audacity.mo
+share/locale/zh_CN/LC_MESSAGES/audacity.mo
+share/locale/zh_TW/LC_MESSAGES/audacity.mo
+share/mime/packages/audacity.xml
+share/pixmaps/audacity.xpm
+share/pixmaps/audacity16.xpm
+share/pixmaps/audacity32.xpm
+share/pixmaps/gnome-mime-application-x-audacity-project.xpm
diff --git a/audacity-cmake/TODO b/audacity-cmake/TODO
new file mode 100644
index 0000000000..04e90f5a1f
--- /dev/null
+++ b/audacity-cmake/TODO
@@ -0,0 +1 @@
+Fails to start.
diff --git a/audacity-cmake/distinfo b/audacity-cmake/distinfo
new file mode 100644
index 0000000000..2cf5856c86
--- /dev/null
+++ b/audacity-cmake/distinfo
@@ -0,0 +1,18 @@
+$NetBSD: distinfo,v 1.42 2020/04/16 21:54:06 nia Exp $
+
+SHA1 (audacity-2.4.1.tar.gz) = f164b6a2e02947809cee2e313cb61279a60d4829
+RMD160 (audacity-2.4.1.tar.gz) = 8c0b5643d015c7dd5bbe1b47eae0025201eb51b2
+SHA512 (audacity-2.4.1.tar.gz) = 2f0a3f7e24dce91ae520e285dbb05778b68e0fe37b8ded55ac568b5f8135069951b3986764adc5d0791c165b283a3c19596f1d6f51ba17028e0eb04558c63f25
+Size (audacity-2.4.1.tar.gz) = 63935461 bytes
+SHA1 (patch-CMakeLists.txt) = 633bd63588271947d3992397f6106d2568bedf24
+SHA1 (patch-aa) = 67c0ec5ff99004d9035de13f0263add46ed8c994
+SHA1 (patch-cmake-proxies_CMakeLists.txt) = 468fb2e8812c86f1a681bdd7bb70c5575af14bfa
+SHA1 (patch-cmake-proxies_portaudio-v19_CMakeLists.txt) = 6ab7d63fc7ae0a37dbce77887b0f8a1d24f3d059
+SHA1 (patch-cmake-proxies_portmidi_CMakeLists.txt) = 661dd5714908299fea9b8612a762e57bba613472
+SHA1 (patch-lib-src_libnyquist_nyquist_cmupv_src_cmupv.c) = 3d6cb845d82b1bcbe31dabd4bad30cb1f7ea27d5
+SHA1 (patch-lib-src_libnyquist_nyquist_nyqsrc_sndread.c) = dbc0b5b88043c7b2895742e78e6a5990f65012ef
+SHA1 (patch-lib-src_libnyquist_nyquist_sys_unix_switches.h) = d313f137f11d3e0fafa383ddeccbc89021e9ddee
+SHA1 (patch-lib-src_libnyquist_nyquist_xlisp_xlisp.h) = 2d4558f059d86633a1fcdda22ef0c914758b35a0
+SHA1 (patch-src_AudioIO.cpp) = 1b44c68c4233b24a5fa4e17515eb237fee0e283a
+SHA1 (patch-src_CMakeLists.txt) = 7f88c6433e70b900d401f04871a4591b6c991983
+SHA1 (patch-src_effects_NoiseRemoval.cpp) = 6d72545cde66ac90d4eb3821a3a3f384ccbf46f2
diff --git a/audacity-cmake/patches/patch-CMakeLists.txt b/audacity-cmake/patches/patch-CMakeLists.txt
new file mode 100644
index 0000000000..7655329761
--- /dev/null
+++ b/audacity-cmake/patches/patch-CMakeLists.txt
@@ -0,0 +1,15 @@
+$NetBSD$
+
+NetBSD support.
+
+--- CMakeLists.txt.orig	2020-05-19 09:43:53.000000000 +0000
++++ CMakeLists.txt
+@@ -246,7 +246,7 @@ check_include_file( "fcntl.h" HAVE_FCNTL
+ check_include_file( "fenv.h" HAVE_FENV_H )
+ check_include_file( "inttypes.h" HAVE_INTTYPES_H )
+ check_include_file( "limits.h" HAVE_LIMITS_H )
+-if( CMAKE_SYSTEM_NAME MATCHES "FreeBSD" )
++if( CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "NetBSD" )
+   check_include_file( "stdlib.h" HAVE_MALLOC_H )
+   check_include_file( "sys/endian.h" HAVE_ENDIAN_H )
+ else()
diff --git a/audacity-cmake/patches/patch-aa b/audacity-cmake/patches/patch-aa
new file mode 100644
index 0000000000..31e34678bc
--- /dev/null
+++ b/audacity-cmake/patches/patch-aa
@@ -0,0 +1,15 @@
+$NetBSD: patch-aa,v 1.5 2015/04/20 13:38:23 rodent Exp $
+
+Undefine NEED_ULONG.
+
+--- lib-src/libnyquist/nyquist/cmt/cext.h.orig	2015-03-02 01:07:22.000000000 +0000
++++ lib-src/libnyquist/nyquist/cmt/cext.h
+@@ -52,6 +52,8 @@ EXIT(n)  -- calls exit(n) after shutting
+ 
+ #if HAS_SYS_TYPES_H
+ #include <sys/types.h>
++#define ulong u_long
++#undef NEED_ULONG
+ #endif
+ 
+ #if HAS_MALLOC_H
diff --git a/audacity-cmake/patches/patch-cmake-proxies_CMakeLists.txt b/audacity-cmake/patches/patch-cmake-proxies_CMakeLists.txt
new file mode 100644
index 0000000000..8d4c84d0bd
--- /dev/null
+++ b/audacity-cmake/patches/patch-cmake-proxies_CMakeLists.txt
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Detect pkgsrc portaudio using pkg-config.
+
+--- cmake-proxies/CMakeLists.txt.orig	2020-05-19 09:43:53.000000000 +0000
++++ cmake-proxies/CMakeLists.txt
+@@ -150,7 +150,7 @@ addlib( lame               lame        L
+ addlib( lib-widget-extra   libextra    EXTRA       YES   YES   "" )
+ addlib( libsndfile         sndfile     SNDFILE     YES   YES   "sndfile >= 1.0.28" )
+ addlib( libsoxr            soxr        SOXR        YES   YES   "soxr >= 0.1.1" )
+-addlib( portaudio-v19      portaudio   PORTAUDIO   YES   YES   "" )
++addlib( portaudio-v19      portaudio   PORTAUDIO   YES   YES   "portaudio-2.0 >= 19" )
+ 
+ # Optional libraries
+ #
diff --git a/audacity-cmake/patches/patch-cmake-proxies_portaudio-v19_CMakeLists.txt b/audacity-cmake/patches/patch-cmake-proxies_portaudio-v19_CMakeLists.txt
new file mode 100644
index 0000000000..2835b022c6
--- /dev/null
+++ b/audacity-cmake/patches/patch-cmake-proxies_portaudio-v19_CMakeLists.txt
@@ -0,0 +1,34 @@
+$NetBSD$
+
+NetBSD support. This doesn't actually get used since we use portaudio
+from pkgsrc, but it's useful for upstream.
+
+--- cmake-proxies/portaudio-v19/CMakeLists.txt.orig	2020-05-19 09:43:53.000000000 +0000
++++ cmake-proxies/portaudio-v19/CMakeLists.txt
+@@ -56,7 +56,7 @@ else()
+          "Use the portaudio CoreAudio interface if available"
+          YES
+       )
+-   elseif( CMAKE_SYSTEM_NAME MATCHES "Linux|FreeBSD" )
++   elseif( CMAKE_SYSTEM_NAME MATCHES "Linux|FreeBSD|NetBSD" )
+       cmd_option(
+          ${_OPT}use_pa_alsa
+          "Use the portaudio ALSA interface if available"
+@@ -118,7 +118,7 @@ list( APPEND SOURCES
+          ${TARGET_ROOT}/src/hostapi/coreaudio/pa_mac_core_utilities.c
+       >
+ 
+-      $<$<PLATFORM_ID:Darwin,Linux,FreeBSD,CYGWIN>:
++      $<$<PLATFORM_ID:Darwin,Linux,FreeBSD,NetBSD,CYGWIN>:
+          ${TARGET_ROOT}/src/os/unix/pa_unix_hostapis.c
+          ${TARGET_ROOT}/src/os/unix/pa_unix_util.c
+       >
+@@ -158,7 +158,7 @@ list( APPEND INCLUDES
+          ${TARGET_ROOT}/src/os/win
+       >
+ 
+-      $<$<PLATFORM_ID:Darwin,Linux,FreeBSD,CYGWIN>:
++      $<$<PLATFORM_ID:Darwin,Linux,FreeBSD,NetBSD,CYGWIN>:
+          ${TARGET_ROOT}/src/os/unix
+       >
+ 
diff --git a/audacity-cmake/patches/patch-cmake-proxies_portmidi_CMakeLists.txt b/audacity-cmake/patches/patch-cmake-proxies_portmidi_CMakeLists.txt
new file mode 100644
index 0000000000..817277d1ae
--- /dev/null
+++ b/audacity-cmake/patches/patch-cmake-proxies_portmidi_CMakeLists.txt
@@ -0,0 +1,42 @@
+$NetBSD$
+
+NetBSD support.
+
+--- cmake-proxies/portmidi/CMakeLists.txt.orig	2020-05-19 09:43:53.000000000 +0000
++++ cmake-proxies/portmidi/CMakeLists.txt
+@@ -3,7 +3,7 @@ add_library( ${TARGET} STATIC )
+ 
+ def_vars()
+ 
+-if( CMAKE_SYSTEM_NAME MATCHES "Linux|FreeBSD" )
++if( CMAKE_SYSTEM_NAME MATCHES "Linux|FreeBSD|NetBSD" )
+    if( ${_OPT}use_pa_alsa )
+       find_package( ALSA )
+    endif()
+@@ -29,7 +29,7 @@ list( APPEND SOURCES
+          ${TARGET_ROOT}/porttime/ptmacosx_mach.c
+       >
+ 
+-      $<$<PLATFORM_ID:Linux,FreeBSD,CYGWIN>:
++      $<$<PLATFORM_ID:Linux,FreeBSD,NetBSD,CYGWIN>:
+          ${TARGET_ROOT}/pm_linux/finddefault.c
+          ${TARGET_ROOT}/pm_linux/pmlinux.c
+          ${TARGET_ROOT}/porttime/ptlinux.c
+@@ -53,7 +53,7 @@ list( APPEND INCLUDES
+          ${TARGET_ROOT}/pm_mac
+       >
+ 
+-      $<$<PLATFORM_ID:Linux,FreeBSD>:
++      $<$<PLATFORM_ID:Linux,FreeBSD,NetBSD>:
+          ${TARGET_ROOT}/pm_linux
+       >
+ )
+@@ -79,7 +79,7 @@ list( APPEND LIBRARIES
+       $<$<PLATFORM_ID:Darwin>:
+          "-framework CoreMIDI"
+       >
+-      $<$<PLATFORM_ID:FreeBSD>:
++      $<$<PLATFORM_ID:FreeBSD,NetBSD>:
+          compat
+       >
+ )
diff --git a/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_cmupv_src_cmupv.c b/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_cmupv_src_cmupv.c
new file mode 100644
index 0000000000..e576bf3bd3
--- /dev/null
+++ b/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_cmupv_src_cmupv.c
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Build on systems without log2l (NetBSD 9...)
+
+--- lib-src/libnyquist/nyquist/cmupv/src/cmupv.c.orig	2020-05-19 09:43:53.000000000 +0000
++++ lib-src/libnyquist/nyquist/cmupv/src/cmupv.c
+@@ -218,7 +218,7 @@ typedef struct {
+ //
+ int round_log_power(int fftsize, int *size_ptr)
+ {
+-    long double log2_fft = log2l(fftsize);
++    long double log2_fft = log2(fftsize);
+     int round_log2_fft = (int) log2_fft;
+     if (round_log2_fft < log2_fft) {
+         round_log2_fft += 1;
diff --git a/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_nyqsrc_sndread.c b/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_nyqsrc_sndread.c
new file mode 100644
index 0000000000..3af6c083b8
--- /dev/null
+++ b/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_nyqsrc_sndread.c
@@ -0,0 +1,15 @@
+$NetBSD: patch-lib-src_libnyquist_nyquist_nyqsrc_sndread.c,v 1.2 2016/06/05 01:02:39 ryoon Exp $
+
+Fixes "error: invalid operands to binary" build failure.
+
+--- lib-src/libnyquist/nyquist/nyqsrc/sndread.c.orig	2016-01-13 14:31:18.000000000 +0000
++++ lib-src/libnyquist/nyquist/nyqsrc/sndread.c
+@@ -167,7 +167,7 @@ LVAL snd_make_read(
+ #ifdef XL_BIG_ENDIAN
+         long format = SF_ENDIAN_LITTLE;
+ #endif
+-        susp->sf_info.format |= format;
++        susp->sf_info.format |= (int) format;
+     }
+ 
+     susp->sndfile = NULL;
diff --git a/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_sys_unix_switches.h b/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_sys_unix_switches.h
new file mode 100644
index 0000000000..ab9ea1c6d9
--- /dev/null
+++ b/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_sys_unix_switches.h
@@ -0,0 +1,39 @@
+$NetBSD: patch-lib-src_libnyquist_nyquist_sys_unix_switches.h,v 1.1 2015/04/21 01:33:39 rodent Exp $
+
+Define endianness for {Free,Open,Net}BSD and Bitrig.
+
+--- lib-src/libnyquist/nyquist/sys/unix/switches.h.orig	2015-03-02 01:07:23.000000000 +0000
++++ lib-src/libnyquist/nyquist/sys/unix/switches.h
+@@ -89,6 +89,32 @@
+    /* Target processor is big endian. */
+    #define CPU_IS_BIG_ENDIAN 1
+   #endif
++ #elif defined(__FreeBSD__) || defined(__NetBSD__)
++  #include <sys/endian.h>
++  #if _BYTE_ORDER == _LITTLE_ENDIAN
++   /* Target processor is little endian. */
++   #define CPU_IS_LITTLE_ENDIAN 1
++   /* Target processor is big endian. */
++   #define CPU_IS_BIG_ENDIAN 0
++  #else
++   /* Target processor is little endian. */
++   #define CPU_IS_LITTLE_ENDIAN 0
++   /* Target processor is big endian. */
++   #define CPU_IS_BIG_ENDIAN 1
++  #endif
++ #elif defined(__OpenBSD__) || defined(__Bitrig__)
++  #include <endian.h>
++  #if BYTE_ORDER == _LITTLE_ENDIAN
++   /* Target processor is little endian. */
++   #define CPU_IS_LITTLE_ENDIAN 1
++   /* Target processor is big endian. */ 
++   #define CPU_IS_BIG_ENDIAN 0
++  #else
++   /* Target processor is little endian. */
++   #define CPU_IS_LITTLE_ENDIAN 0
++   /* Target processor is big endian. */
++   #define CPU_IS_BIG_ENDIAN 1
++  #endif
+  #else /* default is little endian */
+    /* Target processor is little endian. */
+    #define CPU_IS_LITTLE_ENDIAN 1
diff --git a/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_xlisp_xlisp.h b/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_xlisp_xlisp.h
new file mode 100644
index 0000000000..f7f421ccd5
--- /dev/null
+++ b/audacity-cmake/patches/patch-lib-src_libnyquist_nyquist_xlisp_xlisp.h
@@ -0,0 +1,34 @@
+$NetBSD: patch-lib-src_libnyquist_nyquist_xlisp_xlisp.h,v 1.2 2018/07/31 21:10:29 jperkin Exp $
+
+Define endianness for {Free,Open,Net}BSD and Bitrig.
+
+--- lib-src/libnyquist/nyquist/xlisp/xlisp.h.orig	2016-01-13 14:31:18.000000000 +0000
++++ lib-src/libnyquist/nyquist/xlisp/xlisp.h
+@@ -151,6 +151,27 @@ extern long ptrtoabs();
+ #else
+ #define XL_BIG_ENDIAN
+ #endif
++#elif defined(__FreeBSD__) || defined(__NetBSD__)
++ #include <sys/endian.h>
++ #if _BYTE_ORDER == _LITTLE_ENDIAN
++  #define XL_LITTLE_ENDIAN
++ #else
++  #define XL_BIG_ENDIAN
++ #endif
++#elif defined(__OpenBSD__) || defined(__Bitrig__)
++ #include <endian.h>
++ #if BYTE_ORDER == _LITTLE_ENDIAN
++  #define XL_LITTLE_ENDIAN
++ #else
++  #define XL_BIG_ENDIAN
++ #endif
++#elif defined(__sun)
++ #include <sys/byteorder.h>
++ #ifdef _BIG_ENDIAN
++  #define XL_BIG_ENDIAN
++ #else
++  #define XL_LITTLE_ENDIAN
++ #endif
+ #endif
+ 
+ /* Apple CC */
diff --git a/audacity-cmake/patches/patch-src_AudioIO.cpp b/audacity-cmake/patches/patch-src_AudioIO.cpp
new file mode 100644
index 0000000000..ac9667bd6a
--- /dev/null
+++ b/audacity-cmake/patches/patch-src_AudioIO.cpp
@@ -0,0 +1,18 @@
+$NetBSD: patch-src_AudioIO.cpp,v 1.3 2019/02/10 17:14:42 nia Exp $
+
+CLOCK_MONOTONIC_RAW is Linux-specific.
+
+--- src/AudioIO.cpp.orig	2018-02-14 07:11:20.000000000 +0000
++++ src/AudioIO.cpp
+@@ -985,7 +985,11 @@ static double SystemTime(bool usingAlsa)
+    if (usingAlsa) {
+       struct timespec now;
+       // CLOCK_MONOTONIC_RAW is unaffected by NTP or adj-time
++#ifdef CLOCK_MONOTONIC_RAW
+       clock_gettime(CLOCK_MONOTONIC_RAW, &now);
++#else
++      clock_gettime(CLOCK_MONOTONIC, &now);
++#endif
+       //return now.tv_sec + now.tv_nsec * 0.000000001;
+       return (now.tv_sec + now.tv_nsec * 0.000000001) - streamStartTime;
+    }
diff --git a/audacity-cmake/patches/patch-src_CMakeLists.txt b/audacity-cmake/patches/patch-src_CMakeLists.txt
new file mode 100644
index 0000000000..4a9a5ee387
--- /dev/null
+++ b/audacity-cmake/patches/patch-src_CMakeLists.txt
@@ -0,0 +1,15 @@
+$NetBSD$
+
+CMAKE_MODULE_PATH contains multiple entries when building in pkgsrc.
+
+--- src/CMakeLists.txt.orig	2020-05-19 09:43:53.000000000 +0000
++++ src/CMakeLists.txt
+@@ -23,7 +23,7 @@ if( GIT_FOUND )
+       COMMAND
+          ${CMAKE_COMMAND} -D GIT=${GIT_EXECUTABLE}
+                           -D _PRVDIR=${_PRVDIR}
+-                          -P ${CMAKE_MODULE_PATH}/Version.cmake
++                          -P ${CMAKE_SOURCE_DIR}/cmake-proxies/cmake-modules/Version.cmake
+       WORKING_DIRECTORY
+          ${topdir}
+    )
diff --git a/audacity-cmake/patches/patch-src_effects_NoiseRemoval.cpp b/audacity-cmake/patches/patch-src_effects_NoiseRemoval.cpp
new file mode 100644
index 0000000000..f96ff35bcd
--- /dev/null
+++ b/audacity-cmake/patches/patch-src_effects_NoiseRemoval.cpp
@@ -0,0 +1,17 @@
+$NetBSD: patch-src_effects_NoiseRemoval.cpp,v 1.2 2015/04/20 13:38:23 rodent Exp $
+
+Fix build for SunOS.
+
+--- src/effects/NoiseRemoval.cpp.orig	2015-03-02 01:06:57.000000000 +0000
++++ src/effects/NoiseRemoval.cpp
+@@ -50,6 +50,10 @@
+ 
+ #include <math.h>
+ 
++#ifdef __sun
++#include <ieeefp.h>
++#endif
++
+ #if defined(__WXMSW__) && !defined(__CYGWIN__)
+ #include <float.h>
+ #define finite(x) _finite(x)


Home | Main Index | Thread Index | Old Index