Submitted by Dan Weeks <danimal@danimal.org>:

* md5->distinfo
* rename/update patches
* updated homepage and master_sites
* take over maintainership
This commit is contained in:
naddy 2002-01-14 13:47:21 +00:00
parent f034c721f6
commit bfa330f604
20 changed files with 209 additions and 245 deletions

View File

@ -1,18 +1,23 @@
# $OpenBSD: Makefile,v 1.17 2001/10/28 13:05:45 espie Exp $
# $OpenBSD: Makefile,v 1.18 2002/01/14 13:47:21 naddy Exp $
COMMENT= "Motif-based audio mixer"
DISTNAME= xmmix-1.2
DISTNAME= xmmix-1.2.2
CATEGORIES= audio
NEED_VERSION= 1.400
MASTER_SITES= ${MASTER_SITE_XCONTRIB}
MASTER_SITE_SUBDIR= applications
NEED_VERSION= 1.504
HOMEPAGE= http://www.ibiblio.org/tkan/xmmix/
MAINTAINER= Dan Weeks <danimal@danimal.org>
PERMIT_PACKAGE_CDROM= Yes
PERMIT_PACKAGE_FTP= Yes
PERMIT_DISTFILES_CDROM= Yes
PERMIT_DISTFILES_FTP= Yes
MASTER_SITES= http://www.ibiblio.org/tkan/download/xmmix/src/
CONFIGURE_STYLE= imake
USE_MOTIF= any
WRKDIST= ${WRKDIR}/xmmix-1.2
.include <bsd.port.mk>

3
audio/xmmix/distinfo Normal file
View File

@ -0,0 +1,3 @@
MD5 (xmmix-1.2.2.tar.gz) = 5a6556ec9a84888d7e77ba59c2128843
RMD160 (xmmix-1.2.2.tar.gz) = 05f5ca6811848f0b86a9dc94e6d943a07cda0ba8
SHA1 (xmmix-1.2.2.tar.gz) = 9ec44500dccba63ef7a9d50f66acfb6e45d08714

View File

@ -1,3 +0,0 @@
MD5 (xmmix-1.2.tar.gz) = 5a6556ec9a84888d7e77ba59c2128843
RMD160 (xmmix-1.2.tar.gz) = 05f5ca6811848f0b86a9dc94e6d943a07cda0ba8
SHA1 (xmmix-1.2.tar.gz) = 9ec44500dccba63ef7a9d50f66acfb6e45d08714

View File

@ -0,0 +1,12 @@
$OpenBSD: patch-Imakefile,v 1.1 2002/01/14 13:47:22 naddy Exp $
--- Imakefile.orig Sun Jul 14 19:48:56 1996
+++ Imakefile Mon Jan 14 14:41:27 2002
@@ -43,7 +43,7 @@
* #include "Motif.tmpl"
* #include "Motif.rules"
*/
-LOCAL_LIBRARIES= XmClientLibs
+LOCAL_LIBRARIES= ${MOTIFLIB} ${XTOOLLIB} ${XLIB} -lossaudio
/*

View File

@ -1,3 +1,4 @@
$OpenBSD: patch-XMmix_ad,v 1.1 2002/01/14 13:47:22 naddy Exp $
--- XMmix.ad.orig Sun Jul 14 19:48:58 1996
+++ XMmix.ad Sun Apr 9 18:34:52 2000
@@ -26,7 +26,7 @@

View File

@ -1,19 +0,0 @@
*** Imakefile.orig Mon Jul 15 00:48:56 1996
--- Imakefile Thu Jul 30 10:35:24 1998
***************
*** 43,49 ****
* #include "Motif.tmpl"
* #include "Motif.rules"
*/
! LOCAL_LIBRARIES= XmClientLibs
/*
--- 43,49 ----
* #include "Motif.tmpl"
* #include "Motif.rules"
*/
! LOCAL_LIBRARIES= ${MOTIFLIB} ${XTOOLLIB} ${XLIB} -lossaudio
/*

View File

@ -1,19 +0,0 @@
*** main.c.orig Thu Nov 7 22:01:43 1996
--- main.c Thu Jul 30 10:17:25 1998
***************
*** 159,165 ****
post_realize_config(&widgets);
/* Register callback routines */
! register_callbacks(&widgets);
/* Initialize screen controls */
mx_start(&widgets);
--- 159,165 ----
post_realize_config(&widgets);
/* Register callback routines */
! register_callbacks(&widgets, app);
/* Initialize screen controls */
mx_start(&widgets);

View File

@ -1,18 +0,0 @@
*** appenv.h.orig Mon Jul 15 00:48:59 1996
--- appenv.h Thu Jul 30 10:20:09 1998
***************
*** 59,65 ****
--- 59,71 ----
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/ioctl.h>
+ #if defined(__NetBSD__) || defined(__OpenBSD__)
+ #include <soundcard.h>
+ /* Ensure we SIGIO */
+ #undef _POSIX_SOURCE
+ #else
#include <sys/soundcard.h>
+ #endif
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>

View File

@ -1,87 +0,0 @@
*** mixer.c.orig Thu Nov 7 22:00:26 1996
--- mixer.c Thu Jul 30 10:31:56 1998
***************
*** 104,109 ****
--- 104,117 ----
***********************/
+ #if defined(__NetBSD__) || defined(__OpenBSD__)
+ void
+ mxchg(int sig)
+ {
+ deliverSIGIO();
+ }
+ #endif
+
/*
* do_ioctl
* Perform ioctl command. If file is not yet open or if we
***************
*** 681,691 ****
--- 689,701 ----
/* Query sound driver version */
if ((fp = fopen("/dev/sndstat", "r")) == NULL) {
if (!app_data.demo) {
+ #if !defined(__NetBSD__) && !defined(__OpenBSD__)
fprintf(errfp, "%s: %s: %s\n",
PROGNAME,
"Cannot open /dev/sndstat",
"assuming pre-3.0 sound driver.");
maxdevs = MAXDEVS_V2;
+ #endif
}
return;
}
***************
*** 915,920 ****
--- 925,931 ----
mx_start(widgets_t *m)
{
char msg[256];
+ int one = 1;
if (app_data.autoload != NULL && app_data.autoload[0] != '\0' &&
strcmp(app_data.autoload, "/dev/null") != 0) {
***************
*** 930,935 ****
--- 941,954 ----
}
}
+ #if defined(__NetBSD__) || defined(__OpenBSD__)
+ signal(SIGIO, mxchg);
+ ioctl(dev_fd, FIOASYNC, &one);
+ #endif
+
+ /* Query hardware mixer settings */
+ mx_queryhw(&widgets);
+
/* Update screen controls to match current status */
mx_updctl(m);
}
***************
*** 1531,1536 ****
--- 1550,1571 ----
if (p->reason != XmCR_FOCUS || form == (Widget) NULL)
return;
+ /* Query hardware mixer settings */
+ mx_queryhw(&widgets);
+
+ /* Update screen controls */
+ mx_updctl(&widgets);
+ }
+
+
+ /*
+ * mx_change
+ * Mixer device has changed
+ */
+ /*ARGSUSED*/
+ void
+ mx_change(XtPointer client_data)
+ {
/* Query hardware mixer settings */
mx_queryhw(&widgets);

View File

@ -1,12 +0,0 @@
*** mixer.h.orig Mon Jul 15 00:49:04 1996
--- mixer.h Thu Jul 30 10:17:25 1998
***************
*** 78,83 ****
--- 78,84 ----
extern void mx_fsok_btn(Widget, XtPointer, XtPointer);
extern void mx_fscancel_btn(Widget, XtPointer, XtPointer);
extern void mx_focuschg(Widget, XtPointer, XtPointer);
+ extern void mx_change(XtPointer);
#endif /* __MIXER_H__ */

View File

@ -1,50 +0,0 @@
*** widget.c.orig Mon Jul 15 00:49:09 1996
--- widget.c Thu Jul 30 10:32:50 1998
***************
*** 973,978 ****
--- 973,982 ----
delw = XmInternAtom(display, "WM_DELETE_WINDOW", False);
}
+ static XtSignalId sigid;
+ void deliverSIGIO() {
+ XtNoticeSignal(sigid);
+ }
/*
* register_callbacks
***************
*** 985,991 ****
* Nothing
*/
void
! register_callbacks(widgets_t *m)
{
int i;
--- 989,995 ----
* Nothing
*/
void
! register_callbacks(widgets_t *m, XtAppContext app)
{
int i;
***************
*** 1126,1131 ****
--- 1130,1144 ----
XmNfocusCallback,
(XtCallbackProc) mx_focuschg, (XtPointer) m->form
);
+
+ #if defined(__NetBSD__) || defined(__OpenBSD__)
+ /*
+ * Mixer SIGIO change callback
+ */
+ sigid = XtAppAddSignal(app,
+ (XtSignalCallbackProc) mx_change, (XtPointer) 0
+ );
+ #endif
/*
* Install WM_DELETE_WINDOW handler

View File

@ -1,19 +0,0 @@
*** widget.h.orig Mon Jul 15 00:49:10 1996
--- widget.h Thu Jul 30 10:17:25 1998
***************
*** 119,125 ****
extern void widget_init(widgets_t *);
extern void create_widgets(widgets_t *);
extern void post_realize_config(widgets_t *);
! extern void register_callbacks(widgets_t *);
#endif /* __WIDGET_H__ */
--- 119,125 ----
extern void widget_init(widgets_t *);
extern void create_widgets(widgets_t *);
extern void post_realize_config(widgets_t *);
! extern void register_callbacks(widgets_t *, XtAppContext);
#endif /* __WIDGET_H__ */

View File

@ -0,0 +1,17 @@
$OpenBSD: patch-appenv_h,v 1.1 2002/01/14 13:47:22 naddy Exp $
--- appenv.h.orig Sun Jul 14 19:48:59 1996
+++ appenv.h Mon Jan 14 14:41:27 2002
@@ -59,7 +59,13 @@ static char *_appenv_h_ident_ = "@(#)app
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/ioctl.h>
+#if defined(__NetBSD__) || defined(__OpenBSD__)
+#include <soundcard.h>
+/* Ensure we SIGIO */
+#undef _POSIX_SOURCE
+#else
#include <sys/soundcard.h>
+#endif
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>

View File

@ -0,0 +1,12 @@
$OpenBSD: patch-main_c,v 1.1 2002/01/14 13:47:22 naddy Exp $
--- main.c.orig Thu Nov 7 17:01:43 1996
+++ main.c Mon Jan 14 14:41:27 2002
@@ -159,7 +159,7 @@ main(int argc, char **argv)
post_realize_config(&widgets);
/* Register callback routines */
- register_callbacks(&widgets);
+ register_callbacks(&widgets, app);
/* Initialize screen controls */
mx_start(&widgets);

View File

@ -0,0 +1,87 @@
$OpenBSD: patch-mixer_c,v 1.1 2002/01/14 13:47:22 naddy Exp $
--- mixer.c.orig Thu Nov 7 11:00:26 1996
+++ mixer.c Sun Jan 13 20:18:56 2002
@@ -104,6 +104,14 @@ STATIC ctlinfo_t ctlsav; /* Saved state
***********************/
+#if defined(__NetBSD__) || defined(__OpenBSD__)
+void
+mxchg(int sig)
+{
+ deliverSIGIO();
+}
+#endif
+
/*
* do_ioctl
* Perform ioctl command. If file is not yet open or if we
@@ -681,11 +689,13 @@ mx_init_drv(void)
/* Query sound driver version */
if ((fp = fopen("/dev/sndstat", "r")) == NULL) {
if (!app_data.demo) {
+#if !defined(__NetBSD__) && !defined(__OpenBSD__)
fprintf(errfp, "%s: %s: %s\n",
PROGNAME,
"Cannot open /dev/sndstat",
"assuming pre-3.0 sound driver.");
maxdevs = MAXDEVS_V2;
+#endif
}
return;
}
@@ -800,7 +810,7 @@ mx_init_hw(widgets_t *m)
/* Open device */
sprintf(errmsg, "%s: Cannot open device %s",
PROGNAME, app_data.device);
- if ((dev_fd = open(app_data.device, O_RDONLY)) < 0) {
+ if ((dev_fd = open(app_data.device, O_RDWR)) < 0) {
perror(errmsg);
exit_flag = TRUE;
}
@@ -915,6 +925,7 @@ void
mx_start(widgets_t *m)
{
char msg[256];
+ int one = 1;
if (app_data.autoload != NULL && app_data.autoload[0] != '\0' &&
strcmp(app_data.autoload, "/dev/null") != 0) {
@@ -930,6 +941,14 @@ mx_start(widgets_t *m)
}
}
+#if defined(__NetBSD__) || defined(__OpenBSD__)
+ signal(SIGIO, mxchg);
+ ioctl(dev_fd, FIOASYNC, &one);
+#endif
+
+ /* Query hardware mixer settings */
+ mx_queryhw(&widgets);
+
/* Update screen controls to match current status */
mx_updctl(m);
}
@@ -1531,6 +1550,22 @@ mx_focuschg(Widget w, XtPointer client_d
if (p->reason != XmCR_FOCUS || form == (Widget) NULL)
return;
+ /* Query hardware mixer settings */
+ mx_queryhw(&widgets);
+
+ /* Update screen controls */
+ mx_updctl(&widgets);
+}
+
+
+/*
+ * mx_change
+ * Mixer device has changed
+ */
+/*ARGSUSED*/
+void
+mx_change(XtPointer client_data)
+{
/* Query hardware mixer settings */
mx_queryhw(&widgets);

View File

@ -0,0 +1,11 @@
$OpenBSD: patch-mixer_h,v 1.1 2002/01/14 13:47:22 naddy Exp $
--- mixer.h.orig Sun Jul 14 19:49:04 1996
+++ mixer.h Mon Jan 14 14:41:27 2002
@@ -78,6 +78,7 @@ extern void mx_about(Widget, XtPointer,
extern void mx_fsok_btn(Widget, XtPointer, XtPointer);
extern void mx_fscancel_btn(Widget, XtPointer, XtPointer);
extern void mx_focuschg(Widget, XtPointer, XtPointer);
+extern void mx_change(XtPointer);
#endif /* __MIXER_H__ */

View File

@ -1,3 +1,4 @@
$OpenBSD: patch-resource_h,v 1.1 2002/01/14 13:47:22 naddy Exp $
--- resource.h.orig Sun Jul 14 19:49:07 1996
+++ resource.h Sun Apr 9 18:35:52 2000
@@ -63,7 +63,7 @@ STATIC XtResource resources[] = {

View File

@ -0,0 +1,39 @@
$OpenBSD: patch-widget_c,v 1.1 2002/01/14 13:47:22 naddy Exp $
--- widget.c.orig Sun Jul 14 19:49:09 1996
+++ widget.c Mon Jan 14 14:41:27 2002
@@ -973,6 +973,10 @@ post_realize_config(widgets_t *m)
delw = XmInternAtom(display, "WM_DELETE_WINDOW", False);
}
+static XtSignalId sigid;
+void deliverSIGIO() {
+ XtNoticeSignal(sigid);
+}
/*
* register_callbacks
@@ -985,7 +989,7 @@ post_realize_config(widgets_t *m)
* Nothing
*/
void
-register_callbacks(widgets_t *m)
+register_callbacks(widgets_t *m, XtAppContext app)
{
int i;
@@ -1126,6 +1130,15 @@ register_callbacks(widgets_t *m)
XmNfocusCallback,
(XtCallbackProc) mx_focuschg, (XtPointer) m->form
);
+
+#if defined(__NetBSD__) || defined(__OpenBSD__)
+ /*
+ * Mixer SIGIO change callback
+ */
+ sigid = XtAppAddSignal(app,
+ (XtSignalCallbackProc) mx_change, (XtPointer) 0
+ );
+#endif
/*
* Install WM_DELETE_WINDOW handler

View File

@ -0,0 +1,12 @@
$OpenBSD: patch-widget_h,v 1.1 2002/01/14 13:47:22 naddy Exp $
--- widget.h.orig Sun Jul 14 19:49:10 1996
+++ widget.h Mon Jan 14 14:41:27 2002
@@ -119,7 +119,7 @@ typedef struct {
extern void widget_init(widgets_t *);
extern void create_widgets(widgets_t *);
extern void post_realize_config(widgets_t *);
-extern void register_callbacks(widgets_t *);
+extern void register_callbacks(widgets_t *, XtAppContext);
#endif /* __WIDGET_H__ */

View File

@ -1,14 +1,5 @@
Xmmix is a sound mixer utility for the X Window System using the
OSF/Motif interface. It requires the Unix Sound System (formerly
"VoxWare") sound driver by Hannu Savolainen (hannu@voxware.pp.fi).
Xmmix is a premium audio mixer utility for the X window system using the
Motif graphical user interface. It operates the input and output mixer
section of the sound hardware on PCs and workstations.
For those of you with access to the WWW (via Netscape, NCSA Mosaic
or other WWW browser), The URL for the xmmix home page is as
follows:
http://sunsite.unc.edu/~cddb/xmmix/
This home page provides up-to-date information about the
current release version, online README file, FTP service to get
the software, an interactive form to send comments and
suggestions, and late breaking announcement, if any.
WWW: ${HOMEPAGE}