Subject: Re: libdaap upgrade and tunesbrowser
To: None <tech-pkg@netbsd.org>
From: Antoine Reilles <Antoine.Reilles@loria.fr>
List: tech-pkg
Date: 03/09/2005 21:13:02
--s9fJI615cBHmzTOP
Content-Type: multipart/mixed; boundary="0eh6TmSyL6TZE2Uz"
Content-Disposition: inline
--0eh6TmSyL6TZE2Uz
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Wed, Mar 09, 2005 at 01:44:59PM +0100, Antoine Reilles wrote:
> the recent update of libdaap broke the tunesbrowser package.
>=20
> I tried to build tunesbrowser-2.0, and did the necessary patches to make
> it work under -current.
> However, it builds fine now, but does not work, because of pthreads
> problems with libdaap.
I have looked at this problem more closely, and found that the bug was
due to a problem in libdaap. In thread.h, there was something like:
pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); \
pthread_mutexattr_destroy(&attr) ; \
pthread_mutex_init(& m, &attr); \
Be setting things in the correct order, i've got a working
tunesbrowser-2.0. I include here my patch to libopendaap (just add a
patch-aa for thread.h), and a patch for tunesbrowser-2.0. I know pkgsrc
is now frozen, but i was not able to build the old tunesbrowser with the
new libopendaap.
regards,
antoine
--0eh6TmSyL6TZE2Uz
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="libopendaap.diff"
Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/audio/libopendaap/distinfo,v
retrieving revision 1.5
diff -u -r1.5 distinfo
--- distinfo 7 Mar 2005 15:30:44 -0000 1.5
+++ distinfo 9 Mar 2005 20:08:23 -0000
@@ -3,6 +3,7 @@
SHA1 (libopendaap-0.3.0.tar.bz2) = 21817a7886ffc8c4d88c621231569562c61356db
RMD160 (libopendaap-0.3.0.tar.bz2) = 2218783e40e7f48a7b89b2e27145e4964f7dd687
Size (libopendaap-0.3.0.tar.bz2) = 365682 bytes
+SHA1 (patch-aa) = 46069794c86a4687eecec576a3d3c0cf56fcd36c
SHA1 (patch-ab) = 3bd01a3038505721149a8ea56f564442b035cee4
SHA1 (patch-ac) = d723c22d11df6d511290d45ccb54861fbecc178d
SHA1 (patch-ad) = 88b72f80e4a6ed68f7ae74ace3f3dbf07709c0b1
--- /dev/null 2005-03-09 21:03:18.000000000 +0100
+++ patches/patch-aa 2005-03-09 21:00:04.000000000 +0100
@@ -0,0 +1,12 @@
+--- thread.h.orig 2005-03-09 20:59:09.000000000 +0100
++++ thread.h 2005-03-09 20:59:23.000000000 +0100
+@@ -42,8 +42,8 @@
+ pthread_mutexattr_t attr; \
+ pthread_mutexattr_init(&attr) ; \
+ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); \
+- pthread_mutexattr_destroy(&attr) ; \
+ pthread_mutex_init(& m, &attr); \
++ pthread_mutexattr_destroy(&attr) ; \
+ } while (0)
+ #define ts_mutex_lock(m) pthread_mutex_lock(& m)
+ #define ts_mutex_unlock(m) pthread_mutex_unlock(& m)
--0eh6TmSyL6TZE2Uz
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="tunesbrowser-2.0.diff"
Content-Transfer-Encoding: quoted-printable
Index: Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /cvsroot/pkgsrc/audio/tunesbrowser/Makefile,v
retrieving revision 1.2
diff -u -r1.2 Makefile
--- Makefile 3 Oct 2004 00:13:10 -0000 1.2
+++ Makefile 9 Mar 2005 20:07:35 -0000
@@ -1,8 +1,7 @@
# $NetBSD: Makefile,v 1.2 2004/10/03 00:13:10 tv Exp $
#
=20
-DISTNAME=3D tunesbrowser-0.1.5
-PKGREVISION=3D 1
+DISTNAME=3D tunesbrowser-0.2.0
CATEGORIES=3D audio
MASTER_SITES=3D http://crazney.net/programs/itunes/files/
EXTRACT_SUFX=3D .tar.bz2
@@ -16,6 +15,8 @@
USE_LIBTOOL=3D yes
LIBTOOL_OVERRIDE=3D ${WRKSRC}/libtool
=20
+CONFIGURE_ARGS+=3D --datadir=3D${PREFIX}/share/tunesbrowser
+
DEPENDS+=3D mad>=3D0.15.0b:../../audio/mad
=20
.include "../../audio/gst-plugins-artsd/buildlink3.mk"
@@ -25,5 +26,6 @@
.include "../../devel/libglade2/buildlink3.mk"
.include "../../devel/pkgconfig/buildlink3.mk"
.include "../../multimedia/gstreamer/buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
=20
.include "../../mk/bsd.pkg.mk"
Index: PLIST
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /cvsroot/pkgsrc/audio/tunesbrowser/PLIST,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 PLIST
--- PLIST 20 Jun 2004 20:41:22 -0000 1.1.1.1
+++ PLIST 9 Mar 2005 20:07:35 -0000
@@ -1,3 +1,9 @@
-@comment $NetBSD: PLIST,v 1.1.1.1 2004/06/20 20:41:22 agc Exp $
+@comment $NetBSD$
bin/tunesbrowser
-share/tunesbrowser.glade
+man/man1/tunesbrowser.1
+share/tunesbrowser/comp.blue.png
+share/tunesbrowser/comp.red.png
+share/tunesbrowser/sound1.png
+share/tunesbrowser/sound2.png
+share/tunesbrowser/tunesbrowser.glade
+@dirrm share/tunesbrowser
Index: distinfo
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /cvsroot/pkgsrc/audio/tunesbrowser/distinfo,v
retrieving revision 1.3
diff -u -r1.3 distinfo
--- distinfo 23 Feb 2005 20:39:53 -0000 1.3
+++ distinfo 9 Mar 2005 20:07:35 -0000
@@ -1,9 +1,6 @@
$NetBSD: distinfo,v 1.3 2005/02/23 20:39:53 agc Exp $
=20
-SHA1 (tunesbrowser-0.1.5.tar.bz2) =3D 31feff440625d2dad664b7e9fb8ec4055aa1=
51ef
-RMD160 (tunesbrowser-0.1.5.tar.bz2) =3D baba93b8c66ddbd39811c2e69b9186fce7=
f6fdfa
-Size (tunesbrowser-0.1.5.tar.bz2) =3D 190729 bytes
-SHA1 (patch-aa) =3D 39d837625a837d4c927bd220d3f3e030b4b122bd
-SHA1 (patch-ab) =3D d9da00f2daf4cdb33ea69f51ffb294f7130765d7
-SHA1 (patch-ac) =3D c0bad452914fb27e73713c2026f33aa3a4bb74d5
-SHA1 (patch-ad) =3D 99d5bcac138e5b7e936c288e7531f2b3c5458c83
+SHA1 (tunesbrowser-0.2.0.tar.bz2) =3D 79195c25d6f6bfdeebe9b1e8eb34b5ca0e18=
5764
+RMD160 (tunesbrowser-0.2.0.tar.bz2) =3D 365aee4d25f4a77efb751b268874bcf0ec=
64db70
+Size (tunesbrowser-0.2.0.tar.bz2) =3D 208472 bytes
+SHA1 (patch-aa) =3D b437f835f3c1614c3bdc73f3eb99e51395bfacf5
Index: patches/patch-aa
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /cvsroot/pkgsrc/audio/tunesbrowser/patches/patch-aa,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 patch-aa
--- patches/patch-aa 20 Jun 2004 20:41:22 -0000 1.1.1.1
+++ patches/patch-aa 9 Mar 2005 20:07:35 -0000
@@ -1,53 +1,25 @@
-$NetBSD: patch-aa,v 1.1.1.1 2004/06/20 20:41:22 agc Exp $
-
---- configure 2004/06/05 22:49:11 1.1
-+++ configure 2004/06/05 22:49:43
-@@ -19625,23 +19625,23 @@
- else
- PKG_CONFIG_MIN_VERSION=3D0.9.0
- if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; =
then
-- echo "$as_me:$LINENO: checking for opendaap libglade-2.0 gstreame=
r-0.6" >&5
--echo $ECHO_N "checking for opendaap libglade-2.0 gstreamer-0.6... $ECHO_C=
" >&6
-+ echo "$as_me:$LINENO: checking for opendaap libglade-2.0 gstreame=
r-0.8" >&5
-+echo $ECHO_N "checking for opendaap libglade-2.0 gstreamer-0.8... $ECHO_C=
" >&6
+--- main.c.orig 2005-03-09 16:08:32.000000000 +0100
++++ main.c 2005-03-09 16:09:04.000000000 +0100
+@@ -38,7 +38,7 @@
+ {
+ fprintf(stderr, "Oops! TunesBrowser has crashed. Sorry about that!\n"=
);
+ fprintf(stderr, "This probably won't be of any use unless you feel li=
ke debugging,\n");
+- fprintf(stderr, "but the crash occured because of %p being bad.\n", s=
iginfo->si_ptr);
++ fprintf(stderr, "but the crash occured because of %p being bad.\n", s=
iginfo->si_addr);
+ #if 0
+ fprintf(stderr, "\n\nRaised SIGSTOP. You can now attach a debugger.\n=
");
+ fprintf(stderr, "Attach to PID %i\n", getpid());
+@@ -66,11 +66,11 @@
+ int ret;
=20
-- if $PKG_CONFIG --exists "opendaap libglade-2.0 gstreamer-0.6" ; t=
hen
-+ if $PKG_CONFIG --exists "opendaap libglade-2.0 gstreamer-0.8" ; t=
hen
- echo "$as_me:$LINENO: result: yes" >&5
- echo "${ECHO_T}yes" >&6
- succeeded=3Dyes
+ sa.sa_handler =3D (void*)sighandler_sigsegv;
+- sa.sa_flags =3D SA_NOMASK | SA_SIGINFO;
++ sa.sa_flags =3D SA_NODEFER | SA_SIGINFO;
+ ret =3D sigaction(SIGSEGV, &sa, NULL);
=20
- echo "$as_me:$LINENO: checking TB_CFLAGS" >&5
- echo $ECHO_N "checking TB_CFLAGS... $ECHO_C" >&6
-- TB_CFLAGS=3D`$PKG_CONFIG --cflags "opendaap libglade-2.0 gstr=
eamer-0.6"`
-+ TB_CFLAGS=3D`$PKG_CONFIG --cflags "opendaap libglade-2.0 gstr=
eamer-0.8"`
- echo "$as_me:$LINENO: result: $TB_CFLAGS" >&5
- echo "${ECHO_T}$TB_CFLAGS" >&6
-=20
- echo "$as_me:$LINENO: checking TB_LIBS" >&5
- echo $ECHO_N "checking TB_LIBS... $ECHO_C" >&6
-- TB_LIBS=3D`$PKG_CONFIG --libs "opendaap libglade-2.0 gstreame=
r-0.6"`
-+ TB_LIBS=3D`$PKG_CONFIG --libs "opendaap libglade-2.0 gstreame=
r-0.8"`
- echo "$as_me:$LINENO: result: $TB_LIBS" >&5
- echo "${ECHO_T}$TB_LIBS" >&6
- else
-@@ -19649,7 +19649,7 @@
- TB_LIBS=3D""
- ## If we have a custom action on failure, don't print errors,=
but
- ## do set a variable so people can do so.
-- TB_PKG_ERRORS=3D`$PKG_CONFIG --errors-to-stdout --print-error=
s "opendaap libglade-2.0 gstreamer-0.6"`
-+ TB_PKG_ERRORS=3D`$PKG_CONFIG --errors-to-stdout --print-error=
s "opendaap libglade-2.0 gstreamer-0.8"`
- echo $TB_PKG_ERRORS
- fi
-=20
-@@ -19664,8 +19664,8 @@
- if test $succeeded =3D yes; then
- :
- else
-- { { echo "$as_me:$LINENO: error: Library requirements (opendaap libg=
lade-2.0 gstreamer-0.6) not met; consider adjusting the PKG_CONFIG_PATH env=
ironment variable if your libraries are in a nonstandard prefix so pkg-conf=
ig can find them." >&5
--echo "$as_me: error: Library requirements (opendaap libglade-2.0 gstreame=
r-0.6) not met; consider adjusting the PKG_CONFIG_PATH environment variable=
if your libraries are in a nonstandard prefix so pkg-config can find them.=
" >&2;}
-+ { { echo "$as_me:$LINENO: error: Library requirements (opendaap libg=
lade-2.0 gstreamer-0.8) not met; consider adjusting the PKG_CONFIG_PATH env=
ironment variable if your libraries are in a nonstandard prefix so pkg-conf=
ig can find them." >&5
-+echo "$as_me: error: Library requirements (opendaap libglade-2.0 gstreame=
r-0.8) not met; consider adjusting the PKG_CONFIG_PATH environment variable=
if your libraries are in a nonstandard prefix so pkg-config can find them.=
" >&2;}
- { (exit 1); exit 1; }; }
- fi
+ sa.sa_handler =3D (void*)sighandler_sigpipe;
+- sa.sa_flags =3D SA_NOMASK | SA_SIGINFO;
++ sa.sa_flags =3D SA_NODEFER | SA_SIGINFO;
+ ret =3D sigaction(SIGPIPE, &sa, NULL);
+ }
=20
--0eh6TmSyL6TZE2Uz--
--s9fJI615cBHmzTOP
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (NetBSD)
iD8DBQFCL1jO4VqmoGDE/mwRAh3xAJ9R8ZuutKEDl7zIeg40u99ufctSGACfVOAP
S6JlTZTehGhgEXkvOtNmCak=
=U/C1
-----END PGP SIGNATURE-----
--s9fJI615cBHmzTOP--