Date: Wed, 1 Sep 2010 22:16:44 GMT From: Rodrigo OSORIO <rodrigo@bebik.net> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/150205: audio/lmms : port fix Message-ID: <201009012216.o81MGicN026669@www.freebsd.org> Resent-Message-ID: <201009012220.o81MK5Ut095570@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 150205 >Category: ports >Synopsis: audio/lmms : port fix >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Sep 01 22:20:04 UTC 2010 >Closed-Date: >Last-Modified: >Originator: Rodrigo OSORIO >Release: 8.1-RELEASE >Organization: >Environment: FreeBSD home 8.1-RELEASE FreeBSD 8.1-RELEASE #0: Mon Jul 19 02:36:49 UTC 2010 root@mason.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64 >Description: audio/lmms was broken due to incompatibles calls to scandir(3) function in different versions of FreeBSD. FreeBSD < 80501 and between 900000 and 900006 uses the old version : int scandir(const char *dirname, struct dirent ***namelist, int (*select)(struct dirent *), int (*compar)(const void *, const void *)); When the versions >= 80501 in 8 branch and > 900006 in 9 branch uses the IEEE Std 1003.1-2008 version : int scandir(const char *dirname, struct dirent ***namelist, int (*select)(const struct dirent *), int (*compar)(const struct dirent **, const struct dirent **)); This patch tries to fix the problem for all the versions, including the current branch. Also request the port maintnership. >How-To-Repeat: >Fix: Patch attached with submission follows: diff -ru lmms/Makefile lmms-new/Makefile --- lmms/Makefile 2010-09-01 23:47:46.000000000 +0200 +++ lmms-new/Makefile 2010-09-01 23:46:46.000000000 +0200 @@ -7,12 +7,12 @@ PORTNAME= lmms PORTVERSION= 0.4.6 -PORTREVISION= 2 +PORTREVISION= 3 PORTEPOCH= 1 CATEGORIES= audio MASTER_SITES= SF -MAINTAINER= ports@FreeBSD.org +MAINTAINER= rodrigo@bebik.net COMMENT= An all-in-one sequencer, drum machine, sampler and more BUILD_DEPENDS= ${LOCALBASE}/include/ladspa.h:${PORTSDIR}/audio/ladspa @@ -54,10 +54,6 @@ .include <bsd.port.pre.mk> -.if ${OSVERSION} >= 800501 -BROKEN= does not build -.endif - .if defined(WITH_JACK) LIB_DEPENDS+= jack.0:${PORTSDIR}/audio/jack .else diff -ru lmms/files/patch-plugins__zynaddsubfx__fltk__src__filename_list.cxx lmms-new/files/patch-plugins__zynaddsubfx__fltk__src__filename_list.cxx --- lmms/files/patch-plugins__zynaddsubfx__fltk__src__filename_list.cxx 2010-09-01 23:47:46.000000000 +0200 +++ lmms-new/files/patch-plugins__zynaddsubfx__fltk__src__filename_list.cxx 2010-09-01 23:26:45.000000000 +0200 @@ -16,7 +16,7 @@ #ifndef HAVE_SCANDIR int n = scandir(d, list, 0, sort); -#elif defined(__hpux) || defined(__CYGWIN__) || (__GLIBC__ >= 2 && __GLIBC_MINOR__ >= 10 ) -+#elif defined(__hpux) || defined(__CYGWIN__) || (__GLIBC__ >= 2 && __GLIBC_MINOR__ >= 10 ) || (defined(__FreeBSD__) && __FreeBSD_version >= 900006) ++#elif defined(__hpux) || defined(__CYGWIN__) || (__GLIBC__ >= 2 && __GLIBC_MINOR__ >= 10 ) || (defined(__FreeBSD__) && ( (__FreeBSD_version < 900000 && __FreeBSD_version >= 800501) || (__FreeBSD_version >= 900006))) // HP-UX, Cygwin and POSIX (2008) define the comparison function like this: int n = scandir(d, list, 0, (int(*)(const dirent **, const dirent **))sort); #elif defined(__osf__) >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201009012216.o81MGicN026669>