Tuesday, August 01, 2023

Re: [update] audio/portmidi to 2.0.4

On Sun, Jul 02, 2023 at 08:26:35PM +0200, Raphael Graf wrote:
> On Sun, Jul 02, 2023 at 10:54:33AM +0100, Stuart Henderson wrote:
> > On 2023/07/01 22:37, Raphael Graf wrote:
> > > The project has moved to github and the version numbering scheme has changed.
> > > A list of changes is here: https://github.com/PortMidi/portmidi/releases
> > >
> > > Audacity still works and I have also compile-tested emulators/hatari and
> > > games/odamex.
> > >
> > > The delayed playback of midi-mesages is still not implemented in the
> > > sndio-specific code (see XXX in files/pm_sndio/pmsndio.c). I doubt that it
> > > is even possible to do in userland because of the timing requirements.
> > > Does anybody have an idea how to implement this?
> > >
> > >
> > > Index: Makefile
> > > ===================================================================
> > > RCS file: /cvs/ports/audio/portmidi/Makefile,v
> > > retrieving revision 1.5
> > > diff -u -p -u -p -r1.5 Makefile
> > > --- Makefile 11 Mar 2022 18:20:27 -0000 1.5
> > > +++ Makefile 1 Jul 2023 20:06:03 -0000
> > > @@ -1,33 +1,28 @@
> > > COMMENT = library for real time input and output of MIDI data
> > >
> > > -DISTNAME = portmidi-src-217
> > > -PKGNAME = portmidi-217
> > > -REVISION = 0
> > > +GH_ACCOUNT = PortMidi
> > > +GH_PROJECT = portmidi
> > > +GH_TAGNAME = v2.0.4
> > > +EPOCH = 0
> > >
> > > -SHARED_LIBS = portmidi 0.0
> > > +DISTNAME = portmidi-${GH_TAGNAME:S/v//}
> >
> > You don't need this, it's set automatically from GH_PROJECT and
> > GH_TAGNAME.
> >
> > > +
> > > +SHARED_LIBS = portmidi 1.0
> > >
> > > CATEGORIES = audio
> > >
> > > -HOMEPAGE = http://portmedia.sourceforge.net/
> > > +HOMEPAGE = https://github.com/PortMidi/portmidi
> >
> > this is set automatically by GH_* too.
> >
> > The rest reads ok but I don't have hw to test.
>
> Thank you. Below is an updated diff.
>
> For testing midi-output from audacity, fluidsynth can be used. Just start
> fluidsynth and then open a midi file in audacity:
> $ pkg_add fluidsynth generaluser-gs-soundfont
> $ fluidsynth /usr/local/share/generaluser-gs/GeneralUser_GS.sf2
>

ping, any comments?
Here is the diff again:


Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/portmidi/Makefile,v
retrieving revision 1.5
diff -u -p -r1.5 Makefile
--- Makefile 11 Mar 2022 18:20:27 -0000 1.5
+++ Makefile 2 Jul 2023 17:57:41 -0000
@@ -1,33 +1,24 @@
COMMENT = library for real time input and output of MIDI data

-DISTNAME = portmidi-src-217
-PKGNAME = portmidi-217
-REVISION = 0
+GH_ACCOUNT = PortMidi
+GH_PROJECT = portmidi
+GH_TAGNAME = v2.0.4
+EPOCH = 0

-SHARED_LIBS = portmidi 0.0
+SHARED_LIBS = portmidi 1.0

CATEGORIES = audio

-HOMEPAGE = http://portmedia.sourceforge.net/
-
# ISC
PERMIT_PACKAGE = Yes

WANTLIB = pthread sndio

-MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=portmedia/}
-EXTRACT_SUFX = .zip
-
-MODULES = devel/cmake
+MODULES = devel/cmake

-CONFIGURE_ARGS+= -DPROJECT_BINARY_DIR=Release \
- -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY=${WRKBUILD}/Release \
- -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=${WRKBUILD}/Release \
- -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=${WRKBUILD}/Release
+CONFIGURE_ARGS+= -DUSE_SNDIO=ON

NO_TEST = Yes
-
-WRKDIST = ${WRKDIR}/portmidi

FIX_CRLF_FILES = porttime/ptlinux.c

Index: distinfo
===================================================================
RCS file: /cvs/ports/audio/portmidi/distinfo,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 distinfo
--- distinfo 23 Mar 2019 13:30:08 -0000 1.1.1.1
+++ distinfo 2 Jul 2023 17:57:41 -0000
@@ -1,2 +1,2 @@
-SHA256 (portmidi-src-217.zip) = COmokr2AvbERUhP7ctwpp78v8QizeBgFhqpl88/ULg8=
-SIZE (portmidi-src-217.zip) = 1030830
+SHA256 (portmidi-2.0.4.tar.gz) = ZIk+gjrhRsq9Otf5qanFMydGq+eEfFV7mbJXevqKYHw=
+SIZE (portmidi-2.0.4.tar.gz) = 263225
Index: files/portmidi.pc.in
===================================================================
RCS file: files/portmidi.pc.in
diff -N files/portmidi.pc.in
--- files/portmidi.pc.in 23 Mar 2019 13:30:08 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
-prefix=@DEST_DIR@
-exec_prefix=${prefix}
-libdir=${prefix}/lib
-includedir=${prefix}/include
-
-Name: libportmidi
-Description: Portable midi I/O
-Version: 217
-
-Libs: -L${libdir} -lportmidi
-Cflags: -I${includedir}
Index: files/pm_sndio/pmsndio.c
===================================================================
RCS file: /cvs/ports/audio/portmidi/files/pm_sndio/pmsndio.c,v
retrieving revision 1.2
diff -u -p -r1.2 pmsndio.c
--- files/pm_sndio/pmsndio.c 10 May 2019 12:55:19 -0000 1.2
+++ files/pm_sndio/pmsndio.c 2 Jul 2023 17:57:41 -0000
@@ -12,8 +12,8 @@
#include "pminternal.h"
#include "porttime.h"

-#define NDEVS 9
-#define SYSEX_MAXLEN 1024
+#define NDEVS 9
+#define SYSEX_MAXLEN 1024

#define SYSEX_START 0xf0
#define SYSEX_END 0xf7
@@ -45,18 +45,18 @@ void pm_init()

/* default */
strcpy(devs[0].name, MIO_PORTANY);
- pm_add_device("SNDIO", devs[k].name, TRUE, (void *) &devs[k],
+ pm_add_device("SNDIO", devs[k].name, TRUE, FALSE, (void *) &devs[k],
&pm_sndio_in_dictionary);
- pm_add_device("SNDIO", devs[k].name, FALSE, (void *) &devs[k],
+ pm_add_device("SNDIO", devs[k].name, FALSE, FALSE, (void *) &devs[k],
&pm_sndio_out_dictionary);
k++;

for (i = 0; i < 4; i++) {
for (j = 0; j < 2; j++) {
sprintf(devs[k].name, "%s/%d", devices[i], j);
- pm_add_device("SNDIO", devs[k].name, TRUE, (void *) &devs[k],
+ pm_add_device("SNDIO", devs[k].name, TRUE, FALSE, (void *) &devs[k],
&pm_sndio_in_dictionary);
- pm_add_device("SNDIO", devs[k].name, FALSE, (void *) &devs[k],
+ pm_add_device("SNDIO", devs[k].name, FALSE, FALSE, (void *) &devs[k],
&pm_sndio_out_dictionary);
k++;
}
@@ -85,7 +85,7 @@ void pm_term(void)

PmDeviceID Pm_GetDefaultInputDeviceID() {
Pm_Initialize();
- return pm_default_input_device_id;
+ return pm_default_input_device_id;
}

PmDeviceID Pm_GetDefaultOutputDeviceID() {
@@ -107,14 +107,14 @@ static int midi_message_length(PmMessage
return common_len[st & 7];
else if (st >= 0x80)
return voice_len[(st >> 4) & 7];
- else
+ else
return 0;
}

void* input_thread(void *param)
{
PmInternal *midi = (PmInternal*)param;
- struct mio_dev *dev = (struct mio_dev *) midi->descriptor;
+ struct mio_dev *dev = pm_descriptors[midi->device_id].descriptor;
struct pollfd pfd[1];
nfds_t nfds;
unsigned char st = 0, c = 0;
@@ -206,8 +206,7 @@ static void set_mode(struct mio_dev *dev

static PmError sndio_out_open(PmInternal *midi, void *driverInfo)
{
- descriptor_type desc = &descriptors[midi->device_id];
- struct mio_dev *dev = (struct mio_dev *) desc->descriptor;
+ struct mio_dev *dev = pm_descriptors[midi->device_id].descriptor;

if (dev->mode & MIO_OUT)
return pmNoError;
@@ -219,14 +218,12 @@ static PmError sndio_out_open(PmInternal
return pmHostError;
}

- midi->descriptor = (void *)dev;
return pmNoError;
}

static PmError sndio_in_open(PmInternal *midi, void *driverInfo)
{
- descriptor_type desc = &descriptors[midi->device_id];
- struct mio_dev *dev = (struct mio_dev *) desc->descriptor;
+ struct mio_dev *dev = pm_descriptors[midi->device_id].descriptor;

if (dev->mode & MIO_IN)
return pmNoError;
@@ -237,7 +234,6 @@ static PmError sndio_in_open(PmInternal
"mio_open (input) failed: %s\n", dev->name);
return pmHostError;
}
- midi->descriptor = (void *)dev;
pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_create(&dev->thread, &attr, input_thread, ( void* )midi);
@@ -246,7 +242,7 @@ static PmError sndio_in_open(PmInternal

static PmError sndio_out_close(PmInternal *midi)
{
- struct mio_dev *dev = (struct mio_dev *) midi->descriptor;
+ struct mio_dev *dev = pm_descriptors[midi->device_id].descriptor;

if (dev->mode & MIO_OUT)
set_mode(dev, dev->mode & ~MIO_OUT);
@@ -255,7 +251,7 @@ static PmError sndio_out_close(PmInterna

static PmError sndio_in_close(PmInternal *midi)
{
- struct mio_dev *dev = (struct mio_dev *) midi->descriptor;
+ struct mio_dev *dev = pm_descriptors[midi->device_id].descriptor;

if (dev->mode & MIO_IN) {
set_mode(dev, dev->mode & ~MIO_IN);
@@ -280,7 +276,7 @@ static PmError do_write(struct mio_dev *
size_t w = mio_write(dev->hdl, addr, nbytes);

if (w != nbytes) {
- snprintf(dev->errmsg, PM_HOST_ERROR_MSG_LEN,
+ snprintf(dev->errmsg, PM_HOST_ERROR_MSG_LEN,
"mio_write failed, bytes written:%zu\n", w);
return pmHostError;
}
@@ -290,14 +286,19 @@ static PmError do_write(struct mio_dev *
static PmError sndio_write_byte(PmInternal *midi, unsigned char byte,
PmTimestamp timestamp)
{
- struct mio_dev *dev = (struct mio_dev *) midi->descriptor;
+ struct mio_dev *dev = pm_descriptors[midi->device_id].descriptor;

- return do_write(dev, &byte, 1);
+ if (midi->latency > 0) {
+ /* XXX the byte should be queued for later playback */
+ return do_write(dev, &byte, 1);
+ } else {
+ return do_write(dev, &byte, 1);
+ }
}

static PmError sndio_write_short(PmInternal *midi, PmEvent *event)
{
- struct mio_dev *dev = (struct mio_dev *) midi->descriptor;
+ struct mio_dev *dev = pm_descriptors[midi->device_id].descriptor;
int nbytes = midi_message_length(event->message);

if (midi->latency > 0) {
@@ -321,14 +322,14 @@ PmError sndio_sysex(PmInternal *midi, Pm

static unsigned int sndio_has_host_error(PmInternal *midi)
{
- struct mio_dev *dev = (struct mio_dev *) midi->descriptor;
+ struct mio_dev *dev = pm_descriptors[midi->device_id].descriptor;

return (dev->errmsg[0] != '\0');
}

static void sndio_get_host_error(PmInternal *midi, char *msg, unsigned int len)
{
- struct mio_dev *dev = (struct mio_dev *) midi->descriptor;
+ struct mio_dev *dev = pm_descriptors[midi->device_id].descriptor;

strlcpy(msg, dev->errmsg, len);
dev->errmsg[0] = '\0';
@@ -347,7 +348,6 @@ pm_fns_node pm_sndio_in_dictionary = {
sndio_in_close,
success_poll,
sndio_has_host_error,
- sndio_get_host_error
};

pm_fns_node pm_sndio_out_dictionary = {
@@ -363,6 +363,5 @@ pm_fns_node pm_sndio_out_dictionary = {
sndio_out_close,
none_poll,
sndio_has_host_error,
- sndio_get_host_error
};

Index: patches/patch-CMakeLists_txt
===================================================================
RCS file: /cvs/ports/audio/portmidi/patches/patch-CMakeLists_txt,v
retrieving revision 1.2
diff -u -p -r1.2 patch-CMakeLists_txt
--- patches/patch-CMakeLists_txt 11 Mar 2022 18:20:27 -0000 1.2
+++ patches/patch-CMakeLists_txt 2 Jul 2023 17:57:41 -0000
@@ -1,16 +1,24 @@
+-Option USE_SNDIO
+-Install static lib as well
+
Index: CMakeLists.txt
--- CMakeLists.txt.orig
+++ CMakeLists.txt
-@@ -73,5 +73,11 @@ add_subdirectory(pm_test)
- add_subdirectory(pm_dylib)
+@@ -26,6 +26,8 @@ option(PM_USE_STATIC_RUNTIME
+ "Use MSVC static runtime. Only applies when BUILD_SHARED_LIBS is OFF"
+ ON)

- # Cannot figure out how to make an xcode Java application with CMake
--add_subdirectory(pm_java)
-+#add_subdirectory(pm_java)
++option(USE_SNDIO "Use sndio backend" OFF)
++
+ # MSVCRT_DLL is used to construct the MSVC_RUNTIME_LIBRARY property
+ # (see pm_common/CMakeLists.txt and pm_test/CMakeLists.txt)
+ if(PM_USE_STATIC_RUNTIME AND NOT BUILD_SHARED_LIBS)
+@@ -117,7 +119,7 @@ if(BUILD_JAVA_NATIVE_INTERFACE)
+ endif(BUILD_JAVA_NATIVE_INTERFACE)

-+set(DEST_DIR "${CMAKE_INSTALL_PREFIX}")
-+CONFIGURE_FILE("portmidi.pc.in" "portmidi.pc" @ONLY)
-+install(FILES
-+ "${CMAKE_CURRENT_BINARY_DIR}/portmidi.pc"
-+ DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig"
-+)
+ # Install the libraries and headers (Linux and Mac OS X command line)
+-INSTALL(TARGETS portmidi ${PMJNI_IF_EXISTS}
++INSTALL(TARGETS portmidi portmidi_s ${PMJNI_IF_EXISTS}
+ EXPORT PortMidiTargets
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
Index: patches/patch-pm_common_CMakeLists_txt
===================================================================
RCS file: /cvs/ports/audio/portmidi/patches/patch-pm_common_CMakeLists_txt,v
retrieving revision 1.2
diff -u -p -r1.2 patch-pm_common_CMakeLists_txt
--- patches/patch-pm_common_CMakeLists_txt 11 Mar 2022 18:20:27 -0000 1.2
+++ patches/patch-pm_common_CMakeLists_txt 2 Jul 2023 17:57:41 -0000
@@ -1,55 +1,42 @@
+-Build static library as well
+-Use sndio backend
+
Index: pm_common/CMakeLists.txt
--- pm_common/CMakeLists.txt.orig
+++ pm_common/CMakeLists.txt
-@@ -66,21 +66,12 @@ if(UNIX)
- set(JAVA_INCLUDE_PATHS ${JAVAVM_LIB}/Headers)
- message(STATUS "SYSROOT: " ${CMAKE_OSX_SYSROOT})
- else(APPLE)
-- # LINUX settings...
-- include(FindJNI)
-- message(STATUS "JAVA_JVM_LIB_PATH is " ${JAVA_JVM_LIB_PATH})
-- message(STATUS "JAVA_INCLUDE_PATH is " ${JAVA_INCLUDE_PATH})
-- message(STATUS "JAVA_INCLUDE_PATH2 is " ${JAVA_INCLUDE_PATH2})
-- message(STATUS "JAVA_JVM_LIBRARY is " ${JAVA_JVM_LIBRARY})
-- set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH2})
-- # libjvm.so is found relative to JAVA_INCLUDE_PATH:
-- set(JAVAVM_LIB ${JAVA_JVM_LIBRARY}/libjvm.so)
+@@ -37,9 +37,10 @@ set(PM_LIB_PUBLIC_SRC ${PMDIR}/pm_common/portmidi.c
+ ${PMDIR}/pm_common/pmutil.c
+ ${PMDIR}/porttime/porttime.c)
+ add_library(portmidi ${PM_LIB_PUBLIC_SRC})
++add_library(portmidi_s STATIC ${PM_LIB_PUBLIC_SRC})

-- set(LINUXSRC pmlinuxalsa pmlinux finddefault)
-- prepend_path(LIBSRC ../pm_linux/ ${LINUXSRC})
-+ set(LINUXSRC pmsndio)
-+ prepend_path(LIBSRC ../pm_sndio/ ${LINUXSRC})
- list(APPEND LIBSRC ../porttime/ptlinux)
+ # MSVCRT_DLL is "DLL" for shared runtime library, and "" for static:
+-set_target_properties(portmidi PROPERTIES
++set_target_properties(portmidi portmidi_s PROPERTIES
+ VERSION ${LIBRARY_VERSION}
+ SOVERSION ${LIBRARY_SOVERSION}
+ OUTPUT_NAME "${PM_ACTUAL_LIB_NAME}"
+@@ -78,8 +79,22 @@ if(NOT WIN32)
+ find_package(Threads REQUIRED)
+ endif()

-- set(PM_NEEDED_LIBS pthread asound)
-+ set(PM_NEEDED_LIBS pthread sndio)
- endif(APPLE)
- else(UNIX)
- if(WIN32)
-@@ -99,7 +90,6 @@ else(UNIX)
- set(PM_NEEDED_LIBS winmm.lib)
- endif(WIN32)
- endif(UNIX)
--set(JNI_EXTRA_LIBS ${PM_NEEDED_LIBS} ${JAVA_JVM_LIBRARY})
-
- # this completes the list of library sources by adding shared code
- list(APPEND LIBSRC pmutil portmidi)
-@@ -109,17 +99,10 @@ add_library(portmidi-static ${LIBSRC})
- set_target_properties(portmidi-static PROPERTIES OUTPUT_NAME "portmidi_s")
- target_link_libraries(portmidi-static ${PM_NEEDED_LIBS})
-
--# define the jni library
--include_directories(${JAVA_INCLUDE_PATHS})
-
--set(JNISRC ${LIBSRC} ../pm_java/pmjni/pmjni.c)
--add_library(pmjni SHARED ${JNISRC})
--target_link_libraries(pmjni ${JNI_EXTRA_LIBS})
--set_target_properties(pmjni PROPERTIES EXECUTABLE_EXTENSION "jnilib")
--
- # install the libraries (Linux and Mac OS X command line)
- if(UNIX)
-- INSTALL(TARGETS portmidi-static pmjni
-+ INSTALL(TARGETS portmidi-static
- LIBRARY DESTINATION /usr/local/lib
- ARCHIVE DESTINATION /usr/local/lib)
- # .h files installed by pm_dylib/CMakeLists.txt, so don't need them here
++# Check for sndio
++include (FindPackageHandleStandardArgs)
++find_path(SNDIO_INCLUDE_DIRS NAMES sndio.h)
++find_library(SNDIO_LIBRARY sndio)
++find_package_handle_standard_args(Sndio
++ REQUIRED_VARS SNDIO_LIBRARY SNDIO_INCLUDE_DIRS)
++
+ # first include the appropriate system-dependent file:
+-if(UNIX AND APPLE)
++if(SNDIO_FOUND AND USE_SNDIO)
++ set(PM_LIB_PRIVATE_SRC
++ ${PMDIR}/porttime/ptlinux.c
++ ${PMDIR}/pm_sndio/pmsndio.c)
++ set(PM_NEEDED_LIBS Threads::Threads ${SNDIO_LIBRARY} PARENT_SCOPE)
++ target_link_libraries(portmidi PRIVATE Threads::Threads ${SNDIO_LIBRARY})
++ target_include_directories(portmidi PRIVATE ${SNDIO_INCLUDE_DIRS})
++elseif(UNIX AND APPLE)
+ set(Threads::Threads "" PARENT_SCOPE)
+ find_library(COREAUDIO_LIBRARY CoreAudio REQUIRED)
+ find_library(COREFOUNDATION_LIBRARY CoreFoundation REQUIRED)
Index: patches/patch-pm_dylib_CMakeLists_txt
===================================================================
RCS file: patches/patch-pm_dylib_CMakeLists_txt
diff -N patches/patch-pm_dylib_CMakeLists_txt
--- patches/patch-pm_dylib_CMakeLists_txt 11 Mar 2022 18:20:27 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,37 +0,0 @@
-Index: pm_dylib/CMakeLists.txt
---- pm_dylib/CMakeLists.txt.orig
-+++ pm_dylib/CMakeLists.txt
-@@ -62,30 +62,11 @@ if(UNIX)
- set(INSTALL_NAME_DIR "/usr/local/lib")
- message(STATUS "SYSROOT: " ${CMAKE_OSX_SYSROOT})
- else(APPLE)
-- # LINUX settings...
-- include(FindJNI)
-- # message(STATUS "JAVA_JVM_LIB_PATH is " ${JAVA_JVM_LIB_PATH})
-- # message(STATUS "JAVA_INCLUDE_PATH is " ${JAVA_INCLUDE_PATH})
-- # note: should use JAVA_JVM_LIB_PATH, but it is not set properly
-- # note: user might need to set JAVA_INCLUDE_PATH manually
-- #
-- # this will probably break on BSD and other Unix systems; the fix
-- # depends on whether FindJNI can find Java or not. If yes, then
-- # we should try to rely on automatically set JAVA_INCLUDE_PATH and
-- # JAVA_INCLUDE_PATH2; if no, then we need to make both JAVA_INCLUDE_PATH
-- # and JAVA_INCLUDE_PATH2 set by user (will need clear documentation
-- # because JAVA_INCLUDE_PATH2 is pretty obscure)
-- set(JAVA_INCLUDE_PATH ${JAVA_INCLUDE_PATH-UNKNOWN}
-- CACHE STRING "where to find Java SDK include directory")
-- set(JAVA_INCLUDE_PATHS ${JAVA_INCLUDE_PATH} ${JAVA_INCLUDE_PATH}/linux)
-- # libjvm.so is found relative to JAVA_INCLUDE_PATH:
-- set(JAVAVM_LIB ${JAVA_INCLUDE_PATH}/../jre/lib/i386/client/libjvm.so)
--
-- set(LINUXSRC pmlinuxalsa pmlinux finddefault)
-- prepend_path(LIBSRC ../pm_linux/ ${LINUXSRC})
-+ set(LINUXSRC pmsndio)
-+ prepend_path(LIBSRC ../pm_sndio/ ${LINUXSRC})
- list(APPEND LIBSRC ../porttime/ptlinux)
-
-- set(PM_NEEDED_LIBS pthread asound)
-+ set(PM_NEEDED_LIBS pthread sndio)
- endif(APPLE)
- else(UNIX)
- if(WIN32)
Index: patches/patch-pm_test_CMakeLists_txt
===================================================================
RCS file: patches/patch-pm_test_CMakeLists_txt
diff -N patches/patch-pm_test_CMakeLists_txt
--- patches/patch-pm_test_CMakeLists_txt 11 Mar 2022 18:20:27 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,9 +0,0 @@
-Index: pm_test/CMakeLists.txt
---- pm_test/CMakeLists.txt.orig
-+++ pm_test/CMakeLists.txt
-@@ -1,4 +1,5 @@
- # pm_test
-+cmake_policy(SET CMP0037 OLD)
-
- # set the build directory to be in portmidi, not in portmidi/pm_test
- # this is required for Xcode:
Index: patches/patch-porttime_ptlinux_c
===================================================================
RCS file: /cvs/ports/audio/portmidi/patches/patch-porttime_ptlinux_c,v
retrieving revision 1.3
diff -u -p -r1.3 patch-porttime_ptlinux_c
--- patches/patch-porttime_ptlinux_c 11 Mar 2022 18:20:27 -0000 1.3
+++ patches/patch-porttime_ptlinux_c 2 Jul 2023 17:57:41 -0000
@@ -1,47 +1,22 @@
+Upstream commit 3209da8c9865efa3dbc1a2e642350c154df20d2a
+
Index: porttime/ptlinux.c
--- porttime/ptlinux.c.orig
+++ porttime/ptlinux.c
-@@ -31,14 +31,13 @@ CHANGE LOG
+@@ -31,11 +31,15 @@ CHANGE LOG
#include "porttime.h"
- #include "sys/time.h"
+ #include "time.h"
#include "sys/resource.h"
-#include "sys/timeb.h"
#include "pthread.h"

#define TRUE 1
#define FALSE 0
++
++#ifndef CLOCK_MONOTONIC_RAW
++ #define CLOCK_MONOTONIC_RAW CLOCK_MONOTONIC
++

No comments:

Post a Comment