aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--audio/Makefile1
-rw-r--r--audio/wildmidi/Makefile42
-rw-r--r--audio/wildmidi/distinfo2
-rw-r--r--audio/wildmidi/files/patch-wildmidi.c--typecasting27
-rw-r--r--audio/wildmidi/pkg-descr15
5 files changed, 87 insertions, 0 deletions
diff --git a/audio/Makefile b/audio/Makefile
index 7e342edf8374..fe54cc23c1ce 100644
--- a/audio/Makefile
+++ b/audio/Makefile
@@ -799,6 +799,7 @@
SUBDIR += wavpack
SUBDIR += wavplay
SUBDIR += whysynth
+ SUBDIR += wildmidi
SUBDIR += wmalbum
SUBDIR += wmauda
SUBDIR += wmcdplay
diff --git a/audio/wildmidi/Makefile b/audio/wildmidi/Makefile
new file mode 100644
index 000000000000..5c157e72eaa3
--- /dev/null
+++ b/audio/wildmidi/Makefile
@@ -0,0 +1,42 @@
+# New ports collection makefile for: wildmidi
+# Date created: 02 Aug 2010
+# Whom: SimaMoto,RyoTa <liangtai.s4@gmail.com>
+#
+# $FreeBSD$
+#
+
+PORTNAME= wildmidi
+PORTVERSION= 0.2.3.4
+CATEGORIES= audio
+MASTER_SITES= SF/${PORTNAME}/${PORTNAME}
+
+MAINTAINER= liangtai.s4@gmail.com
+COMMENT= A simple software midi player and a core softsynth library
+
+# player: GPLv3, library: LGPL3
+LICENSE_COMB= multi
+LICENSE= GPLv3 LGPL3
+
+USE_GZIP= yes
+USE_GMAKE= yes
+USE_LDCONFIG= yes
+GNU_CONFIGURE= yes
+
+MAN1= wildmidi.1
+MAN3= WildMidi_GetString.3 WildMidi_Init.3 WildMidi_MasterVolume.3 \
+ WildMidi_Open.3 WildMidi_OpenBuffer.3 WildMidi_GetOutput.3 \
+ WildMidi_SetOption.3 WildMidi_GetInfo.3 WildMidi_FastSeek.3 \
+ WildMidi_Close.3 WildMidi_Shutdown.3
+MAN5= wildmidi.cfg.5
+PLIST_FILES= bin/wildmidi include/wildmidi_lib.h \
+ lib/libWildMidi.la lib/libWildMidi.so.1 lib/libWildMidi.so
+
+post-patch:
+ ${REINPLACE_CMD} 's@/etc/@${DATADIR}/@' \
+ ${WRKSRC}/docs/wildmidi.1 \
+ ${WRKSRC}/docs/wildmidi.cfg.5
+ ${REINPLACE_CMD} -e 's@/usr/local/share/wildmidi/@${DATADIR}/@' \
+ -e 's@default_timifityconf@default_wildmidiconf@' \
+ ${WRKSRC}/configure
+
+.include <bsd.port.mk>
diff --git a/audio/wildmidi/distinfo b/audio/wildmidi/distinfo
new file mode 100644
index 000000000000..7512b070cbe7
--- /dev/null
+++ b/audio/wildmidi/distinfo
@@ -0,0 +1,2 @@
+SHA256 (wildmidi-0.2.3.4.tar.gz) = 3fd0b8e810d22af95ec785cde284aad078844db516b76873261052cf1c3e5c28
+SIZE (wildmidi-0.2.3.4.tar.gz) = 348971
diff --git a/audio/wildmidi/files/patch-wildmidi.c--typecasting b/audio/wildmidi/files/patch-wildmidi.c--typecasting
new file mode 100644
index 000000000000..75cbea2686db
--- /dev/null
+++ b/audio/wildmidi/files/patch-wildmidi.c--typecasting
@@ -0,0 +1,27 @@
+--- src/wildmidi.c.orig 2010-07-30 09:33:46.000000000 +0900
++++ src/wildmidi.c 2011-05-28 23:13:47.000000000 +0900
+@@ -618,7 +618,7 @@
+ return -1;
+ }
+
+- buffer = (unsigned char *) mmap(NULL, max_buffer, mmmode, mmflags, audio_fd, 0);
++ buffer = (char *) mmap(NULL, max_buffer, mmmode, mmflags, audio_fd, 0);
+ if (buffer == MAP_FAILED) {
+ printf("couldn't mmap %s\r\n",strerror(errno));
+ shutdown_output();
+@@ -659,12 +659,13 @@
+ shutdown_output();
+ return -1;
+ }
+- if ((count.ptr < counter) || (count.ptr >= (counter+4))) {
++ if (((unsigned long int)count.ptr < counter) ||
++ ((unsigned long int)count.ptr >= (counter+4))) {
+ break;
+ }
+ usleep(500);
+ }
+- if (count.ptr < counter) {
++ if ((unsigned long int)count.ptr < counter) {
+ free_size = max_buffer - counter;
+ } else {
+ free_size = count.ptr - counter;
diff --git a/audio/wildmidi/pkg-descr b/audio/wildmidi/pkg-descr
new file mode 100644
index 000000000000..1ee69a89a631
--- /dev/null
+++ b/audio/wildmidi/pkg-descr
@@ -0,0 +1,15 @@
+WildMIDI is a simple software midi player which has a core softsynth library
+that can be used with other applications.
+
+The WildMIDI library uses Gravis Ultrasound patch files to convert MIDI files
+into audio which is them passed back to the calling application for further
+processing or output. The API of the library is designed so that it is easy to
+include WildMIDI into applications that wish to include MIDI file playback.
+With multiple MIDI file support you can develop applications to mix several
+midi files together at the same time and with the next release you will be
+able to use a different patch set for each MIDI file.
+
+The wildmidi player is a demonstration program to show the capabilities of
+libWildMidi.
+
+WWW: http://wildmidi.sourceforge.net/