rpms/timidity++/F-8 TiMidity++-2.13.2-cfgfile-name.patch, NONE, 1.1 TiMidity++-2.13.2-dynlibroot.patch, NONE, 1.1 TiMidity++-2.13.2-ipv6.patch, NONE, 1.1 .cvsignore, 1.7, 1.8 sources, 1.7, 1.8 timidity++.spec, 1.19, 1.20 TiMidity++-2.13.0-redhat.patch, 1.1, NONE

Hans de Goede (jwrdegoede) fedora-extras-commits at redhat.com
Tue Mar 4 21:27:43 UTC 2008


Author: jwrdegoede

Update of /cvs/extras/rpms/timidity++/F-8
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv15948

Modified Files:
	.cvsignore sources timidity++.spec 
Added Files:
	TiMidity++-2.13.2-cfgfile-name.patch 
	TiMidity++-2.13.2-dynlibroot.patch 
	TiMidity++-2.13.2-ipv6.patch 
Removed Files:
	TiMidity++-2.13.0-redhat.patch 
Log Message:
* Mon Mar  3 2008 Hans de Goede <j.w.r.degoede at hhs.nl> 2.13.2-13
- Merge review fixes (bz 226492)
  - merge patch0 into patch16, drop patch0
  - Make License tag just GPLv2
  - Unify macros usage


TiMidity++-2.13.2-cfgfile-name.patch:

--- NEW FILE TiMidity++-2.13.2-cfgfile-name.patch ---
diff -up TiMidity++-2.13.2/timidity/timidity.c~ TiMidity++-2.13.2/timidity/timidity.c
--- TiMidity++-2.13.2/timidity/timidity.c~	2008-02-28 13:25:00.000000000 +0100
+++ TiMidity++-2.13.2/timidity/timidity.c	2008-02-28 13:25:00.000000000 +0100
@@ -5170,7 +5170,9 @@ MAIN_INTERFACE int timidity_pre_load_con
 
 #else
     /* UNIX */
-    if(!read_config_file(CONFIG_FILE, 0))
+    if(!read_config_file(CONFIG_FILE1, 0))
+		got_a_configuration = 1;
+    else if(!read_config_file(CONFIG_FILE2, 0))
 		got_a_configuration = 1;
 #endif
 
@@ -5240,7 +5240,9 @@ MAIN_INTERFACE int timidity_post_load_co
 
     if(!got_a_configuration)
     {
-	if(try_config_again && !read_config_file(CONFIG_FILE, 0))
+	if(try_config_again && !read_config_file(CONFIG_FILE1, 0))
+	    got_a_configuration = 1;
+	else if(try_config_again && !read_config_file(CONFIG_FILE2, 0))
 	    got_a_configuration = 1;
     }
 
@@ -5695,7 +5697,7 @@ int main(int argc, char **argv)
 #else
 	    ctl->cmsg(CMSG_FATAL, VERB_NORMAL,
 		      "%s: Error reading configuration file.\nPlease check "
-		      CONFIG_FILE, program_name);
+		      CONFIG_FILE1 " or " CONFIG_FILE2, program_name);
 #endif /* __W32__ */
 	}
 	else
diff -up TiMidity++-2.13.2/timidity/timidity.h~ TiMidity++-2.13.2/timidity/timidity.h
--- TiMidity++-2.13.2/timidity/timidity.h~	2008-02-28 13:19:29.000000000 +0100
+++ TiMidity++-2.13.2/timidity/timidity.h	2008-02-28 13:19:29.000000000 +0100
@@ -41,14 +41,8 @@
 
 /* You could specify a complete path, e.g. "/etc/timidity.cfg", and
    then specify the library directory in the configuration file. */
-/* #define CONFIG_FILE "/etc/timidity.cfg" */
-#ifndef CONFIG_FILE
-#  ifdef DEFAULT_PATH
-#    define CONFIG_FILE DEFAULT_PATH "/timidity.cfg"
-#  else
-#    define CONFIG_FILE PKGDATADIR "/timidity.cfg"
-#  endif /* DEFAULT_PATH */
-#endif /* CONFIG_FILE */
+#define CONFIG_FILE1 "/etc/timidity++.cfg"
+#define CONFIG_FILE2 "/etc/timidity.cfg"
 
 
 /* Filename extension, followed by command to run decompressor so that

TiMidity++-2.13.2-dynlibroot.patch:

--- NEW FILE TiMidity++-2.13.2-dynlibroot.patch ---
diff -up TiMidity++-2.13.2/timidity/timidity.c.dynlibroot TiMidity++-2.13.2/timidity/timidity.c
--- TiMidity++-2.13.2/timidity/timidity.c.dynlibroot	2008-02-21 12:41:09.000000000 +0100
+++ TiMidity++-2.13.2/timidity/timidity.c	2008-02-21 12:49:55.000000000 +0100
@@ -554,7 +554,7 @@ MAIN_INTERFACE struct URL_module *url_mo
 #ifndef SHARED_LIB_PATH
 #define SHARED_LIB_PATH PKGLIBDIR
 #endif /* SHARED_LIB_PATH */
-static char *dynamic_lib_root = SHARED_LIB_PATH;
+static char *dynamic_lib_root = NULL;
 #endif /* IA_DYNAMIC */
 
 #ifndef MAXPATHLEN
@@ -2970,8 +2970,7 @@ static inline int parse_opt_d(const char
 {
 	/* dynamic lib root */
 #ifdef IA_DYNAMIC
-	if (dynamic_lib_root)
-		free(dynamic_lib_root);
+	free(dynamic_lib_root);
 	dynamic_lib_root = safe_strdup(arg);
 	return 0;
 #else
@@ -3893,6 +3892,8 @@ static inline int parse_opt_h(const char
 				cmp->id_character, cmp->id_name);
 #endif	/* IA_DYNAMIC */
 #ifdef IA_DYNAMIC
+	if (!dynamic_lib_root)
+		dynamic_lib_root = safe_strdup(SHARED_LIB_PATH);
 	fprintf(fp, "Supported dynamic load interfaces (%s):" NLS,
 			dynamic_lib_root);
 	memset(mark, 0, sizeof(mark));
@@ -3997,6 +3998,8 @@ static inline char *dynamic_interface_in
 	int fd, n;
 	char *nl;
 	
+	if (!dynamic_lib_root)
+		dynamic_lib_root = safe_strdup(SHARED_LIB_PATH);
 	sprintf(libinfo, "%s" PATH_STRING "interface_%c.txt",
 			dynamic_lib_root, id);
 	if ((fd = open(libinfo, 0)) < 0)
@@ -4021,6 +4024,8 @@ char *dynamic_interface_module(int id)
 	static char shared_library[MAXPATHLEN];
 	int fd;
 	
+	if (!dynamic_lib_root)
+		dynamic_lib_root = safe_strdup(SHARED_LIB_PATH);
 	sprintf(shared_library, "%s" PATH_STRING "interface_%c%s",
 			dynamic_lib_root, id, SHARED_LIB_EXT);
 	if ((fd = open(shared_library, 0)) < 0)

TiMidity++-2.13.2-ipv6.patch:

--- NEW FILE TiMidity++-2.13.2-ipv6.patch ---
diff -up TiMidity++-2.13.2/utils/net.c.ipv6 TiMidity++-2.13.2/utils/net.c
--- TiMidity++-2.13.2/utils/net.c.ipv6	2002-07-19 02:46:14.000000000 +0200
+++ TiMidity++-2.13.2/utils/net.c	2008-02-01 14:44:46.000000000 +0100
@@ -58,7 +58,9 @@
 SOCKET open_socket(char *host, unsigned short port)
 {
     SOCKET fd;
-    struct sockaddr_in in;
+    struct addrinfo hints, *result, *rp;
+    char service[NI_MAXSERV];
+    int s;
 
 #if defined(WINSOCK)
     static int first = 1;
@@ -69,27 +71,33 @@ SOCKET open_socket(char *host, unsigned 
     }
 #endif
 
-    memset(&in, 0, sizeof(in));
-    if((in.sin_addr.s_addr = inet_addr(host)) == INADDR_NONE)
-    {
-	struct hostent *hp;
-	if((hp = gethostbyname(host)) == NULL)
-	    return (SOCKET)-1;
-	memcpy(&in.sin_addr, hp->h_addr, hp->h_length);
-    }
-    in.sin_port = htons(port);
-    in.sin_family = AF_INET;
+    memset(&hints, 0, sizeof(struct addrinfo));
+    hints.ai_family = AF_UNSPEC;
+    hints.ai_socktype = SOCK_STREAM;
+    hints.ai_flags = AI_ADDRCONFIG;
+
+    snprintf(service, sizeof(service), "%d", port);
 
-    if((fd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) == INVALID_SOCKET)
-	return (SOCKET)-1;
+    s = getaddrinfo(host, service, &hints, &result);
 
-    if(connect(fd, (struct sockaddr *)&in, sizeof(in)) == SOCKET_ERROR)
+    if (s)
+        return (SOCKET)-1;
+
+    for (rp = result; rp != NULL; rp = rp->ai_next)
     {
-	closesocket(fd);
-	return (SOCKET)-1;
+        fd = socket(rp->ai_family, rp->ai_socktype, rp->ai_protocol);
+
+        if (fd != -1 && connect(fd, rp->ai_addr, rp->ai_addrlen) != -1)
+            break;
+
+        if (fd != -1) {
+            close(fd);
+            fd = -1;
+        }
     }
 
-    return fd;
+    freeaddrinfo(result);
+    return (SOCKET) fd;
 }
 
 #if !defined(__W32__) || defined(__CYGWIN32__)
diff -up TiMidity++-2.13.2/libarc/url_news.c.ipv6 TiMidity++-2.13.2/libarc/url_news.c
--- TiMidity++-2.13.2/libarc/url_news.c.ipv6	2002-07-19 02:09:22.000000000 +0200
+++ TiMidity++-2.13.2/libarc/url_news.c	2008-02-01 14:44:46.000000000 +0100
@@ -288,8 +288,17 @@ URL url_news_open(char *name)
     buff[sizeof(buff) - 1] = '\0';
 
     host = buff;
-    for(p = host; *p && *p != ':' && *p != '/'; p++)
-	;
+    if (host[0] == '[')
+    {
+        if (!(p = strchr(host, ']')))
+            return NULL;
+        *p = '\0';
+        ++host;
+        ++p;
+    } else
+        for(p = host; *p && *p != ':' && *p != '/'; p++)
+	    ;
+
     if(*p == ':')
     {
 	*p++ = '\0'; /* terminate `host' string */
diff -up TiMidity++-2.13.2/libarc/url_ftp.c.ipv6 TiMidity++-2.13.2/libarc/url_ftp.c
--- TiMidity++-2.13.2/libarc/url_ftp.c.ipv6	2002-01-15 11:53:19.000000000 +0100
+++ TiMidity++-2.13.2/libarc/url_ftp.c	2008-02-01 14:44:46.000000000 +0100
@@ -234,6 +234,14 @@ URL url_ftp_open(char *name)
 		*passwd++ = '\0';
 	}
 
+        if (host[0] == '[')
+        {
+            if (!(p = strchr(host, ']')))
+                return NULL;
+            *p = '\0';
+            ++host;
+        } 
+
 #ifdef DEBUG
 	printf("open(host=`%s', port=`%d')\n", host, port);
 #endif /* DEBUG */
diff -up TiMidity++-2.13.2/libarc/url_http.c.ipv6 TiMidity++-2.13.2/libarc/url_http.c
--- TiMidity++-2.13.2/libarc/url_http.c.ipv6	2002-01-15 11:53:19.000000000 +0100
+++ TiMidity++-2.13.2/libarc/url_http.c	2008-02-01 14:44:46.000000000 +0100
@@ -133,8 +133,15 @@ URL url_http_open(char *name)
 	p = name;
 	if(strncmp(p, "http://", 7) == 0)
 	    p += 7;
-	for(q = p; *q && *q != ':' && *q != '/'; q++)
-	    ;
+        if (p[0] == '[')
+        {
+            if (!(q = strchr(p, ']')))
+                return NULL;
+            *q = '\0';
+            ++p;
+        } else
+	    for(q = p; *q && *q != ':' && *q != '/'; q++)
+	        ;
 	len = q - p;
 	if(len >= sizeof(wwwserver) - 1) { /* What?? */
 	    strcpy(wwwserver, "localhost");
@@ -158,8 +165,18 @@ URL url_http_open(char *name)
 	memcpy(buff, name, n + 1);
 
 	host = buff;
-	for(p = host; *p && *p != ':' && *p != '/'; p++)
-	    ;
+
+        if (host[0] == '[')
+        {
+            if (!(p = strchr(host, ']')))
+                return NULL;
+            *p = '\0';
+            ++host;
+            ++p;
+        } else
+            for(p = host; *p && *p != ':' && *p != '/'; p++)
+                ;
+
 	if(*p == ':')
 	{
 	    char *pp;
diff -up TiMidity++-2.13.2/interface/server_c.c.ipv6 TiMidity++-2.13.2/interface/server_c.c
--- TiMidity++-2.13.2/interface/server_c.c.ipv6	2004-09-27 01:40:13.000000000 +0200
+++ TiMidity++-2.13.2/interface/server_c.c	2008-02-01 14:44:46.000000000 +0100
@@ -50,6 +50,7 @@
 #include <sys/socket.h>
 #include <sys/time.h>
 #include <netinet/in.h>
+#include <netdb.h>
 #ifndef NO_STRING_H
 #include <string.h>
 #else
@@ -227,7 +228,7 @@ static double start_time;
 static int tmr_running;
 
 static int is_system_prefix = 0;
-static struct sockaddr_in control_client;
+static struct sockaddr_storage control_client;
 static double low_time_at = 0.3;
 static double high_time_at = 0.5;
 static FILE *outfp;
@@ -294,34 +295,58 @@ static void ctl_event(CtlEvent *e)
 
 static int pasv_open(int *port)
 {
-    int sfd;
-    struct sockaddr_in server;
+    int sfd, s;
+    struct sockaddr_storage server;
+    struct addrinfo hints, *result, *rp;
+    char service[NI_MAXSERV];
 
-    if((sfd = socket(AF_INET, SOCK_STREAM, 0)) < 0)
+    memset(&hints, 0, sizeof(struct addrinfo));
+    hints.ai_family = AF_UNSPEC;
+    hints.ai_socktype = SOCK_STREAM;
+    hints.ai_flags = AI_PASSIVE;
+
+    sprintf(service, "%d", *port);
+    
+    s = getaddrinfo(NULL, service, &hints, &result);
+    if (s)
     {
-	perror("socket");
-	return -1;
+        fprintf(stderr, "getaddrinfo ", gai_strerror(s));
+        return -1;
     }
 
-    memset(&server, 0, sizeof(server));
-    server.sin_port        = htons(*port);
-    server.sin_family      = AF_INET;
-    server.sin_addr.s_addr = htonl(INADDR_ANY);
+    for (rp = result; rp != NULL; rp = rp->ai_next)
+    {
+        sfd = socket(rp->ai_family, rp->ai_socktype, rp->ai_protocol);
+
+        if (sfd == -1)
+            continue;
 
 #ifdef SO_REUSEADDR
-    {
-	int on = 1;
-	setsockopt(sfd, SOL_SOCKET, SO_REUSEADDR, (caddr_t)&on, sizeof(on));
-    }
+        {
+            int on = 1;
+            setsockopt(sfd, SOL_SOCKET, SO_REUSEADDR, (caddr_t)&on, sizeof(on));
+        }
 #endif /* SO_REUSEADDR */
 
-    ctl.cmsg(CMSG_INFO, VERB_DEBUG, "Bind TCP/IP port=%d", *port);
-    if(bind(sfd, (struct sockaddr *)&server, sizeof(server)) < 0)
+        ctl.cmsg(CMSG_INFO, VERB_DEBUG, "Bind TCP/IP port=%d", *port);
+        if (bind(sfd, rp->ai_addr, rp->ai_addrlen) != 0) {
+            perror("bind");
+            close(sfd);
+        } else
+            break;
+
+        close(sfd);
+    }
+
+    if (rp == NULL)
     {
-	perror("bind");
-	close(sfd);
-	return -1;
+        fprintf(stderr, "Could not bind\n");
+        freeaddrinfo(result);
+        return -1;
     }
+
+    freeaddrinfo(result);
+
     if(*port == 0)
     {
 	int len = sizeof(server);
@@ -331,7 +356,17 @@ static int pasv_open(int *port)
 	    close(sfd);
 	    return -1;
 	}
-	*port = ntohs(server.sin_port);
+
+        /* Not quite protocol independent */
+        switch (((struct sockaddr *) &server)->sa_family)
+        {
+            case AF_INET:
+                *port = ntohs(((struct sockaddr_in *) &server)->sin_port);
+                break;
+            case AF_INET6:
+                *port = ntohs(((struct sockaddr_in6 *) &server)->sin6_port);
+                break;
+        }
     }
 
     /* Set it up to wait for connections. */
@@ -847,7 +882,7 @@ static int cmd_help(int argc, char **arg
 static int cmd_open(int argc, char **argv)
 {
     int sock;
-    struct sockaddr_in in;
+    struct sockaddr_storage in;
     int addrlen;
     int port;
 
@@ -881,8 +916,20 @@ static int cmd_open(int argc, char **arg
     }
     close(sock);
 
-    if(control_client.sin_addr.s_addr != in.sin_addr.s_addr)
-	return send_status(513, "Security violation:  Address mismatch");
+    /* Not quite protocol independent */
+    switch (((struct sockaddr *) &control_client)->sa_family)
+    {
+        case AF_INET:
+            if (((struct sockaddr_in *) &control_client)->sin_addr.s_addr !=
+                ((struct sockaddr_in *) &in)->sin_addr.s_addr)
+                return send_status(513, "Security violation: Address mismatch");
+            break;
+        case AF_INET6:
+            if (((struct sockaddr_in6 *) &control_client)->sin6_addr.s6_addr != 
+                ((struct sockaddr_in6 *) &in)->sin6_addr.s6_addr)
+                return send_status(513, "Security violation: Address mismatch");
+            break;
+    }
 
     send_status(200, "Ready data connection");
     data_buffer_len = 0;
diff -up TiMidity++-2.13.2/timidity/timidity.c.ipv6 TiMidity++-2.13.2/timidity/timidity.c
--- TiMidity++-2.13.2/timidity/timidity.c.ipv6	2008-02-01 15:07:26.000000000 +0100
+++ TiMidity++-2.13.2/timidity/timidity.c	2008-02-01 15:03:32.000000000 +0100
@@ -1489,6 +1489,8 @@ MAIN_INTERFACE int read_config_file(char
 	/* #extension HTTPproxy hostname:port */
 	else if(strcmp(w[0], "HTTPproxy") == 0)
 	{
+            char r_bracket, l_bracket;
+
 	    if(words < 2)
 	    {
 		ctl->cmsg(CMSG_ERROR, VERB_NORMAL,
@@ -1500,7 +1502,7 @@ MAIN_INTERFACE int read_config_file(char
 	    /* If network is not supported, this extension is ignored. */
 #ifdef SUPPORT_SOCKET
 	    url_http_proxy_host = safe_strdup(w[1]);
-	    if((cp = strchr(url_http_proxy_host, ':')) == NULL)
+	    if((cp = strrchr(url_http_proxy_host, ':')) == NULL)
 	    {
 		ctl->cmsg(CMSG_ERROR, VERB_NORMAL,
 			  "%s: line %d: Syntax error", name, line);
@@ -1516,11 +1518,30 @@ MAIN_INTERFACE int read_config_file(char
 		CHECKERRLIMIT;
 		continue;
 	    }
+
+            l_bracket = url_http_proxy_host[0];
+            r_bracket = url_http_proxy_host[strlen(url_http_proxy_host) - 1];
+
+            if (l_bracket == '[' || r_bracket == ']')
+            {
+                if (l_bracket != '[' || r_bracket != ']')
+                {
+                    ctl->cmsg(CMSG_ERROR, VERB_NORMAL,
+                              "%s: line %d: Malformed IPv6 address",
+                              name, line);
+                    CHECKERRLIMIT;
+                    continue;
+                }
+                url_http_proxy_host++;
+                url_http_proxy_host[strlen(url_http_proxy_host) - 1] = '\0';
+            } 
 #endif
 	}
 	/* #extension FTPproxy hostname:port */
 	else if(strcmp(w[0], "FTPproxy") == 0)
 	{
+            char l_bracket, r_bracket;
+ 
 	    if(words < 2)
 	    {
 		ctl->cmsg(CMSG_ERROR, VERB_NORMAL,
@@ -1532,7 +1553,7 @@ MAIN_INTERFACE int read_config_file(char
 	    /* If network is not supported, this extension is ignored. */
 #ifdef SUPPORT_SOCKET
 	    url_ftp_proxy_host = safe_strdup(w[1]);
-	    if((cp = strchr(url_ftp_proxy_host, ':')) == NULL)
+	    if((cp = strrchr(url_ftp_proxy_host, ':')) == NULL)
 	    {
 		ctl->cmsg(CMSG_ERROR, VERB_NORMAL,
 			  "%s: line %d: Syntax error", name, line);
@@ -1548,6 +1569,23 @@ MAIN_INTERFACE int read_config_file(char
 		CHECKERRLIMIT;
 		continue;
 	    }
+
+            l_bracket = url_ftp_proxy_host[0];
+            r_bracket = url_ftp_proxy_host[strlen(url_ftp_proxy_host) - 1];
+
+            if (l_bracket == '[' || r_bracket == ']')
+            {
+                if (l_bracket != '[' || r_bracket != ']')
+                {
+                    ctl->cmsg(CMSG_ERROR, VERB_NORMAL,
+                              "%s: line %d: Malformed IPv6 address",
+                              name, line);
+                    CHECKERRLIMIT;
+                    continue;
+                }
+                url_ftp_proxy_host++;
+                url_ftp_proxy_host[strlen(url_ftp_proxy_host) - 1] = '\0';
+            }
 #endif
 	}
 	/* #extension mailaddr somebody at someware.domain.com */


Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/timidity++/F-8/.cvsignore,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- .cvsignore	9 Feb 2005 17:40:56 -0000	1.7
+++ .cvsignore	4 Mar 2008 21:27:09 -0000	1.8
@@ -1,5 +1 @@
-TiMidity++-2.13.0.tar.bz2
-britepno.pat.bz2
-instruments.tar.bz2
-pistol.pat.bz2
 TiMidity++-2.13.2.tar.bz2


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/timidity++/F-8/sources,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- sources	9 Feb 2005 17:40:56 -0000	1.7
+++ sources	4 Mar 2008 21:27:09 -0000	1.8
@@ -1,4 +1 @@
-324e265362f812883024b58cf3470d1a  britepno.pat.bz2
-3ff4264e611f89094a47940e4988ae81  instruments.tar.bz2
-f961325db679de6e0ea402ebe6a268f9  pistol.pat.bz2
 a82ceeb2245e22f4de2b41da21eaee32  TiMidity++-2.13.2.tar.bz2


Index: timidity++.spec
===================================================================
RCS file: /cvs/extras/rpms/timidity++/F-8/timidity++.spec,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- timidity++.spec	11 Dec 2007 10:31:27 -0000	1.19
+++ timidity++.spec	4 Mar 2008 21:27:09 -0000	1.20
@@ -1,16 +1,11 @@
 Summary: A software wavetable MIDI synthesizer
 Name: timidity++
 Version: 2.13.2
-Release: 6%{?dist}
+Release: 13%{?dist}
 Group: Applications/Multimedia
 Source: http://downloads.sourceforge.net/timidity/TiMidity++-%{version}.tar.bz2
-Source1: http://archive.cs.umbc.edu/pub/midia/instruments.tar.bz2
-Source2: timidity.cfg
-Source3: http://www.stardate.bc.ca/eawpatches/eawpats/britepno.pat.bz2
-Source4: http://www.stardate.bc.ca/eawpatches/eawpats/pistol.pat.bz2
-Source5: fedora-timidity.desktop
+Source1: fedora-timidity.desktop
 URL: http://timidity.sourceforge.net
-Patch: TiMidity++-2.13.0-redhat.patch
 Patch3: TiMidity++-2.13.0-detect.patch
 Patch5: TiMidity++-2.13.0-64bit.patch
 Patch6: TiMidity++-2.13.0-warnings.patch
@@ -22,17 +17,20 @@
 Patch11: TiMidity++-2.13.2-misc-fixes.patch
 Patch12: TiMidity++-2.13.2-mlutil.patch
 Patch13: TiMidity++-2.13.2-flac.patch
+# end Debian patches
+Patch14: TiMidity++-2.13.2-ipv6.patch
+Patch15: TiMidity++-2.13.2-dynlibroot.patch
+Patch16: TiMidity++-2.13.2-cfgfile-name.patch
 
 License: GPLv2
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-Obsoletes: timidity++-X11
 BuildRequires: arts-devel esound-devel alsa-lib-devel ncurses-devel gtk2-devel
 BuildRequires: libao-devel libvorbis-devel flac-devel speex-devel
 %ifnarch ppc64
 BuildRequires: jack-audio-connection-kit-devel
 %endif
 BuildRequires: desktop-file-utils
-Requires: %{name}-patches = %{version}-%{release}, hicolor-icon-theme
+Requires: PersonalCopy-Lite-soundfont hicolor-icon-theme
 
 %description
 TiMidity++ is a MIDI format to wave table format converter and
@@ -40,21 +38,8 @@
 sound card does not natively support wave table format.
 
 
-%package        patches
-Summary:        Instrument (patch) files for %{name}
-Group:          Applications/Multimedia
-
-%description    patches
-This package contains samples of instruments (called patches) for use in
-wavetable midi synthesizers like %{name}. These patches are in the Gravis
-Ultasound .pat format and can be used by any wavetable midi synthesizer which
-understands this format.
-
-
 %prep
 %setup -q -n TiMidity++-%{version}
-# Put config files etc. to sane locations
-%patch -p1 -b .redhat
 # Autodetect whether we should use aRts, esd, or neither
 %patch3 -p1 -b .detect
 # fix for x86_64 and s390x
@@ -67,41 +52,38 @@
 %patch11 -p1
 %patch12 -p1
 %patch13 -p1
+%patch14 -p1
+%patch15 -p1
+%patch16 -p1
 
 
 %build
-export EXTRACFLAGS="$RPM_OPT_FLAGS"
+export EXTRACFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE"
 %configure --enable-dynamic --disable-dependency-tracking \
-	--enable-interface=ncurses,vt100,alsaseq,server,network,gtk \
+  --enable-interface=ncurses,vt100,alsaseq,server,network,gtk \
 %ifnarch ppc64
-	--enable-audio=oss,arts,alsa,esd,ao,jack,vorbis,speex,flac
+  --enable-audio=oss,arts,alsa,esd,ao,jack,vorbis,speex,flac
 %else
-	--enable-audio=oss,arts,alsa,esd,ao,vorbis,speex,flac
+  --enable-audio=oss,arts,alsa,esd,ao,vorbis,speex,flac
 %endif
-make
+make %{?_smp_mflags}
 
 
 %install
 rm -rf $RPM_BUILD_ROOT
-
 make install DESTDIR=$RPM_BUILD_ROOT
 
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/timidity $RPM_BUILD_ROOT/etc
-install -m 644 %{SOURCE2} $RPM_BUILD_ROOT/etc/timidity.cfg
-ln -s /etc/timidity.cfg $RPM_BUILD_ROOT%{_datadir}/timidity/timidity.cfg
-pushd $RPM_BUILD_ROOT%{_datadir}/timidity
-tar xvjf %{SOURCE1}
-bzip2 -dck %{SOURCE3} >instruments/britepno.pat
-bzip2 -dck %{SOURCE4} >instruments/pistol.pat
-popd
+mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}
+echo "soundfont %{_datadir}/soundfonts/PCLite.sf2" > \
+  $RPM_BUILD_ROOT/%{_sysconfdir}/timidity++.cfg
 
 mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
 desktop-file-install --vendor fedora              \
   --dir ${RPM_BUILD_ROOT}%{_datadir}/applications \
-  %{SOURCE5}
+  %{SOURCE1}
 
 mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps
-install -m 644 interface/pixmaps/timidity.xpm \
+install -p -m 644 interface/pixmaps/timidity.xpm \
   $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/timidity.xpm
 
 
@@ -126,18 +108,58 @@
 
 %files
 %defattr(-,root,root,-)
+%doc AUTHORS COPYING README NEWS ChangeLog
+%config(noreplace) %{_sysconfdir}/timidity++.cfg
 %{_bindir}/*
 %{_mandir}/*/*
 %{_datadir}/applications/fedora-timidity.desktop
 %{_datadir}/icons/hicolor/48x48/apps/timidity.xpm
 
-%files patches
-%defattr(-,root,root,-)
-%config(noreplace) /etc/timidity.cfg
-%{_datadir}/timidity
-
 
 %changelog
+* Mon Mar  3 2008 Hans de Goede <j.w.r.degoede at hhs.nl> 2.13.2-13
+- Merge review fixes (bz 226492)
+  - merge patch0 into patch16, drop patch0
+  - Make License tag just GPLv2
+  - Unify macros usage
+
+* Thu Feb 28 2008 Hans de Goede <j.w.r.degoede at hhs.nl> 2.13.2-12
+- Stop shipping a timidity++-patches package, investigation into the license
+  of the included patches has turned up doubts about the rights of the author
+  of the midas SGI midi player to release these into the Public Domain
+- Instead require PersonalCopy-Lite-soundfont, and point to PCLite.sf2 in
+  timidity++.cfg
+- Note PersonalCopy-Lite-soundfont also has a PersonalCopy-Lite-patches
+  sub-package with the .sf2 file converted to GUS patch format for other
+  applications who require timidity++-patches to get GUS format patches, this
+  package contains an /etc/timidity.cfg file pointing to the gus patches,
+  therefor the timidity++ package now ships a timidty++.cfg instead of a
+  timidity.cfg
+- Check for /etc/timidity++.cfg before trying /etc/timidity.cfg, see above for
+  rationale
+
+* Thu Feb 21 2008 Jindrich Novy <jnovy at redhat.com> 2.13.2-11
+- rebuild
+
+* Thu Feb 21 2008 Jindrich Novy <jnovy at redhat.com> 2.13.2-10
+- don't free a constant string if -d is specified (#433756),
+  thanks to Andrew Bartlett
+
+* Wed Feb 20 2008 Hans de Goede <j.w.r.degoede at hhs.nl> 2.13.2-9
+- Add IPv6 support, patch by Milan Zazrivec (bz 198467)
+
+* Tue Feb 19 2008 Fedora Release Engineering <rel-eng at fedoraproject.org> - 2.13.2-8
+- Autorebuild for GCC 4.3
+
+* Thu Jan 24 2008 Jindrich Novy <jnovy at redhat.com> 2.13.2-7
+- merge review fixes, thanks to Mamoru Tasaka: (#226492)
+  - update License tag (still unclear what to do with GUS patches)
+  - remove useless unversioned obsolete timidity++-X11
+  - substitute /etc with %%{_sysconfdir}
+  - enable parallel build
+  - preserve timestamps, tar unpacking is no more verbose
+  - add docs
+
 * Tue Dec 11 2007 Hans de Goede <j.w.r.degoede at hhs.nl> 2.13.2-6
 - Disable building of the jack output on powerpc64, as that mysteriously fails
   to build there.


--- TiMidity++-2.13.0-redhat.patch DELETED ---




More information about the fedora-extras-commits mailing list