pkgsrc-WIP-changes archive

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

csound6: Update to 6.13.0



Module Name:	pkgsrc-wip
Committed By:	Michael Baeuerle <michael.baeuerle%stz-e.de@localhost>
Pushed By:	micha
Date:		Thu Oct 24 18:05:11 2019 +0200
Changeset:	274fddbc725bdb41021527ce2b0f0797abeb06c1

Modified Files:
	Makefile
Added Files:
	csound6/COMMIT_MSG
	csound6/DESCR
	csound6/Makefile
	csound6/PLIST
	csound6/distinfo
	csound6/patches/patch-CMakeLists.txt
	csound6/patches/patch-Engine_entry1.c
	csound6/patches/patch-Engine_linevent.c
	csound6/patches/patch-Frontends_csound_csound__main.c
	csound6/patches/patch-InOut_libsnd.c
	csound6/patches/patch-InOut_widgets.cpp
	csound6/patches/patch-InOut_winEPS.c
	csound6/patches/patch-InOut_winFLTK.c
	csound6/patches/patch-Opcodes_cpumeter.c
	csound6/patches/patch-Opcodes_wavegde.h
	csound6/patches/patch-Top_csmodule.c
	csound6/patches/patch-Top_csound.c
	csound6/patches/patch-Top_one_file.c
	csound6/patches/patch-Top_threads.c
	csound6/patches/patch-include_interlocks.h

Log Message:
csound6: Update to 6.13.0

- Reset MAINTAINER (no response)
- Set MASTER_SITES to Github (new home)
- Update HOMEPAGE
- Declare C99 and C++11 in USE_LANGUAGES
- Declare flex in USE_TOOLS
- Switch to FLTK 1.3 (test with 1.4)
- Rework patches
- Add dependecy for audio/libsamplerate
- Add dependecy for x11/libICE
- Add dependecy for x11/libSM
- Add dependecy for x11/libXext
- Update PLIST
- Add workaround for NetBSD (Backtrace Information Library)
- Declare NetBSD 7 as minimum required version
- Add workaround for image libraries that cmake doesn't link

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

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

diffstat:
 Makefile                                           |   2 +-
 csound6/COMMIT_MSG                                 | 221 +++++++++++++++++++++
 csound6/DESCR                                      |   8 +
 csound6/Makefile                                   |  80 ++++++++
 csound6/PLIST                                      | 115 +++++++++++
 csound6/distinfo                                   |  21 ++
 csound6/patches/patch-CMakeLists.txt               |  77 +++++++
 csound6/patches/patch-Engine_entry1.c              |  15 ++
 csound6/patches/patch-Engine_linevent.c            |  15 ++
 .../patches/patch-Frontends_csound_csound__main.c  |  25 +++
 csound6/patches/patch-InOut_libsnd.c               |  14 ++
 csound6/patches/patch-InOut_widgets.cpp            |  34 ++++
 csound6/patches/patch-InOut_winEPS.c               |  15 ++
 csound6/patches/patch-InOut_winFLTK.c              |  33 +++
 csound6/patches/patch-Opcodes_cpumeter.c           |  15 ++
 csound6/patches/patch-Opcodes_wavegde.h            |  16 ++
 csound6/patches/patch-Top_csmodule.c               |  55 +++++
 csound6/patches/patch-Top_csound.c                 |  26 +++
 csound6/patches/patch-Top_one_file.c               |  24 +++
 csound6/patches/patch-Top_threads.c                |  25 +++
 csound6/patches/patch-include_interlocks.h         |  16 ++
 21 files changed, 851 insertions(+), 1 deletion(-)

diffs:
diff --git a/Makefile b/Makefile
index 02b66e6af8..862a3af6b6 100644
--- a/Makefile
+++ b/Makefile
@@ -517,6 +517,7 @@ SUBDIR+=	cryptcat
 SUBDIR+=	crystal-bin
 SUBDIR+=	csmith
 SUBDIR+=	csoap
+SUBDIR+=	csound6
 SUBDIR+=	csp2b
 SUBDIR+=	csstidy
 SUBDIR+=	csv-mode
@@ -851,7 +852,6 @@ SUBDIR+=	flimsel
 SUBDIR+=	flite2
 SUBDIR+=	flnews-devel
 SUBDIR+=	flowblade
-SUBDIR+=	flpsed
 SUBDIR+=	fltk14-devel
 SUBDIR+=	fltk2
 SUBDIR+=	fluxbox
diff --git a/csound6/COMMIT_MSG b/csound6/COMMIT_MSG
new file mode 100644
index 0000000000..39e4bc0c7e
--- /dev/null
+++ b/csound6/COMMIT_MSG
@@ -0,0 +1,221 @@
+audio/csound6: Update to 6.13.0
+
+- Reset MAINTAINER (no response)
+- Set MASTER_SITES to Github (new home)
+- Update HOMEPAGE
+- Declare C99 and C++11 in USE_LANGUAGES
+- Declare flex in USE_TOOLS
+- Switch to FLTK 1.3 (test with 1.4)
+- Rework patches
+- Add dependecy for audio/libsamplerate
+- Add dependecy for x11/libICE
+- Add dependecy for x11/libSM
+- Add dependecy for x11/libXext
+- Update PLIST
+- Add workaround for NetBSD (Backtrace Information Library)
+- Declare NetBSD 7 as minimum required version
+- Add workaround for image libraries that cmake doesn't link
+
+===============
+
+CSOUND VERSION 6.13 RELEASE NOTES
+
+Not many new opcodes but there are a significant number of opcodes being
+extended to use arrays in a variety of ways, widening the options for users.
+There have been many fixes to the core code as well as opcodes.
+                                                      -- The Developers
+
+USER-LEVEL CHANGES
+
+New opcodes
+
+    string2array is a variant of fillarray with the data coming from a
+    string of space separated values.
+
+    nstrstr returns the name string of an instrument number or an empty
+    string if the number does not refer to a named instrument.
+
+    ntof converts notename to frequency at i- and k-time.
+
+    ampmidicurve is a new opcode that maps an input MIDI velocity number to an
+    output gain factor with a maximum value of 1, modifying the output gain by a
+    dynamic range and a shaping exponent.
+
+New Gen and Macros
+
+Orchestra
+
+    The consistency of kr, sr and ksmps reworked especially when there is
+    overriding.
+
+    corrected default 0bdfs usage.
+
+    Resolving the path for #include files reworked to be more liberal.
+
+    reading and writing to multidimensional arrays was very wrong. 
+    This is now correct.
+
+    Better checking for unknown array types (issue #1124)
+
+    In all array operations the size of an array is determined at init time and
+    no allocation happens at perf time.
+
+    array arithmetic now respects --sample-accurate.
+
+Score
+
+    The characters n and m could erroneously get ignored in scores.
+
+    Resolving the path for #include files reworked to be more liberal.
+
+    After an error the backtrace of files and macros incorrectly read the
+    information for orchestra rather than scores; fixed.
+
+    The end of an r (repeated) section was not always correct.
+
+    Nested {} parts of a score could lead to errors.
+
+    After an s statement a newline was required; no longer needed.
+
+    The {} score loops have been reworked to allow macros and expressions in
+    the loop count.
+
+Options
+
+    The new option --use-system-sr set the sample rate to the hardware/system
+    value.
+
+Modified Opcodes and Gens
+
+    Sending failure in OSC is now a warning rather than an error.
+
+    passign can now have an array as the target.
+
+    version of bpf/bpfcos added to allow points defined via arrays.
+
+    grain can now use tables of any size, which was only a power of 2.
+
+    Changing colours in FL widgets now works (it previously did not redraw the
+    colour).
+
+    fillarray can read from a file of values overcoming the argument limit.
+
+    sumarray now works for audio arrays as well as for scalar values.
+
+    assignment of an audio value to an audio array now works.
+
+    monitor was broken in the array form.
+
+    gendyc now respects sample-accurate mode.
+
+    mtof and ftom now have array versions.
+
+    sc_lag and sc_lagud now use the first k- or a-rate input when no initial
+    value is given.
+
+    printarray now works for string arrays.
+
+    changed2 now works for strings.
+
+    diskgrain, syncgrain and syncloop now can do sample rate scaling.
+
+    GEN01 correctly reads raw audio files when requested.
+
+    ftaudio can now take two additional optional argument`s for the start and
+    end of the table data being written to file.
+
+    sensekey recoded in the 'key down' mode.
+
+    loscilx can return an audio array.
+
+    schedule opcode reports undefined instruments in all cases.
+
+    event_i now accepts tagged instrument numbers.
+
+    printarray treats %d correctly.
+
+    beadsynt now works with i arrays as well as k arrays as in the manual.
+
+Utilities
+
+    hetro had a number of fixes and improvements.
+
+Frontends
+
+    Belacsound:
+
+    CsoundQt:
+
+General Usage
+
+    There have been a number of improvements in the semantics for multicore;
+    most of these are corrections with a few efficiency gains.
+
+    There is a maximum number of arguments for an opcode which was neither
+    explicit nor policed. Attempts to use too many arguments now gives a syntax
+    error.
+
+Bugs Fixed
+
+    FLgetsnap fixed.
+
+    directory fixed regarding file extensions.
+
+    FLsetText reused a string incorrectly which led to incorrect values.
+
+    fmb3 failed to initialise the lfo rate in some cases.
+
+    ftaudio at i-rate was totally broken.
+
+    following a reinit printks could be skipped; fixed
+
+    printks fixed so it prints at correct times.
+
+    tabrowlin and getrowlin would calculate wrong size under certain conditions.
+
+SYSTEM LEVEL CHANGES
+
+    Hash Table implementation modified to expand on load for better performance
+    when map contains large number of entries
+
+System Changes
+
+    plugin GEN functions can have a zero length, but the code must check for
+    this and act accordingly. This allows for deferred allocations.
+
+    schedule reports undefined instr numbers/names and continues, rather than
+    causing an error.
+
+    allow multiple calls to midi out controls.
+
+Translations
+API
+
+    find_opcode_new and find_opcode_exact now exposed in API.
+
+    After a reset a default message string callback handle is configured.
+
+    New function csoundSystemSr added to the API to read hardware-imposed sample
+    rate.
+
+Platform Specific
+
+    WebAudio: libsndfile now compiled with FLAC and OGG support.
+
+    iOS
+
+    Android
+
+    Windows
+
+    In both orchestra and score the path tracking of #include expects a \ separator.
+
+    MacOS
+
+    GNU/Linux
+
+    Haiku port now available.
+
+    Bela
+
+    allow analog in and out with different channel numbers.
diff --git a/csound6/DESCR b/csound6/DESCR
new file mode 100644
index 0000000000..909beaee38
--- /dev/null
+++ b/csound6/DESCR
@@ -0,0 +1,8 @@
+Csound is a software synthesis package in the tradition of so-called
+music-N languages, among which the best-known is Music V.  It consists
+of an orchestra- and score-driven executable, written in C for
+portability.  Since Csound is a computational language, it is highly
+flexible and efficient; complexity is gained only at the expense of
+computation time.  Basically Csound reads some files and creates the
+result as a file on disk or, on faster machines, through a DAC in real
+time.
diff --git a/csound6/Makefile b/csound6/Makefile
new file mode 100644
index 0000000000..07019887c0
--- /dev/null
+++ b/csound6/Makefile
@@ -0,0 +1,80 @@
+# $NetBSD$
+
+CSOUND_VERSION=		6.13.0
+DISTNAME=		${CSOUND_VERSION}
+PKGNAME=		csound6-${CSOUND_VERSION}
+CATEGORIES=		audio
+MASTER_SITES=		${MASTER_SITE_GITHUB:=csound/}
+GITHUB_PROJECT=		csound
+GITHUB_TAG=		${PKGVERSION_NOREV}
+DIST_SUBDIR=		${PKGNAME_NOREV}
+EXTRACT_USING=		bsdtar
+
+MAINTAINER=		pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=		https://csound.com/
+COMMENT=		Software synthesizer and sequencer
+LICENSE=		gnu-lgpl-v2.1  # or later
+
+.include "../../mk/bsd.prefs.mk"
+
+# There are multiple code paths for different versions (try to omit old ones)
+USE_LANGUAGES=		c99 c++11
+USE_TOOLS+=		flex bison
+CFLAGS+=		-g -D__PKGSRC_PREFIX__=\"${PREFIX}/\" -DBETA
+USE_CMAKE=		yes
+CMAKE_ARGS+=		-DUSE_PULSEAUDIO:BOOL=ON
+CMAKE_ARGS+=		-DBUILD_RELEASE=1 -DCMAKE_BUILD_TYPE=Release
+
+# -----------------------------------------------------------------------------
+# This section contains more or less ugly workarounds for build problems
+# If somebody can fix these problems correctly, please do!
+
+# CMAKE_INSTALL_RPATH doesn't work for some reason, so do it here
+LDFLAGS+=		${COMPILER_RPATH_FLAG}${PREFIX}/lib/csound6
+# Workaround for missing image libraries (cmake don't link them otherwise)
+LDFLAGS+=		-ljpeg -lpng
+# Link Backtrace Information Library on NetBSD (to fix unresolved symbols)
+.if ${OPSYS} == "NetBSD"
+LDFLAGS+=		-lexecinfo
+.endif
+# Backtrace Information Library was introduced with NetBSD 7
+NOT_FOR_PLATFORM=	NetBSD-[0-6].*-*
+
+# In theory 3.x should be supported, but there are undefined symbols with 3.7
+PYTHON_VERSIONS_ACCEPTED=	27
+
+# Some scripts use non-POSIX syntax and /bin/sh as interpreter
+CHECK_PORTABILITY_SKIP+=	installer/misc/makedeb.sh \
+				installer/macosx/beta-build.sh \
+				installer/macosx/release-build-10.8.sh \
+				installer/macosx/release-build-10.10.sh \
+				installer/macosx/release-build.sh \
+				frontends/max_csound_tilde/installer/build-installer.sh \
+				frontends/max_csound_tilde/installer/build-installer-windows.sh
+# -----------------------------------------------------------------------------
+
+WRKSRC=			${WRKDIR}/csound-${CSOUND_VERSION}
+INSTALLATION_DIRS=	bin
+
+post-install:
+	cd ${DESTDIR}${PREFIX} && ${LN} -s ../lib/csound6/csound bin/csound6
+
+.include "../../audio/fluidsynth/buildlink3.mk"
+.include "../../audio/libsamplerate/buildlink3.mk"
+.include "../../audio/libsndfile/buildlink3.mk"
+.include "../../audio/pulseaudio/buildlink3.mk"
+.include "../../devel/boost-libs/buildlink3.mk"
+.include "../../graphics/png/buildlink3.mk"
+PYTHON_FOR_BUILD_ONLY=	yes
+.include "../../lang/python/application.mk"
+.include "../../mk/jpeg.buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../x11/libICE/buildlink3.mk"
+.include "../../x11/libSM/buildlink3.mk"
+.include "../../x11/libXext/buildlink3.mk"
+# FLTK version 1.4 is supported too
+#.include "../../x11/fltk13/buildlink3.mk"
+.include "../../wip/fltk14-devel/buildlink3.mk"
+.include "../../www/curl/buildlink3.mk"
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/csound6/PLIST b/csound6/PLIST
new file mode 100644
index 0000000000..42c368d790
--- /dev/null
+++ b/csound6/PLIST
@@ -0,0 +1,115 @@
+@comment $NetBSD: PLIST,v 1.4 2014/08/19 13:47:06 joerg Exp $
+bin/csound6
+include/csound6/CppSound.hpp
+include/csound6/CsoundFile.hpp
+include/csound6/OpcodeBase.hpp
+include/csound6/arrays.h
+include/csound6/cfgvar.h
+include/csound6/csPerfThread.hpp
+include/csound6/cs_par_structs.h
+include/csound6/cscore.h
+include/csound6/csdebug.h
+include/csound6/csdl.h
+include/csound6/csound.h
+include/csound6/csound.hpp
+include/csound6/csoundCore.h
+include/csound6/csound_data_structures.h
+include/csound6/csound_standard_types.h
+include/csound6/csound_threaded.hpp
+include/csound6/csound_type_system.h
+include/csound6/cwindow.h
+include/csound6/filebuilding.h
+include/csound6/find_opcode.h
+include/csound6/float-version.h
+include/csound6/interlocks.h
+include/csound6/modload.h
+include/csound6/msg_attr.h
+include/csound6/plugin.h
+include/csound6/pools.h
+include/csound6/pstream.h
+include/csound6/pvfileio.h
+include/csound6/soundio.h
+include/csound6/sysdep.h
+include/csound6/text.h
+include/csound6/version.h
+lib/csound6/atsa
+lib/csound6/cs
+lib/csound6/csanalyze
+lib/csound6/csb64enc
+lib/csound6/csbeats
+lib/csound6/csdebugger
+lib/csound6/csound
+lib/csound6/cvanal
+lib/csound6/dnoise
+lib/csound6/envext
+lib/csound6/extract
+lib/csound6/extractor
+lib/csound6/het_export
+lib/csound6/het_import
+lib/csound6/hetro
+lib/csound6/libcsnd6.so
+lib/csound6/libcsnd6.so.6.0
+lib/csound6/libcsound64.so
+lib/csound6/libcsound64.so.6.0
+lib/csound6/lpanal
+lib/csound6/lpc_export
+lib/csound6/lpc_import
+lib/csound6/makecsd
+lib/csound6/mixer
+lib/csound6/plugins-6.0/libampmidid.so
+lib/csound6/plugins-6.0/libarrayops.so
+lib/csound6/plugins-6.0/libbeosc.so
+lib/csound6/plugins-6.0/libbuchla.so
+lib/csound6/plugins-6.0/libcellular.so
+lib/csound6/plugins-6.0/libcontrol.so
+lib/csound6/plugins-6.0/libcs_date.so
+lib/csound6/plugins-6.0/libdoppler.so
+lib/csound6/plugins-6.0/libemugens.so
+lib/csound6/plugins-6.0/libexciter.so
+lib/csound6/plugins-6.0/libfareygen.so
+lib/csound6/plugins-6.0/libfluidOpcodes.so
+lib/csound6/plugins-6.0/libfractalnoise.so
+lib/csound6/plugins-6.0/libframebuffer.so
+lib/csound6/plugins-6.0/libftsamplebank.so
+lib/csound6/plugins-6.0/libgetftargs.so
+lib/csound6/plugins-6.0/libgtf.so
+lib/csound6/plugins-6.0/libimage.so
+lib/csound6/plugins-6.0/libipmidi.so
+lib/csound6/plugins-6.0/libliveconv.so
+lib/csound6/plugins-6.0/libmixer.so
+lib/csound6/plugins-6.0/libpadsynth.so
+lib/csound6/plugins-6.0/libplaterev.so
+lib/csound6/plugins-6.0/libpvsops.so
+lib/csound6/plugins-6.0/libpy.so
+lib/csound6/plugins-6.0/libquadbezier.so
+lib/csound6/plugins-6.0/librtpulse.so
+lib/csound6/plugins-6.0/libscansyn.so
+lib/csound6/plugins-6.0/libscugens.so
+lib/csound6/plugins-6.0/libselect.so
+lib/csound6/plugins-6.0/libserial.so
+lib/csound6/plugins-6.0/libsignalflowgraph.so
+lib/csound6/plugins-6.0/libstackops.so
+lib/csound6/plugins-6.0/libstdutil.so
+lib/csound6/plugins-6.0/libsystem_call.so
+lib/csound6/plugins-6.0/liburandom.so
+lib/csound6/plugins-6.0/libvirtual.so
+lib/csound6/plugins-6.0/libwidgets.so
+lib/csound6/pv_export
+lib/csound6/pv_import
+lib/csound6/pvanal
+lib/csound6/pvlook
+lib/csound6/scale
+lib/csound6/scot
+lib/csound6/scsort
+lib/csound6/sdif2ad
+lib/csound6/sndinfo
+lib/csound6/src_conv
+lib/csound6/srconv
+share/cmake/Csound/FindCsound.cmake
+share/locale/de/LC_MESSAGES/csound6.mo
+share/locale/en_US/LC_MESSAGES/csound6.mo
+share/locale/es/LC_MESSAGES/csound6.mo
+share/locale/es_CO/LC_MESSAGES/csound6.mo
+share/locale/fr/LC_MESSAGES/csound6.mo
+share/locale/it/LC_MESSAGES/csound6.mo
+share/locale/ru/LC_MESSAGES/csound6.mo
diff --git a/csound6/distinfo b/csound6/distinfo
new file mode 100644
index 0000000000..cdc2a92302
--- /dev/null
+++ b/csound6/distinfo
@@ -0,0 +1,21 @@
+$NetBSD$
+
+SHA1 (csound6-6.13.0/6.13.0.tar.gz) = 1775f3bdd273364995ba52a79c32795928cb3ec2
+RMD160 (csound6-6.13.0/6.13.0.tar.gz) = 780b93bb5547e5a3807affabfe1c9f0315d5fec3
+SHA512 (csound6-6.13.0/6.13.0.tar.gz) = 51a30cb426fc77ac648f6a9fb669b9298e6608b39ae3b12181d16ecf1fb6f2ed3db31471615a60d2ce7906b91fdb911b38c8dfa3f93699768f490f87a2bcbbbd
+Size (csound6-6.13.0/6.13.0.tar.gz) = 26328673 bytes
+SHA1 (patch-CMakeLists.txt) = 5b54e7af8010c421aa88f9e22558cffb05daffef
+SHA1 (patch-Engine_entry1.c) = cb0966ece67bcf40ac7333df7ebaacb7373be181
+SHA1 (patch-Engine_linevent.c) = cafd89379104c4c59fa676d041880d7367853425
+SHA1 (patch-Frontends_csound_csound__main.c) = 6a0cea4c5fdb2531b54c84c01f1c621afb93a67e
+SHA1 (patch-InOut_libsnd.c) = e3e748d71d34f116def18a63b3313dcf05770252
+SHA1 (patch-InOut_widgets.cpp) = b4673f5c53b898c2ff59fef86aee53f335c1729a
+SHA1 (patch-InOut_winEPS.c) = e5890f26a31788f439125f7e673e4dd56dcf087b
+SHA1 (patch-InOut_winFLTK.c) = b76ce0d3d6607ad7100a742d5d027f4af780544b
+SHA1 (patch-Opcodes_cpumeter.c) = 83967227c944bf5a5c47e1963a8c1192b8c0f618
+SHA1 (patch-Opcodes_wavegde.h) = ed6dd71799c209c196951b423e2e8e821594fc5b
+SHA1 (patch-Top_csmodule.c) = 8d5098fa438d208d1cc936c9598a5682ab438906
+SHA1 (patch-Top_csound.c) = d6498e7391eb28be8fafaaccb0ec6b80c48b9a58
+SHA1 (patch-Top_one_file.c) = 7464dd227f1c22d2e9470fc4f0e55933186dafb6
+SHA1 (patch-Top_threads.c) = d42fa2c4473a1b64c705f42df42f9e38b8b4eaea
+SHA1 (patch-include_interlocks.h) = 927e11ac8622ece8e55d0d7faa3042b5652177d5
diff --git a/csound6/patches/patch-CMakeLists.txt b/csound6/patches/patch-CMakeLists.txt
new file mode 100644
index 0000000000..8ba9b5d090
--- /dev/null
+++ b/csound6/patches/patch-CMakeLists.txt
@@ -0,0 +1,77 @@
+$NetBSD: patch-CMakeLists.txt,v 1.2 2014/08/05 05:12:38 mrg Exp $
+
+Install csound in lib/csound6 to avoid conflicts with csound5.
+Add NetBSD support.
+
+--- CMakeLists.txt.orig	2019-07-12 21:54:19.000000000 +0000
++++ CMakeLists.txt
+@@ -20,10 +20,10 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} 
+ set(APIVERSION "6.0")
+ 
+ # Relative install paths
+-set(EXECUTABLE_INSTALL_DIR "bin")
++set(EXECUTABLE_INSTALL_DIR "lib/csound6")
+ 
+ set(LOCALE_INSTALL_DIR "share/locale")
+-set(HEADER_INSTALL_DIR "include/csound")
++set(HEADER_INSTALL_DIR "include/csound6")
+ 
+ set(CS_FRAMEWORK_DEST "~/Library/Frameworks" CACHE PATH "Csound framework path")
+ include(TestBigEndian)
+@@ -36,7 +36,7 @@ include(CheckCCompilerFlag)
+ include(CheckCXXCompilerFlag)
+ include(CMakePushCheckState)
+ 
+-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
++set (CMAKE_MODULE_PATH "/usr/pkgsrc/work/wip/csound6/work/.buildlink/cmake-Modules" ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
+ 
+ # Utility to munge with items in a list.
+ #
+@@ -188,19 +188,19 @@ endif()
+ 
+ option(USE_LIB64 "Set to on to set installation directory for libraries to lib64" OFF)
+ if(USE_LIB64)
+-    set(LIBRARY_INSTALL_DIR "lib64")
++    set(LIBRARY_INSTALL_DIR "lib64/csound6")
+     add_definitions("-DLIB64")
+ else()
+-    set(LIBRARY_INSTALL_DIR "lib")
++    set(LIBRARY_INSTALL_DIR "lib/csound6")
+ endif()
+ message(STATUS "LIBRARY INSTALL DIR: ${LIBRARY_INSTALL_DIR}")
+ 
+ if(USE_DOUBLE)
+    message(STATUS "Building with 64-bit floats")
+-    set(PLUGIN_INSTALL_DIR "${LIBRARY_INSTALL_DIR}/csound/plugins64-${APIVERSION}")
++    set(PLUGIN_INSTALL_DIR "${LIBRARY_INSTALL_DIR}/plugins-${APIVERSION}")
+ else()
+   message(STATUS "Building with 32-bit floats")
+-    set(PLUGIN_INSTALL_DIR "${LIBRARY_INSTALL_DIR}/csound/plugins-${APIVERSION}")
++    set(PLUGIN_INSTALL_DIR "${LIBRARY_INSTALL_DIR}/plugins-${APIVERSION}")
+ endif()
+ 
+ execute_process (
+@@ -387,6 +387,12 @@ else()
+     set(LINUX NO)
+ endif()
+ 
++if(CMAKE_SYSTEM_NAME MATCHES "NetBSD")
++    set(NETBSD YES)
++else()
++    set(NETBSD NO)
++endif()
++
+ set(BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR})
+ 
+ check_c_compiler_flag(-fvisibility=hidden HAS_VISIBILITY_HIDDEN)
+@@ -466,6 +472,10 @@ if(APPLE)
+ 
+ endif()
+ 
++if(NETBSD)
++    add_definitions("-DCS_DEFAULT_PLUGINDIR=\"${CMAKE_INSTALL_PREFIX}/${PLUGIN_INSTALL_DIR}\"")
++endif()
++
+ if(BUILD_RELEASE)
+     add_definitions("-D_CSOUND_RELEASE_")
+     if(LINUX)
diff --git a/csound6/patches/patch-Engine_entry1.c b/csound6/patches/patch-Engine_entry1.c
new file mode 100644
index 0000000000..7d6e930f02
--- /dev/null
+++ b/csound6/patches/patch-Engine_entry1.c
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Reason unknown (patch ported from version 6.03.2).
+
+--- Engine/entry1.c.orig	2019-07-12 21:54:19.000000000 +0000
++++ Engine/entry1.c
+@@ -1086,7 +1086,7 @@ OENTRY opcodlst_1[] = {
+     (SUBR) chnset_opcode_init_S, (SUBR) chnset_opcode_perf_S, NULL },
+   { "chnsetks",    S(CHNGET),_CW,           2,      "",             "SS",
+     NULL, (SUBR) chnset_opcode_perf_S, NULL },
+-  { "chnmix",      S(CHNGET),           _CB, 3,      "",             "aS",
++  { "chnmix",      S(CHNGET),           CSOUND_CB, 5,      "",             "aS",
+     (SUBR) chnmix_opcode_init, (SUBR) notinit_opcode_stub  },
+   { "chnclear",    S(CHNCLEAR),        _CW, 3,      "",             "W",
+     (SUBR) chnclear_opcode_init, (SUBR) notinit_opcode_stub },
diff --git a/csound6/patches/patch-Engine_linevent.c b/csound6/patches/patch-Engine_linevent.c
new file mode 100644
index 0000000000..35c9a00291
--- /dev/null
+++ b/csound6/patches/patch-Engine_linevent.c
@@ -0,0 +1,15 @@
+$NetBSD: patch-Engine_linevent.c,v 1.2 2014/08/05 05:12:38 mrg Exp $
+
+Add NetBSD and DragonFlyBSD support.
+
+--- Engine/linevent.c.orig	2019-07-12 21:54:19.000000000 +0000
++++ Engine/linevent.c
+@@ -31,7 +31,7 @@
+ #include "linevent.h"
+ 
+ #ifdef PIPES
+-# if defined(SGI) || defined(LINUX) || defined(NeXT) || defined(__MACH__)
++# if defined(SGI) || defined(LINUX) || defined(NeXT) || defined(__MACH__) || defined(__NetBSD__) || defined(__DragonFly__)
+ #  define _popen popen
+ #  define _pclose pclose
+ # elif defined(__BEOS__) ||  defined(__HAIKU__) || defined(__MACH__)
diff --git a/csound6/patches/patch-Frontends_csound_csound__main.c b/csound6/patches/patch-Frontends_csound_csound__main.c
new file mode 100644
index 0000000000..e1ebc4d215
--- /dev/null
+++ b/csound6/patches/patch-Frontends_csound_csound__main.c
@@ -0,0 +1,25 @@
+$NetBSD$
+
+Add NetBSD and DragonFlyBSD support.
+
+--- Frontends/csound/csound_main.c.orig	2019-07-12 21:54:19.000000000 +0000
++++ Frontends/csound/csound_main.c
+@@ -73,7 +73,8 @@ static void nomsg_callback(CSOUND *csoun
+ 
+ #if defined(ANDROID) || (!defined(LINUX) && !defined(SGI) && \
+                          !defined(__HAIKU__) && !defined(__BEOS__) && \
+-                         !defined(__MACH__) && !defined(__EMSCRIPTEN__))
++                         !defined(__MACH__) && !defined(__EMSCRIPTEN__) \
++                         && !defined(__NetBSD__) && !defined(__DragonFly__))
+ static char *signal_to_string(int sig)
+ {
+     switch(sig) {
+@@ -235,7 +236,7 @@ static void signal_handler(int sig)
+ }
+ 
+ static const int sigs[] = {
+-#if defined(LINUX) || defined(SGI) || defined(sol) || defined(__MACH__)
++#if defined(LINUX) || defined(SGI) || defined(sol) || defined(__MACH__) || defined(__NetBSD__) || defined(__DragonFly__)
+   SIGHUP, SIGINT, SIGQUIT, SIGILL, SIGTRAP, SIGABRT, SIGIOT, SIGBUS,
+   SIGFPE, SIGSEGV, SIGPIPE, SIGTERM, SIGXCPU, SIGXFSZ,
+ #elif defined(WIN32)
diff --git a/csound6/patches/patch-InOut_libsnd.c b/csound6/patches/patch-InOut_libsnd.c
new file mode 100644
index 0000000000..dfdab7b3a2
--- /dev/null
+++ b/csound6/patches/patch-InOut_libsnd.c
@@ -0,0 +1,14 @@
+$NetBSD$
+
+Add NetBSD and DragonFlyBSD support.
+
+--- InOut/libsnd.c.orig	2014-01-07 08:53:47.000000000 -0800
++++ InOut/libsnd.c	2014-02-12 23:47:56.000000000 -0800
+@@ -34,6 +34,7 @@
+ #ifdef PIPES
+ # if defined(SGI) || defined(LINUX) || defined(__BEOS__) || defined(NeXT) ||  \
+      defined(__MACH__)
++     defined(__MACH__) || defined(__NetBSD__) || defined(__DragonFly__)
+ #  define _popen popen
+ #  define _pclose pclose
+ # endif
diff --git a/csound6/patches/patch-InOut_widgets.cpp b/csound6/patches/patch-InOut_widgets.cpp
new file mode 100644
index 0000000000..34cce46b54
--- /dev/null
+++ b/csound6/patches/patch-InOut_widgets.cpp
@@ -0,0 +1,34 @@
+$NetBSD: patch-InOut_widgets.cpp,v 1.2 2014/08/05 05:12:38 mrg Exp $
+
+Add NetBSD and DragonFlyBSD support.
+
+--- InOut/widgets.cpp.orig	2019-07-12 21:54:19.000000000 +0000
++++ InOut/widgets.cpp
+@@ -2101,7 +2101,7 @@ extern "C" {
+         (WIDGET_GLOBALS *)csound->QueryGlobalVariable(csound, "WIDGET_GLOBALS");
+       p = (widgetsGlobals_t*) csound->QueryGlobalVariable(csound,
+                                                           "_widgets_globals");
+-#ifdef LINUX
++#if defined(LINUX) || defined(__NetBSD__) || defined(__DragonFly__)
+       {
+         struct sched_param  sp;
+         // IV - Aug 27 2002: widget thread is always run with normal priority
+@@ -2121,7 +2121,7 @@ extern "C" {
+ // #ifdef WIN32
+ //         HWND xid = fl_xid(widgetGlobals->fl_windows[panelNum].panel);
+ //         widgetGlobals->VSTplugEditors[k]->SetEditWindow(xid);
+-// #elif defined (LINUX) || defined(MACOSX)
++// #elif defined (LINUX) || defined(MACOSX) || defined(__NetBSD__) || defined(__DragonFly__)
+ //         // put some appropriate alternative code here
+ //         Fl_Window * xid =
+ //           fl_find(fl_xid(widgetGlobals->fl_windows[panelNum].panel));
+@@ -2258,8 +2258,7 @@ static void fl_callbackExecButton(Fl_But
+     CSOUND *csound = p->csound;
+     char *command = (char *)csound->Malloc(csound, strlen(p->commandString) + 1);
+ 
+-#if defined(LINUX) || defined (MACOSX)
+-
++#if defined(LINUX) || defined (MACOSX) || defined(__NetBSD__) || defined(__DragonFly__)
+ 
+     pid_t pId = vfork();
+     if (pId == 0) {
diff --git a/csound6/patches/patch-InOut_winEPS.c b/csound6/patches/patch-InOut_winEPS.c
new file mode 100644
index 0000000000..44bd0afb6a
--- /dev/null
+++ b/csound6/patches/patch-InOut_winEPS.c
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Add NetBSD and DragonFlyBSD support.
+
+--- InOut/winEPS.c.orig	2005-12-29 05:49:04.000000000 -0800
++++ InOut/winEPS.c
+@@ -144,7 +144,7 @@ void PS_MakeGraph(CSOUND *csound, WINDAT
+      *  Get the current time and date
+      */
+     lt = time(NULL);
+-#ifndef LINUX
++#if !defined(LINUX) && !defined(__NetBSD__) && !defined(__DragonFly__)
+     {
+       struct tm *date_ptr;
+       char      *date;
diff --git a/csound6/patches/patch-InOut_winFLTK.c b/csound6/patches/patch-InOut_winFLTK.c
new file mode 100644
index 0000000000..631c8029d5
--- /dev/null
+++ b/csound6/patches/patch-InOut_winFLTK.c
@@ -0,0 +1,33 @@
+$NetBSD$
+
+Add NetBSD and DragonFlyBSD support.
+
+--- InOut/winFLTK.c.orig	2019-07-12 21:54:19.000000000 +0000
++++ InOut/winFLTK.c
+@@ -29,7 +29,7 @@
+ #include <stdio.h>
+ #include "cwindow.h"
+ 
+-#ifdef LINUX
++#if defined(LINUX) || defined(__NetBSD__) || defined(__DragonFly__)
+ #include <X11/Xlib.h>
+ #endif
+ 
+@@ -83,7 +83,7 @@ PUBLIC int csoundModuleInit(CSOUND *csou
+     fltkFlags = getFLTKFlagsPtr(csound);
+     if (((*fltkFlags) & 2) == 0 &&
+         !(oparms.graphsoff || oparms.postscript)) {
+-#ifdef LINUX
++#if defined(LINUX) || defined(__NetBSD__) || defined(__DragonFly__)
+       Display *dpy = XOpenDisplay(NULL);
+       if (dpy != NULL) {
+         XCloseDisplay(dpy);
+@@ -104,7 +104,7 @@ PUBLIC int csoundModuleInit(CSOUND *csou
+           csound->Message(csound, "graph init...\n");
+ 
+         }
+-#ifdef LINUX
++#if defined(LINUX) || defined(__NetBSD__) || defined(__DragonFly__)
+       }
+ #endif
+     }
diff --git a/csound6/patches/patch-Opcodes_cpumeter.c b/csound6/patches/patch-Opcodes_cpumeter.c
new file mode 100644
index 0000000000..fbfa074ea5
--- /dev/null
+++ b/csound6/patches/patch-Opcodes_cpumeter.c
@@ -0,0 +1,15 @@
+$NetBSD$
+
+Add NetBSD and DragonFlyBSD support.
+
+--- Opcodes/cpumeter.c.orig	2019-07-12 21:54:19.000000000 +0000
++++ Opcodes/cpumeter.c
+@@ -36,7 +36,7 @@
+ #include <float.h>
+ 
+ // only available on Linux (no /proc/stat on OSX)
+-#if defined(LINUX)
++#if defined(LINUX) || defined(__NetBSD__) || defined(__DragonFly__)
+ /*######  Miscellaneous global stuff  ####################################*/
+ #define SMLBUFSIZ (512)
+ #define TEST (0)
diff --git a/csound6/patches/patch-Opcodes_wavegde.h b/csound6/patches/patch-Opcodes_wavegde.h
new file mode 100644
index 0000000000..ef36a0e4ff
--- /dev/null
+++ b/csound6/patches/patch-Opcodes_wavegde.h
@@ -0,0 +1,16 @@
+$NetBSD$
+
+Use native len_t on SunOS.
+
+--- Opcodes/wavegde.h.orig	2019-07-12 21:54:19.000000000 +0000
++++ Opcodes/wavegde.h
+@@ -43,7 +43,9 @@
+ #endif
+ 
+ /* TYPEDEFS */
++#ifndef __sun
+ typedef int64_t    len_t;    /* length type */
++#endif
+ 
+ /* CLASS DEFINITIONS */
+ 
diff --git a/csound6/patches/patch-Top_csmodule.c b/csound6/patches/patch-Top_csmodule.c
new file mode 100644
index 0000000000..26c67c438f
--- /dev/null
+++ b/csound6/patches/patch-Top_csmodule.c
@@ -0,0 +1,55 @@
+$NetBSD$
+
+Fix the installation path for csound6 plugins.
+Add NetBSD and DragonFlyBSD support.
+
+--- Top/csmodule.c.orig	2019-07-12 21:54:19.000000000 +0000
++++ Top/csmodule.c
+@@ -89,7 +89,7 @@
+ #endif
+ 
+ #if !(defined (NACL))
+-#if defined(LINUX) || defined(NEW_MACH_CODE) || defined(__HAIKU__)
++#if defined(LINUX) || defined(NEW_MACH_CODE) || defined(__HAIKU__) || defined(__NetBSD__) || defined(__DragonFly__)
+ #include <dlfcn.h>
+ #elif defined(WIN32)
+ #include <windows.h>
+@@ -149,7 +149,7 @@ static  const   char    *plugindir64_env
+         "/boot/home/config/non-packaged/lib/csound6/plugins64";
+ # endif
+ # define CS_DEFAULT_PLUGINDIR  haikudirs
+-#elif !(defined(_CSOUND_RELEASE_) && (defined(LINUX) || defined(__MACH__)))
++#elif !(defined(_CSOUND_RELEASE_) && (defined(LINUX) || defined(__MACH__) || defined(__NetBSD__) || defined(__DragonFly__)))
+ #  define ENABLE_OPCODEDIR_WARNINGS 1
+ #  ifdef CS_DEFAULT_PLUGINDIR
+ #    undef CS_DEFAULT_PLUGINDIR
+@@ -159,9 +159,9 @@ static  const   char    *plugindir64_env
+ #  define ENABLE_OPCODEDIR_WARNINGS 0
+ #  ifndef CS_DEFAULT_PLUGINDIR
+ #    ifndef USE_DOUBLE
+-#      define CS_DEFAULT_PLUGINDIR  "/usr/local/lib/csound/plugins"
++#      define CS_DEFAULT_PLUGINDIR  __PKGSRC_PREFIX__ "lib/csound6/plugins-6.0"
+ #    else
+-#      define CS_DEFAULT_PLUGINDIR  "/usr/local/lib/csound/plugins64"
++#      define CS_DEFAULT_PLUGINDIR  __PKGSRC_PREFIX__ "lib/csound6/plugins-6.0"
+ #    endif
+ #  endif
+ #endif
+@@ -264,7 +264,7 @@ static CS_NOINLINE int csoundLoadExterna
+     err = csoundOpenLibrary(&h, libraryPath);
+     if (UNLIKELY(err)) {
+       char ERRSTR[256];
+- #if !(defined(NACL)) && (defined(LINUX) || defined(__HAIKU__))
++ #if !(defined(NACL)) && (defined(LINUX) || defined(__HAIKU__) || defined(__NetBSD__) || defined(__DragonFly__))
+       snprintf(ERRSTR, 256, Str("could not open library '%s' (%s)"),
+                libraryPath, dlerror());
+  #else
+@@ -751,7 +751,7 @@ PUBLIC void *csoundGetLibrarySymbol(void
+     return (void*) GetProcAddress((HMODULE) library, procedureName);
+ }
+ 
+-#elif !(defined(NACL)) && (defined(LINUX) || defined(NEW_MACH_CODE) || defined(__HAIKU__))
++#elif !(defined(NACL)) && (defined(LINUX) || defined(NEW_MACH_CODE) || defined(__HAIKU__) || defined(__NetBSD__) || defined(__DragonFly__))
+ 
+ PUBLIC int csoundOpenLibrary(void **library, const char *libraryPath)
+ {
diff --git a/csound6/patches/patch-Top_csound.c b/csound6/patches/patch-Top_csound.c
new file mode 100644
index 0000000000..9bb88e9db1
--- /dev/null
+++ b/csound6/patches/patch-Top_csound.c
@@ -0,0 +1,26 @@
+$NetBSD$
+
+Add NetBSD and DragonFlyBSD support.
+
+--- Top/csound.c.orig	2019-07-12 21:54:19.000000000 +0000
++++ Top/csound.c
+@@ -1027,7 +1027,9 @@ static void destroy_all_instances(void)
+ 
+ #if defined(ANDROID) || (!defined(LINUX) && !defined(SGI) && \
+                          !defined(__HAIKU__) && !defined(__BEOS__) && \
+-                         !defined(__MACH__) && !defined(__EMSCRIPTEN__))
++                         !defined(__MACH__) && !defined(__EMSCRIPTEN__) && \
++                         !defined(__NetBSD__) && !defined(__DragonFly__))
++)
+ 
+ static char *signal_to_string(int sig)
+ {
+@@ -1226,7 +1228,7 @@ static void signal_handler(int sig)
+ }
+ 
+ static const int sigs[] = {
+-#if defined(LINUX) || defined(SGI) || defined(sol) || defined(__MACH__)
++#if defined(LINUX) || defined(SGI) || defined(sol) || defined(__MACH__) || defined(__NetBSD__) || defined(__DragonFly__)
+   SIGHUP, SIGINT, SIGQUIT, SIGILL, SIGTRAP, SIGABRT, SIGIOT, SIGBUS,
+   SIGFPE, SIGSEGV, SIGPIPE, SIGTERM, SIGXCPU, SIGXFSZ,
+ #elif defined(WIN32)
diff --git a/csound6/patches/patch-Top_one_file.c b/csound6/patches/patch-Top_one_file.c
new file mode 100644
index 0000000000..4ed09240ca
--- /dev/null
+++ b/csound6/patches/patch-Top_one_file.c
@@ -0,0 +1,24 @@
+$NetBSD$
+
+Add NetBSD and DragonFlyBSD support.
+
+--- Top/one_file.c.orig	2014-05-04 04:49:41.000000000 -0700
++++ Top/one_file.c	2014-08-04 22:21:26.000000000 -0700
+@@ -29,7 +29,7 @@
+ #include <stdlib.h>
+ #include "corfile.h"
+ 
+-#if defined(LINUX) || defined(__MACH__) || defined(WIN32)
++#if defined(LINUX) || defined(__MACH__) || defined(WIN32) || defined(__NetBSD__) || defined(__DragonFly__)
+ #  include <sys/types.h>
+ #  include <sys/stat.h>
+ #endif
+@@ -96,7 +96,7 @@
+       }
+ #endif
+       if (ext != NULL && ext[0] != (char) 0) {
+-#if !defined(LINUX) && !defined(__MACH__) && !defined(WIN32)
++#if !defined(LINUX) && !defined(__MACH__) && !defined(WIN32) && !defined(__NetBSD__) && !defined(__DragonFly__)
+         char  *p;
+         /* remove original extension (does not work on OS X */
+         /* and may be a bad idea) */
diff --git a/csound6/patches/patch-Top_threads.c b/csound6/patches/patch-Top_threads.c
new file mode 100644
index 0000000000..de5fa387f8
--- /dev/null
+++ b/csound6/patches/patch-Top_threads.c
@@ -0,0 +1,25 @@
+$NetBSD: patch-Top_threads.c,v 1.2 2014/08/05 05:12:38 mrg Exp $
+
+Add NetBSD and DragonFlyBSD support.
+
+--- Top/threads.c.orig	2019-07-12 21:54:19.000000000 +0000
++++ Top/threads.c
+@@ -28,7 +28,7 @@
+ 
+ #ifndef HAVE_GETTIMEOFDAY
+ #if defined(LINUX)    || defined(__unix)   || defined(__unix__) || \
+-    defined(__MACH__) || defined(__HAIKU__)
++    defined(__MACH__) || defined(__HAIKU__) || defined(__NetBSD__) || defined(__DragonFly__)
+ #define HAVE_GETTIMEOFDAY 1
+ #endif
+ #endif
+@@ -167,8 +167,7 @@ PUBLIC void csoundSleep(size_t milliseco
+ 
+ #if !defined(HAVE_PTHREAD_BARRIER_INIT)
+ #if !defined( __MACH__)&&!defined(__HAIKU__)&&!defined(ANDROID)&& \
+-    !defined(NACL)&&!defined(__CYGWIN__)
+-
++    !defined(NACL)&&!defined(__CYGWIN__)&&!defined(__NetBSD__)&&!defined(__DragonFly__)
+ typedef struct barrier {
+     pthread_mutex_t mut;
+     pthread_cond_t cond;
diff --git a/csound6/patches/patch-include_interlocks.h b/csound6/patches/patch-include_interlocks.h
new file mode 100644
index 0000000000..0af6f81a4d
--- /dev/null
+++ b/csound6/patches/patch-include_interlocks.h
@@ -0,0 +1,16 @@
+$NetBSD$
+
+Reason unknown (patch ported from version 6.03.2).
+
+--- include/interlocks.h.orig	2019-07-12 21:54:19.000000000 +0000
++++ include/interlocks.h
+@@ -37,7 +37,8 @@
+ //Channels
+ #define _CR (0x0020)
+ #define _CW (0x0040)
+-#define _CB (0x0060)
++//#define _CB (0x0060)
++#define CSOUND_CB (0x0060)
+ 
+ //Stack
+ #define SK (0x0080)


Home | Main Index | Thread Index | Old Index