summaryrefslogtreecommitdiffstats
path: root/devel
diff options
context:
space:
mode:
authorahze <ahze@df743ca5-7f9a-e211-a948-0013205c9059>2006-09-15 04:29:24 +0800
committerahze <ahze@df743ca5-7f9a-e211-a948-0013205c9059>2006-09-15 04:29:24 +0800
commit2e19bb9a214f4b097fd15c8bd683a0f39902518c (patch)
tree85f39f56d0cf66b64cd13047f0611e98632aa262 /devel
parentd6dbac1cdf74a65aebca15878d9758f95a8b54a7 (diff)
downloadmarcuscom-ports-2e19bb9a214f4b097fd15c8bd683a0f39902518c.tar
marcuscom-ports-2e19bb9a214f4b097fd15c8bd683a0f39902518c.tar.gz
marcuscom-ports-2e19bb9a214f4b097fd15c8bd683a0f39902518c.tar.bz2
marcuscom-ports-2e19bb9a214f4b097fd15c8bd683a0f39902518c.tar.lz
marcuscom-ports-2e19bb9a214f4b097fd15c8bd683a0f39902518c.tar.xz
marcuscom-ports-2e19bb9a214f4b097fd15c8bd683a0f39902518c.tar.zst
marcuscom-ports-2e19bb9a214f4b097fd15c8bd683a0f39902518c.zip
- Add pwlib with a patch to fix linking with pthread with net/ekiga and others
git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@7303 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'devel')
-rw-r--r--devel/pwlib/Makefile139
-rw-r--r--devel/pwlib/distinfo3
-rw-r--r--devel/pwlib/files/patch-Makefile.in26
-rw-r--r--devel/pwlib/files/patch-configureac163
-rw-r--r--devel/pwlib/files/patch-make::lib.mak51
-rw-r--r--devel/pwlib/files/patch-plugins-Makefile.in18
-rw-r--r--devel/pwlib/files/patch-plugins-configure347
-rw-r--r--devel/pwlib/files/patch-plugins-sound_esd-Makefile11
-rw-r--r--devel/pwlib/files/patch-plugins-sound_esd-sound_esd.h22
-rw-r--r--devel/pwlib/files/patch-plugins-vidinput_avc-Makefile11
-rw-r--r--devel/pwlib/files/patch-plugins-vidinput_bsd-vidinput_bsd.cxx43
-rw-r--r--devel/pwlib/files/patch-plugins-vidinput_bsd-vidinput_bsd.h100
-rw-r--r--devel/pwlib/files/patch-plugins-vidinput_dc-Makefile.in11
-rw-r--r--devel/pwlib/files/patch-src-ptlib-unix-udll.cxx13
-rw-r--r--devel/pwlib/files/patch-src_ptlib_common_jidctflt.cxx12
-rw-r--r--devel/pwlib/files/patch-unixmak34
-rw-r--r--devel/pwlib/pkg-descr7
-rw-r--r--devel/pwlib/pkg-plist181
18 files changed, 1192 insertions, 0 deletions
diff --git a/devel/pwlib/Makefile b/devel/pwlib/Makefile
new file mode 100644
index 000000000..2dc55f742
--- /dev/null
+++ b/devel/pwlib/Makefile
@@ -0,0 +1,139 @@
+# New ports collection makefile for: pwlib
+# Date created: Fri Aug 22 07:11:44 GMT 2003
+# Whom: Roger Hardiman <roger@freebsd.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= pwlib
+PORTVERSION= 1.10.1
+PORTREVISION= 1
+PORTEPOCH= 1
+CATEGORIES= devel
+MASTER_SITES= http://www.voxgratia.org/releases/
+DISTNAME= ${PORTNAME}-v${PORTVERSION:S/./_/g}-src-
+EXTRACT_SUFX= tar.gz
+
+MAINTAINER= steve@energistic.com
+COMMENT= A cross platform C++ library, used by OpenH323
+
+LIB_DEPENDS= expat.6:${PORTSDIR}/textproc/expat2
+
+WRKSRC= ${WRKDIR}/pwlib_Phobos_release2/
+
+USE_BISON= yes
+USE_GMAKE= yes
+USE_AUTOTOOLS= autoconf:259
+WANT_GNOME= yes
+WANT_SDL= yes
+USE_OPENSSL= yes
+NO_FILTER_SHLIBS= yes
+INSTALLS_SHLIB= yes
+
+.include <bsd.port.pre.mk>
+
+CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS} -O1 -I${WRKSRC}/include -I${LOCALBASE}/include" \
+ LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib" \
+ PTHREAD_LIBS="${PTHREAD_LIBS}" \
+ CFLAGS="${CFLAGS} -O1"
+MAKE_ENV= CPPFLAGS="${CPPFLAGS} -O1 -I${WRKSRC}/include -I${LOCALBASE}/include" \
+ LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib" \
+ STDCCFLAGS+="-I${LOCALBASE}" \
+ CFLAGS="${CFLAGS} -O1"
+
+# if explicitely asked for, depend upon it
+.if defined(WITH_SDL)
+USE_SDL+= sdl
+CONFIGURE_ENV+= SDLLIBDIR="${LOCALBASE}/lib"
+MAKE_ENV+= SDLLIBDIR="${LOCALBASE}/lib"
+.endif
+
+# if explicitely disabled, do not depend upon it
+.if defined(WITHOUT_SDL)
+CONFIGURE_ARGS+= --disable-sdl
+.endif
+
+# if nobody cares, use it if it is installed already
+.if !defined(WITHOUT_SDL) && !defined(WITH_SDL)
+.if ${HAVE_SDL:Msdl}
+USE_SDL+= sdl
+CONFIGURE_ENV+= SDLLIBDIR="${LOCALBASE}/lib"
+MAKE_ENV+= SDLLIBDIR="${LOCALBASE}/lib"
+.else
+CONFIGURE_ARGS+= --disable-sdl
+.endif
+.endif
+
+.if !defined(WITHOUT_PLUGINS)
+CONFIGURE_ARGS+= --enable-plugins
+.endif
+
+#disable OpenLDAP support in PWLIB
+.if defined(WITHOUT_LDAP)
+CONFIGURE_ARGS+= --disable-openldap
+.else
+USE_OPENLDAP= yes
+CONFIGURE_ENV+= OPENLDAPLIBDIR="${LOCALBASE}/lib"
+MAKE_ENV+= OPENLDAPLIBDIR="${LOCALBASE}/lib"
+.endif
+
+#enable esound support
+.if defined(WITH_ESOUND) && ${HAVE_GNOME:Mesound}!=""
+USE_GNOME+= esound
+CONFIGURE_ARGS+= --enable-esd
+PLIST_SUB+= ESD=""
+.else
+CONFIGURE_ARGS+= --disable-esd
+PLIST_SUB+= ESD="@comment "
+.endif
+
+# ONLY FOR THE BRAVE!
+# If someone owns a firewire(4) video device and wants to use it for
+# video-conferencing purposes, please download the files:
+# libraw1394.shar.gz, libavc1394.shar.gz and libdc1394.shar.gz from
+# ftp://ftp.frm2.tum.de/pub/jpulz/FreeBSD/ports/
+# Extract the files in ${PORTSDIR}/devel and uncomment the following lines.
+#
+##enable libavc1394
+#.if defined(WITH_AVC1394)
+#LIB_DEPENDS+= avc1394.2:${PORTSDIR}/devel/libavc1394 \
+# dv.4:${PORTSDIR}/multimedia/libdv
+#CONFIGURE_ARGS+= --enable-avc
+#PLIST_SUB+= AVC1394=""
+#.else
+CONFIGURE_ARGS+= --disable-avc
+PLIST_SUB+= AVC1394="@comment "
+#.endif
+#
+##enable libdc1394
+#.if defined(WITH_DC1394)
+#LIB_DEPENDS+= dc1394_control.13:${PORTSDIR}/devel/libdc1394
+#CONFIGURE_ARGS+= --enable-dc
+#PLIST_SUB+= DC1394=""
+#.else
+CONFIGURE_ARGS+= --disable-dc
+PLIST_SUB+= DC1394="@comment "
+#.endif
+
+.if (${ARCH} == "amd64") || (${ARCH} == "ia64") || (${ARCH} == "sparc64")
+CFLAGS+= -fPIC
+.endif
+
+.if (${ARCH} == "i386") || (${ARCH} == "ia64") || (${ARCH} == "amd64") || (${ARCH} == "sparc64")
+PLIST_SUB+= BSDVIDEO=""
+.else
+PLIST_SUB+= BSDVIDEO="@comment "
+.endif
+
+post-patch:
+.if ${ARCH} == sparc64 && ${OSVERSION} <= 700003
+ @${REINPLACE_CMD} -e 's|P_PTHREADS_XPG6|0|' \
+ ${WRKSRC}/src/ptlib/unix/tlibthrd.cxx
+.endif
+.if ${OSVERSION} < 500000
+ @${REINPLACE_CMD} -e 's|<stdint.h>|<inttypes.h>|' \
+ ${WRKSRC}/src/ptlib/common/tinyjpeg.cxx \
+ ${WRKSRC}/src/ptlib/common/jidctflt.cxx
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/devel/pwlib/distinfo b/devel/pwlib/distinfo
new file mode 100644
index 000000000..22ad328f5
--- /dev/null
+++ b/devel/pwlib/distinfo
@@ -0,0 +1,3 @@
+MD5 (pwlib-v1_10_1-src-tar.gz) = 1d0ae5543db30588a49465138e6f3406
+SHA256 (pwlib-v1_10_1-src-tar.gz) = d7c18b8490be748fd05042a8d8ac135379fe9f9b56d44439eec3b24951cfe954
+SIZE (pwlib-v1_10_1-src-tar.gz) = 2078624
diff --git a/devel/pwlib/files/patch-Makefile.in b/devel/pwlib/files/patch-Makefile.in
new file mode 100644
index 000000000..b267f3ef2
--- /dev/null
+++ b/devel/pwlib/files/patch-Makefile.in
@@ -0,0 +1,26 @@
+
+$FreeBSD$
+
+--- Makefile.in
++++ Makefile.in
+@@ -257,18 +254,10 @@
+ $(DESTDIR)$(PREFIX)/share/pwlib/make ; \
+ do mkdir -p $$dir ; chmod 755 $$dir ; \
+ done )
+- $(INSTALL) -m 444 lib/$(PTLIB_FILE).@MAJOR_VERSION@.@MINOR_VERSION@.@BUILD_NUMBER@ $(DESTDIR)$(LIBDIR)
+- (cd $(DESTDIR)$(LIBDIR) ; \
+- rm -f $(PTLIB_FILE).@MAJOR_VERSION@.@MINOR_VERSION@ ; \
+- ln -sf $(PTLIB_FILE).@MAJOR_VERSION@.@MINOR_VERSION@.@BUILD_NUMBER@ $(PTLIB_FILE).@MAJOR_VERSION@.@MINOR_VERSION@ \
+- )
+- (cd $(DESTDIR)$(LIBDIR) ; \
+- rm -f $(PTLIB_FILE).@MAJOR_VERSION@ ; \
+- ln -sf $(PTLIB_FILE).@MAJOR_VERSION@.@MINOR_VERSION@.@BUILD_NUMBER@ $(PTLIB_FILE).@MAJOR_VERSION@ \
+- )
++ $(INSTALL) -m 444 lib/$(PTLIB_FILE).@MAJOR_VERSION@ $(DESTDIR)$(LIBDIR)
+ (cd $(DESTDIR)$(LIBDIR) ; \
+ rm -f $(PTLIB_FILE) ; \
+- ln -sf $(PTLIB_FILE).@MAJOR_VERSION@.@MINOR_VERSION@.@BUILD_NUMBER@ $(PTLIB_FILE) \
++ ln -sf $(PTLIB_FILE).@MAJOR_VERSION@ $(PTLIB_FILE) \
+ )
+ (cd $(DESTDIR)$(LIBDIR); \
+ rm -f libpt.@SHAREDLIBEXT@ ; \
diff --git a/devel/pwlib/files/patch-configureac b/devel/pwlib/files/patch-configureac
new file mode 100644
index 000000000..e8da151aa
--- /dev/null
+++ b/devel/pwlib/files/patch-configureac
@@ -0,0 +1,163 @@
+--- configure.ac.orig Wed Feb 22 12:53:28 2006
++++ configure.ac Sun May 7 14:19:18 2006
+@@ -136,7 +136,7 @@
+ x86 | i686 | i586 | i486 | i386 ) MACHTYPE=x86
+ ;;
+
+- x86_64) MACHTYPE=x86_64 ;
++ x86_64|amd64) MACHTYPE=x86_64 ;
+ P_64BIT=1 ;
+ LIB64=1 ;
+ ;;
+@@ -278,7 +278,7 @@
+
+ AC_MSG_CHECKING(if linker accepts -Wreorder)
+ AC_LANG_CONFTEST([[int main(int ac,char **av) { return 0; }]])
+-$STDCXX $CXXFLAGS -Wreorder conftest.cc > /dev/null 2>&1
++$CXX $CXXFLAGS -Wreorder conftest.cc > /dev/null 2>&1
+ if test $? = 0 ; then
+ AC_MSG_RESULT(yes)
+ STDCXXFLAGS="$STDCXXFLAGS -Wreorder"
+@@ -291,7 +291,7 @@
+ # $CXX $CFLAGS -Woverloaded-virtual conftest.cc > /dev/null 2>&1
+ # if test $? = 0 ; then
+ # AC_MSG_RESULT(yes)
+-# STDCCFLAGS="$STDCCFLAGS -Woverloaded-virtual"
++# STDCXXFLAGS="$STDCCFLAGS -Woverloaded-virtual"
+ # else
+ # AC_MSG_RESULT(no)
+ # fi
+@@ -320,7 +320,7 @@
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_RESULT(no)
+- STDCXXFLAGS="$STDCCFLAGS -rtti"
++ STDCXXFLAGS="$STDCXXFLAGS -rtti"
+ fi
+
+ GCSECTIONS=0
+@@ -341,7 +341,7 @@
+ $CXX $CFLAGS -ffunction-sections -c conftest.cc > /dev/null 2>&1
+ if test $? = 0 ; then
+ AC_MSG_RESULT(yes)
+- STDCCFLAGS="$STDCCFLAGS -ffunction-sections"
++ STDCXXFLAGS="$STDCXXFLAGS -ffunction-sections"
+ GCSECTIONS=1
+ else
+ AC_MSG_RESULT(no)
+@@ -357,7 +357,7 @@
+ dnl $CXX $CFLAGS -fdata-sections -c conftest.cc > /dev/null 2>&1
+ dnl if test $? = 0 ; then
+ dnl AC_MSG_RESULT(yes)
+- dnl STDCCFLAGS="$STDCCFLAGS -fdata-sections"
++ dnl STDCXXFLAGS="$STDCXXFLAGS -fdata-sections"
+ dnl GCSECTIONS=1
+ dnl else
+ dnl AC_MSG_RESULT(no)
+@@ -370,7 +370,7 @@
+ dnl $CXX $CFLAGS -fvtable-gc -c conftest.cc > /dev/null 2>&1
+ dnl if test $? = 0 ; then
+ dnl AC_MSG_RESULT(yes)
+- dnl STDCCFLAGS="$STDCCFLAGS -fvtable-gc"
++ dnl STDCXXFLAGS="$STDCXXFLAGS -fvtable-gc"
+ dnl GCSECTIONS=1
+ dnl else
+ dnl AC_MSG_RESULT(no)
+@@ -689,18 +689,18 @@
+ dnl MSWIN_DISPLAY semaphore,Semaphore Support
+ dnl MSWIN_DEFINE semaphore,P_HAS_SEMAPHORES
+
+-dnl Linux, Mac OS X use libpthread and -lpthread
+-dnl FreeBSD uses the -pthread compiler option and uses libc_r
++dnl FreeBSD >= 5.x, Linux, Mac OS X use libpthread and -lpthread
++dnl FreeBSD < 5.x uses the -pthread compiler option and uses libc_r
+
+ AC_CHECK_LIB(pthread, pthread_create, HAS_PTHREADS=yes, HAS_PTHREADS=no)
+ if test ${HAS_PTHREADS} = yes ; then
+- ENDLDLIBS="$ENDLDLIBS -lpthread"
+- STDCCFLAGS="$STDCCFLAGS -D_REENTRANT"
++ ENDLDLIBS="$ENDLDLIBS ${PTHREAD_LIBS}"
++ STDCCFLAGS="$STDCCFLAGS -D_REENTRANT ${PTHREAD_LIBS}"
+ else
+ if test ${OSTYPE} = FreeBSD ; then
+ HAS_PTHREADS=yes
+- ENDLDLIBS="$ENDLDLIBS -pthread"
+- STDCCFLAGS="$STDCCFLAGS -D_REENTRANT -pthread"
++ ENDLDLIBS="$ENDLDLIBS ${PTHREAD_LIBS}"
++ STDCCFLAGS="$STDCCFLAGS -D_REENTRANT ${PTHREAD_LIBS}"
+ fi
+ fi
+
+@@ -1253,7 +1253,7 @@
+ else
+ AC_CHECK_HEADERS(expat.h, HAS_EXPAT=1)
+ if test "${HAS_EXPAT:-unset}" != "unset" ; then
+- AC_CHECK_LIB(expat, XML_ParserCreate, HAS_EXPAT=1, HAS_EXPAT=)
++ AC_SEARCH_LIBS(XML_ParserCreate, expat, HAS_EXPAT=1, HAS_EXPAT=)
+ else
+ AC_CHECK_FILE(/usr/local/include/expat.h, HAS_EXPAT=1)
+ if test "${HAS_EXPAT:-unset}" != "unset" ; then
+@@ -1428,7 +1428,8 @@
+ if test $HAS_IPV6 = no ; then
+ AC_MSG_RESULT(no)
+ else
+- AC_TRY_COMPILE([#include <sys/socket.h>
++ AC_TRY_COMPILE([#include <stddef.h>
++ #include <sys/socket.h>
+ #include <netdb.h>],
+ [getnameinfo(NULL, 0, NULL, 0, NULL, 0, 0);], HAS_IPV6=yes, HAS_IPV6=no)
+ if test $HAS_IPV6 = no ; then
+@@ -1485,7 +1486,7 @@
+ HAS_SDL=
+ if test "$enable_sdl" = "no" ; then
+ AC_MSG_NOTICE(SDL disabled)
+- AC_DEFINE(P_SDL, 0)
++# AC_DEFINE(P_SDL, 0)
+ else
+ dnl SDL checks
+ if test "${SDLLIB:-unset}" = "unset" ; then
+@@ -1501,9 +1502,9 @@
+ AC_CHECK_LIB(SDL, SDL_CreateYUVOverlay, HAS_SDL=1, HAS_SDL=, -L${X11LIBDIR} -lpthread -lX11 -lXext)
+ fi
+
+- dnl freeBSD SDL check
++ dnl FreeBSD SDL check
+ if test "${HAS_SDL:-unset}" = "unset" ; then
+- AC_CHECK_FILE(/usr/local/include/SDL11/SDL.h, HAS_SDL=1)
++ AC_CHECK_HEADER(SDL11/SDL.h, HAS_SDL=1)
+ if test "${HAS_SDL:-unset}" != "unset" ; then
+ SDLLIB=SDL-1.1
+ fi
+@@ -1527,7 +1528,7 @@
+ dnl ########################################################################
+ dnl check for video capture support.
+ dnl videodev.h on linux
+-dnl machine/ioctl_meteor on FreeBSD
++dnl machine/ioctl_meteor or dev/bktr/ioctl_meteor.h on FreeBSD
+ dnl i386/ioctl_meteor on OpenBSD
+ dnl dev/ic/bt8xx on NetBSD
+
+@@ -1553,9 +1554,10 @@
+ HAS_VIDEO_CAPTURE=1
+ else
+ AC_CHECK_HEADER(linux/videodev.h, HAS_VIDEO_CAPTURE=1)
+- dnl AC_CHECK_HEADER(machine/ioctl_meteor.h, HAS_VIDEO_CAPTURE=1)
+- dnl AC_CHECK_HEADER(i386/ioctl_meteor.h, HAS_VIDEO_CAPTURE=1)
+- dnl AC_CHECK_HEADER(dev/ic/bt8xx.h, HAS_VIDEO_CAPTURE=1)
++ AC_CHECK_HEADER(machine/ioctl_meteor.h, HAS_VIDEO_CAPTURE=1)
++ AC_CHECK_HEADER(dev/bktr/ioctl_meteor.h, HAS_VIDEO_CAPTURE=1)
++ AC_CHECK_HEADER(i386/ioctl_meteor.h, HAS_VIDEO_CAPTURE=1)
++ AC_CHECK_HEADER(dev/ic/bt8xx.h, HAS_VIDEO_CAPTURE=1)
+ if test "${HAS_VIDEO_CAPTURE}z" = "z" ; then
+ AC_MSG_NOTICE(No Video Capture support)
+ AC_DEFINE([NO_VIDEO_CAPTURE], [], [No video capture])
+@@ -2046,6 +2048,9 @@
+ AC_MSG_NOTICE(C++ exceptions enabled)
+ STDCCFLAGS="$STDCCFLAGS -fno-exceptions"
+ fi
++
++STDCCFLAGS="$CPPFLAGS $STDCCFLAGS"
++STDCXXFLAGS="$CPPFLAGS $STDCXXFLAGS"
+
+ dnl ########################################################################
+ dnl final declarations
diff --git a/devel/pwlib/files/patch-make::lib.mak b/devel/pwlib/files/patch-make::lib.mak
new file mode 100644
index 000000000..c5098242f
--- /dev/null
+++ b/devel/pwlib/files/patch-make::lib.mak
@@ -0,0 +1,51 @@
+
+$FreeBSD$
+
+--- make/lib.mak
++++ make/lib.mak
+@@ -130,12 +127,18 @@
+ #
+
+ ifneq ($(OSTYPE),Darwin)
+- LIBNAME_MAJ = $(LIB_FILENAME).$(MAJOR_VERSION)
+- LIBNAME_MIN = $(LIBNAME_MAJ).$(MINOR_VERSION)
+- ifeq ($(BUILD_TYPE),.)
+- LIBNAME_PAT = $(LIBNAME_MIN).$(BUILD_NUMBER)
++ ifeq ($(OSTYPE),FreeBSD)
++ LIBNAME_MAJ = $(LIB_FILENAME).$(MAJOR_VERSION)
++ LIBNAME_MIN = $(LIBNAME_MAJ)
++ LIBNAME_PAT = $(LIBNAME_MAJ)
+ else
+- LIBNAME_PAT = $(LIBNAME_MIN)-$(BUILD_TYPE)$(BUILD_NUMBER)
++ LIBNAME_MAJ = $(LIB_FILENAME).$(MAJOR_VERSION)
++ LIBNAME_MIN = $(LIBNAME_MAJ).$(MINOR_VERSION)
++ ifeq ($(BUILD_TYPE),.)
++ LIBNAME_PAT = $(LIBNAME_MIN).$(BUILD_NUMBER)
++ else
++ LIBNAME_PAT = $(LIBNAME_MIN)-$(BUILD_TYPE)$(BUILD_NUMBER)
++ endif
+ endif
+ else
+ LIBNAME_MAJ = $(subst .$(LIB_SUFFIX),.$(MAJOR_VERSION).$(LIB_SUFFIX),$(LIB_FILENAME))
+@@ -212,8 +215,10 @@
+
+ $(LIBDIR)/$(LIB_FILENAME): $(LIBDIR)/$(LIBNAME_PAT)
+ cd $(LIBDIR) ; rm -f $(LIB_FILENAME) ; ln -sf $(LIBNAME_PAT) $(LIB_FILENAME)
++ifneq ($(OSTYPE),FreeBSD)
+ cd $(LIBDIR) ; rm -f $(LIBNAME_MAJ) ; ln -sf $(LIBNAME_PAT) $(LIBNAME_MAJ)
+ cd $(LIBDIR) ; rm -f $(LIBNAME_MIN) ; ln -sf $(LIBNAME_PAT) $(LIBNAME_MIN)
++endif
+
+ $(LIBDIR)/$(LIBNAME_PAT): $(STATIC_LIB_FILE)
+ @echo EXTLIBS = $(EXTLIBS)
+@@ -224,8 +229,10 @@
+ install: $(LIBDIR)/$(LIBNAME_PAT)
+ $(INSTALL) $(LIBDIR)/$(LIBNAME_PAT) $(INSTALLLIB_DIR)/$(LIBNAME_PAT)
+ ln -sf $(LIBNAME_PAT) $(INSTALLLIB_DIR)/$(LIB_FILENAME)
++ifneq ($(OSTYPE),FreeBSD)
+ ln -sf $(LIBNAME_PAT) $(INSTALLLIB_DIR)/$(LIBNAME_MAJ)
+ ln -sf $(LIBNAME_PAT) $(INSTALLLIB_DIR)/$(LIBNAME_MIN)
++endif
+
+ endif # P_SHAREDLIB
+
diff --git a/devel/pwlib/files/patch-plugins-Makefile.in b/devel/pwlib/files/patch-plugins-Makefile.in
new file mode 100644
index 000000000..d7d1524ae
--- /dev/null
+++ b/devel/pwlib/files/patch-plugins-Makefile.in
@@ -0,0 +1,18 @@
+--- plugins/Makefile.in.orig Thu Apr 6 10:15:56 2006
++++ plugins/Makefile.in Thu Apr 6 10:18:41 2006
+@@ -22,6 +22,15 @@
+ endif
+ endif
+
++HAS_ESD = @HAS_ESD@
++
++ifeq (1,$(HAS_ESD))
++SUBDIRS += sound_esd
++ifeq (,$(DEFAULT_SOUND))
++DEFAULT_SOUND = sound_esd
++endif
++endif
++
+ HAS_SUNAUDIO = @HAS_SUNAUDIO@
+
+ ifeq (1,$(HAS_SUNAUDIO))
diff --git a/devel/pwlib/files/patch-plugins-configure b/devel/pwlib/files/patch-plugins-configure
new file mode 100644
index 000000000..6f30e76f9
--- /dev/null
+++ b/devel/pwlib/files/patch-plugins-configure
@@ -0,0 +1,347 @@
+--- plugins/configure.orig Thu Apr 6 10:16:09 2006
++++ plugins/configure Thu Apr 6 09:56:04 2006
+@@ -309,7 +309,7 @@
+ # include <unistd.h>
+ #endif"
+
+-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT PWLIBDIR PWINSTDIR INSTALLPREFIX LIBDIR CC CFLAGS ac_ct_CC CPP EGREP HAS_ALSA HAS_OSS HAS_SUNAUDIO HAS_V4L HAS_V4L2 HAS_BSDVIDEOCAP HAS_AVC1394 HAS_DC1394 DC_CFLAGS LIBOBJS LTLIBOBJS'
++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT PWLIBDIR PWINSTDIR INSTALLPREFIX LIBDIR CC CFLAGS ac_ct_CC CPP EGREP HAS_ALSA HAS_OSS HAS_ESD HAS_SUNAUDIO HAS_V4L HAS_V4L2 HAS_BSDVIDEOCAP HAS_AVC1394 HAS_DC1394 DC_CFLAGS LIBOBJS LTLIBOBJS'
+ ac_subst_files=''
+
+ # Initialize some variables set by options.
+@@ -852,6 +852,7 @@
+ --disable-audio disable audio support
+ --enable-alsa enable ALSA audio support
+ --enable-oss enable OSS audio support
++ --enable-esd enable ESD audio support
+ --enable-sunaudio enable Sun audio support
+ --disable-video disable video device support in PWLIB
+ --enable-v4l enable V4L video support
+@@ -3444,6 +3459,172 @@
+ fi
+
+
++# Check whether --enable-esd or --disable-esd was given.
++if test "${enable_esd+set}" = set; then
++ enableval="$enable_esd"
++
++else
++ enable_oss=yes
++fi;
++
++if test "${enable_esd}z" = "yesz" ; then
++ if test "${ac_cv_header_esd_h+set}" = set; then
++ echo "$as_me:$LINENO: checking for esd.h" >&5
++echo $ECHO_N "checking for esd.h... $ECHO_C" >&6
++if test "${ac_cv_header_esd_h+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_esd_h" >&5
++echo "${ECHO_T}$ac_cv_header_esd_h" >&6
++else
++ # Is the header compilable?
++echo "$as_me:$LINENO: checking esd.h usability" >&5
++echo $ECHO_N "checking esd.h usability... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++#include <esd.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -z "$ac_c_werror_flag"
++ || test ! -s conftest.err'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_header_compiler=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_header_compiler=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6
++
++# Is the header present?
++echo "$as_me:$LINENO: checking esd.h presence" >&5
++echo $ECHO_N "checking esd.h presence... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <esd.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } >/dev/null; then
++ if test -s conftest.err; then
++ ac_cpp_err=$ac_c_preproc_warn_flag
++ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++ else
++ ac_cpp_err=
++ fi
++else
++ ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
++ ac_header_preproc=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ ac_header_preproc=no
++fi
++rm -f conftest.err conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6
++
++# So? What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++ yes:no: )
++ { echo "$as_me:$LINENO: WARNING: esd.h: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: esd.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++ { echo "$as_me:$LINENO: WARNING: esd.h: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: esd.h: proceeding with the compiler's result" >&2;}
++ ac_header_preproc=yes
++ ;;
++ no:yes:* )
++ { echo "$as_me:$LINENO: WARNING: esd.h: present but cannot be compiled" >&5
++echo "$as_me: WARNING: esd.h: present but cannot be compiled" >&2;}
++ { echo "$as_me:$LINENO: WARNING: esd.h: check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: esd.h: check for missing prerequisite headers?" >&2;}
++ { echo "$as_me:$LINENO: WARNING: esd.h: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: esd.h: see the Autoconf documentation" >&2;}
++ { echo "$as_me:$LINENO: WARNING: esd.h: section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: esd.h: section \"Present But Cannot Be Compiled\"" >&2;}
++ { echo "$as_me:$LINENO: WARNING: esd.h: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: esd.h: proceeding with the preprocessor's result" >&2;}
++ { echo "$as_me:$LINENO: WARNING: esd.h: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: esd.h: in the future, the compiler will take precedence" >&2;}
++ (
++ cat <<\_ASBOX
++## ------------------------------------------ ##
++## Report this to the AC_PACKAGE_NAME lists. ##
++## ------------------------------------------ ##
++_ASBOX
++ ) |
++ sed "s/^/$as_me: WARNING: /" >&2
++ ;;
++esac
++echo "$as_me:$LINENO: checking for esd.h" >&5
++echo $ECHO_N "checking for esd.h... $ECHO_C" >&6
++if test "${ac_cv_header_esd_h+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ ac_cv_header_esd_h=$ac_header_preproc
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_esd_h" >&5
++echo "${ECHO_T}$ac_cv_header_esd_h" >&6
++
++fi
++if test $ac_cv_header_esd_h = yes; then
++ ESDHDR=1
++fi
++
++
++ echo "$as_me:$LINENO: checking for ESD sound support" >&5
++echo $ECHO_N "checking for ESD sound support... $ECHO_C" >&6
++ if test "${ESDHDR}z" != "z"; then
++ HAS_ESD=1
++
++ echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++ else
++ echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++ fi
++fi
++
++
++
+ # Check whether --enable-sunaudio or --disable-sunaudio was given.
+ if test "${enable_sunaudio+set}" = set; then
+ enableval="$enable_sunaudio"
+@@ -4239,6 +4239,146 @@
+ BSDVIDEOHDR=1
+ fi
+
++ if test "${ac_cv_header_dev_bktr_ioctl_meteor_h+set}" = set; then
++ echo "$as_me:$LINENO: checking for dev/bktr/ioctl_meteor.h" >&5
++echo $ECHO_N "checking for dev/bktr/ioctl_meteor.h... $ECHO_C" >&6
++if test "${ac_cv_header_dev_bktr_ioctl_meteor_h+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_dev_bktr_ioctl_meteor_h" >&5
++echo "${ECHO_T}$ac_cv_header_dev_bktr_ioctl_meteor_h" >&6
++else
++ # Is the header compilable?
++echo "$as_me:$LINENO: checking dev/bktr/ioctl_meteor.h usability" >&5
++echo $ECHO_N "checking dev/bktr/ioctl_meteor.h usability... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++$ac_includes_default
++#include <dev/bktr/ioctl_meteor.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++ (eval $ac_compile) 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } &&
++ { ac_try='test -z "$ac_c_werror_flag"
++ || test ! -s conftest.err'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; } &&
++ { ac_try='test -s conftest.$ac_objext'
++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++ (eval $ac_try) 2>&5
++ ac_status=$?
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); }; }; then
++ ac_header_compiler=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_header_compiler=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6
++
++# Is the header present?
++echo "$as_me:$LINENO: checking dev/bktr/ioctl_meteor.h presence" >&5
++echo $ECHO_N "checking dev/bktr/ioctl_meteor.h presence... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h. */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h. */
++#include <dev/bktr/ioctl_meteor.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++ ac_status=$?
++ grep -v '^ *+' conftest.er1 >conftest.err
++ rm -f conftest.er1
++ cat conftest.err >&5
++ echo "$as_me:$LINENO: \$? = $ac_status" >&5
++ (exit $ac_status); } >/dev/null; then
++ if test -s conftest.err; then
++ ac_cpp_err=$ac_c_preproc_warn_flag
++ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++ else
++ ac_cpp_err=
++ fi
++else
++ ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
++ ac_header_preproc=yes
++else
++ echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ ac_header_preproc=no
++fi
++rm -f conftest.err conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6
++
++# So? What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++ yes:no: )
++ { echo "$as_me:$LINENO: WARNING: dev/bktr/ioctl_meteor.h: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: dev/bktr/ioctl_meteor.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++ { echo "$as_me:$LINENO: WARNING: dev/bktr/ioctl_meteor.h: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: dev/bktr/ioctl_meteor.h: proceeding with the compiler's result" >&2;}
++ ac_header_preproc=yes
++ ;;
++ no:yes:* )
++ { echo "$as_me:$LINENO: WARNING: dev/bktr/ioctl_meteor.h: present but cannot be compiled" >&5
++echo "$as_me: WARNING: dev/bktr/ioctl_meteor.h: present but cannot be compiled" >&2;}
++ { echo "$as_me:$LINENO: WARNING: dev/bktr/ioctl_meteor.h: check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: dev/bktr/ioctl_meteor.h: check for missing prerequisite headers?" >&2;}
++ { echo "$as_me:$LINENO: WARNING: dev/bktr/ioctl_meteor.h: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: dev/bktr/ioctl_meteor.h: see the Autoconf documentation" >&2;}
++ { echo "$as_me:$LINENO: WARNING: dev/bktr/ioctl_meteor.h: section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: dev/bktr/ioctl_meteor.h: section \"Present But Cannot Be Compiled\"" >&2;}
++ { echo "$as_me:$LINENO: WARNING: dev/bktr/ioctl_meteor.h: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: dev/bktr/ioctl_meteor.h: proceeding with the preprocessor's result" >&2;}
++ { echo "$as_me:$LINENO: WARNING: dev/bktr/ioctl_meteor.h: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: dev/bktr/ioctl_meteor.h: in the future, the compiler will take precedence" >&2;}
++ (
++ cat <<\_ASBOX
++## ------------------------------------------ ##
++## Report this to the AC_PACKAGE_NAME lists. ##
++## ------------------------------------------ ##
++_ASBOX
++ ) |
++ sed "s/^/$as_me: WARNING: /" >&2
++ ;;
++esac
++echo "$as_me:$LINENO: checking for dev/bktr/ioctl_meteor.h" >&5
++echo $ECHO_N "checking for dev/bktr/ioctl_meteor.h... $ECHO_C" >&6
++if test "${ac_cv_header_dev_bktr_ioctl_meteor_h+set}" = set; then
++ echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++ ac_cv_header_dev_bktr_ioctl_meteor_h=$ac_header_preproc
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_dev_bktr_ioctl_meteor_h" >&5
++echo "${ECHO_T}$ac_cv_header_dev_bktr_ioctl_meteor_h" >&6
++
++fi
++if test $ac_cv_header_dev_bktr_ioctl_meteor_h = yes; then
++ BSDVIDEOHDR=1
++fi
+
+ if test "${ac_cv_header_dev_ic_bt8xx_h+set}" = set; then
+ echo "$as_me:$LINENO: checking for dev/ic/bt8xx.h" >&5
+@@ -5872,6 +6065,7 @@
+ s,@EGREP@,$EGREP,;t t
+ s,@HAS_ALSA@,$HAS_ALSA,;t t
+ s,@HAS_OSS@,$HAS_OSS,;t t
++s,@HAS_ESD@,$HAS_ESD,;t t
+ s,@HAS_SUNAUDIO@,$HAS_SUNAUDIO,;t t
+ s,@HAS_V4L@,$HAS_V4L,;t t
+ s,@HAS_V4L2@,$HAS_V4L2,;t t
diff --git a/devel/pwlib/files/patch-plugins-sound_esd-Makefile b/devel/pwlib/files/patch-plugins-sound_esd-Makefile
new file mode 100644
index 000000000..41a36b0da
--- /dev/null
+++ b/devel/pwlib/files/patch-plugins-sound_esd-Makefile
@@ -0,0 +1,11 @@
+--- plugins/sound_esd/Makefile.orig Thu Apr 6 16:47:13 2006
++++ plugins/sound_esd/Makefile Thu Apr 6 16:50:52 2006
+@@ -4,7 +4,7 @@
+
+ PLUGIN_NAME = esd
+ PLUGIN_FAMILY = device/sound
+-PLUGIN_LIBS =
++PLUGIN_LIBS = $(LDFLAGS) -lesd
+ PLUGIN_SOURCES = sound_esd.cxx
+
+ include ../../make/plugins.mak
diff --git a/devel/pwlib/files/patch-plugins-sound_esd-sound_esd.h b/devel/pwlib/files/patch-plugins-sound_esd-sound_esd.h
new file mode 100644
index 000000000..bc36e0202
--- /dev/null
+++ b/devel/pwlib/files/patch-plugins-sound_esd-sound_esd.h
@@ -0,0 +1,22 @@
+--- plugins/sound_esd/sound_esd.h.orig Thu Apr 6 16:47:28 2006
++++ plugins/sound_esd/sound_esd.h Thu Apr 6 16:48:06 2006
+@@ -43,15 +43,15 @@
+ unsigned _bitsPerSample);
+ BOOL Setup();
+ BOOL Close();
+- BOOL IsOpen() const;
++// BOOL IsOpen() const;
+ BOOL Write(const void * buf, PINDEX len);
+ BOOL Read(void * buf, PINDEX len);
+ BOOL SetFormat(unsigned numChannels,
+ unsigned sampleRate,
+ unsigned bitsPerSample);
+- unsigned GetChannels() const;
+- unsigned GetSampleRate() const;
+- unsigned GetSampleSize() const;
++// unsigned GetChannels() const;
++// unsigned GetSampleRate() const;
++// unsigned GetSampleSize() const;
+ BOOL SetBuffers(PINDEX size, PINDEX count);
+ BOOL GetBuffers(PINDEX & size, PINDEX & count);
+ BOOL PlaySound(const PSound & sound, BOOL wait);
diff --git a/devel/pwlib/files/patch-plugins-vidinput_avc-Makefile b/devel/pwlib/files/patch-plugins-vidinput_avc-Makefile
new file mode 100644
index 000000000..9dfbbb6e3
--- /dev/null
+++ b/devel/pwlib/files/patch-plugins-vidinput_avc-Makefile
@@ -0,0 +1,11 @@
+--- plugins/vidinput_avc/Makefile.orig Fri Nov 14 07:16:13 2003
++++ plugins/vidinput_avc/Makefile Thu Apr 6 17:00:31 2006
+@@ -4,7 +4,7 @@
+
+ PLUGIN_NAME = avc
+ PLUGIN_FAMILY = device/videoinput
+-PLUGIN_LIBS = -lraw1394 -ldv -lrom1394
++PLUGIN_LIBS = $(LDFLAGS) -lraw1394 -ldv -lrom1394
+ PLUGIN_SOURCES = vidinput_avc.cxx
+
+ include ../../make/plugins.mak
diff --git a/devel/pwlib/files/patch-plugins-vidinput_bsd-vidinput_bsd.cxx b/devel/pwlib/files/patch-plugins-vidinput_bsd-vidinput_bsd.cxx
new file mode 100644
index 000000000..7207595c0
--- /dev/null
+++ b/devel/pwlib/files/patch-plugins-vidinput_bsd-vidinput_bsd.cxx
@@ -0,0 +1,43 @@
+--- plugins/vidinput_bsd/vidinput_bsd.cxx.orig Tue Aug 9 11:08:09 2005
++++ plugins/vidinput_bsd/vidinput_bsd.cxx Wed Apr 5 21:35:08 2006
+@@ -122,12 +122,11 @@
+ #pragma implementation "vidinput_bsd.h"
+
+ #include "vidinput_bsd.h"
+-#include <sys/mman.h>
+
+ PCREATE_VIDINPUT_PLUGIN(BSDCAPTURE);
+
+ ///////////////////////////////////////////////////////////////////////////////
+-// PVideoInputDevice_BSDCAPTURE
++// PVideoInputBSDCAPTURE
+
+ PVideoInputDevice_BSDCAPTURE::PVideoInputDevice_BSDCAPTURE()
+ {
+@@ -142,6 +141,7 @@
+
+ BOOL PVideoInputDevice_BSDCAPTURE::Open(const PString & devName, BOOL startImmediate)
+ {
++ if (IsOpen())
+ Close();
+
+ deviceName = devName;
+@@ -235,10 +235,14 @@
+ {
+ PStringList list;
+
+- list.AppendString("/dev/bktr0");
+- list.AppendString("/dev/bktr1");
+- list.AppendString("/dev/meteor0");
+- list.AppendString("/dev/meteor1");
++ if (PFile::Exists("/dev/bktr0"))
++ list.AppendString("/dev/bktr0");
++ if (PFile::Exists("/dev/bktr1"))
++ list.AppendString("/dev/bktr1");
++ if (PFile::Exists("/dev/meteor0"))
++ list.AppendString("/dev/meteor0");
++ if (PFile::Exists("/dev/meteor1"))
++ list.AppendString("/dev/meteor1");
+
+ return list;
+ }
diff --git a/devel/pwlib/files/patch-plugins-vidinput_bsd-vidinput_bsd.h b/devel/pwlib/files/patch-plugins-vidinput_bsd-vidinput_bsd.h
new file mode 100644
index 000000000..e3e6d99d5
--- /dev/null
+++ b/devel/pwlib/files/patch-plugins-vidinput_bsd-vidinput_bsd.h
@@ -0,0 +1,100 @@
+--- plugins/vidinput_bsd/vidinput_bsd.h.orig Tue Aug 9 05:08:09 2005
++++ plugins/vidinput_bsd/vidinput_bsd.h Sun May 14 13:42:28 2006
+@@ -1,15 +1,29 @@
++#ifndef _PVIDEOIOBSDCAPTURE
+
+-//#include <sys/mman.h>
+-//#include <sys/time.h>
++#define _PVIDEOIOBSDCAPTURE
++
++#ifdef __GNUC__
++#pragma interface
++#endif
+
+ #include <ptlib.h>
+ #include <ptlib/videoio.h>
+ #include <ptlib/vconvert.h>
+
+ #if defined(P_FREEBSD)
++#include <sys/param.h>
++#if __FreeBSD_version <= 500000
++#include <sys/types.h>
++#endif
++# if __FreeBSD_version >= 502100
++#include <dev/bktr/ioctl_meteor.h>
++# else
+ #include <machine/ioctl_meteor.h>
++# endif
+ #endif
+
++#include <sys/mman.h>
++
+ #if defined(P_OPENBSD) || defined(P_NETBSD)
+ #if P_OPENBSD >= 200105
+ #include <dev/ic/bt8xx.h>
+@@ -20,19 +34,24 @@
+ #endif
+ #endif
+
+-class PVideoInputDevice_BSDCAPTURE: public PVideoInputDevice
++#if !P_USE_INLINES
++#include <ptlib/contain.inl>
++#endif
++
++
++class PVideoInputDevice_BSDCAPTURE : public PVideoInputDevice
+ {
+
++ PCLASSINFO(PVideoInputDevice_BSDCAPTURE, PVideoInputDevice);
++
+ public:
+ PVideoInputDevice_BSDCAPTURE();
+ ~PVideoInputDevice_BSDCAPTURE();
+
+- static PStringList GetInputDeviceNames();
+-
+- PStringList GetDeviceNames() const
+- { return GetInputDeviceNames(); }
+-
+- BOOL Open(const PString &deviceName, BOOL startImmediate);
++ BOOL Open(
++ const PString &deviceName,
++ BOOL startImmediate = TRUE
++ );
+
+ BOOL IsOpen();
+
+@@ -43,11 +62,24 @@
+
+ BOOL IsCapturing();
+
++ static PStringList GetInputDeviceNames();
++
++ PStringList GetDeviceNames() const
++ { return GetInputDeviceNames(); }
++
+ PINDEX GetMaxFrameBytes();
+
+- BOOL GetFrame(PBYTEArray & frame);
+- BOOL GetFrameData(BYTE*, PINDEX*);
+- BOOL GetFrameDataNoDelay(BYTE*, PINDEX*);
++// BOOL GetFrame(
++// PBYTEArray & frame
++// );
++ BOOL GetFrameData(
++ BYTE * buffer,
++ PINDEX * bytesReturned = NULL
++ );
++ BOOL GetFrameDataNoDelay(
++ BYTE * buffer,
++ PINDEX * bytesReturned = NULL
++ );
+
+ BOOL GetFrameSizeLimits(unsigned int&, unsigned int&,
+ unsigned int&, unsigned int&);
+@@ -99,3 +131,5 @@
+ int mmap_size;
+
+ };
++
++#endif
diff --git a/devel/pwlib/files/patch-plugins-vidinput_dc-Makefile.in b/devel/pwlib/files/patch-plugins-vidinput_dc-Makefile.in
new file mode 100644
index 000000000..f367f2855
--- /dev/null
+++ b/devel/pwlib/files/patch-plugins-vidinput_dc-Makefile.in
@@ -0,0 +1,11 @@
+--- plugins/vidinput_dc/Makefile.in.orig Thu Apr 6 17:01:27 2006
++++ plugins/vidinput_dc/Makefile.in Thu Apr 6 17:01:38 2006
+@@ -4,7 +4,7 @@
+
+ PLUGIN_NAME = dc
+ PLUGIN_FAMILY = device/videoinput
+-PLUGIN_LIBS = -lraw1394 -ldv -ldc1394_control
++PLUGIN_LIBS = $(LDFLAGS) -lraw1394 -ldv -ldc1394_control
+ PLUGIN_SOURCES = video4dc1394.cxx
+
+ CFLAGS = @DC_CFLAGS@
diff --git a/devel/pwlib/files/patch-src-ptlib-unix-udll.cxx b/devel/pwlib/files/patch-src-ptlib-unix-udll.cxx
new file mode 100644
index 000000000..8cfadebbf
--- /dev/null
+++ b/devel/pwlib/files/patch-src-ptlib-unix-udll.cxx
@@ -0,0 +1,13 @@
+--- src/ptlib/unix/udll.cxx.orig Wed Nov 30 13:47:42 2005
++++ src/ptlib/unix/udll.cxx Wed Apr 5 22:36:51 2006
+@@ -382,6 +382,10 @@
+ dllHandle = dlopen((char *)(const char *)name, RTLD_NOW);
+ #else
++ const char *dummyerr = dlerror();
+ dllHandle = dlopen((const char *)name, RTLD_NOW);
++ const char *err = dlerror();
++ if (err != NULL)
++ cerr << err << '\n';
+ #endif
+
+ return IsLoaded();
diff --git a/devel/pwlib/files/patch-src_ptlib_common_jidctflt.cxx b/devel/pwlib/files/patch-src_ptlib_common_jidctflt.cxx
new file mode 100644
index 000000000..113cf9728
--- /dev/null
+++ b/devel/pwlib/files/patch-src_ptlib_common_jidctflt.cxx
@@ -0,0 +1,12 @@
+--- src/ptlib/common/jidctflt.cxx.orig Wed Apr 5 07:08:00 2006
++++ src/ptlib/common/jidctflt.cxx Wed Apr 5 07:08:08 2006
+@@ -80,7 +80,8 @@
+
+ #define DEQUANTIZE(coef,quantval) (((FAST_FLOAT) (coef)) * (quantval))
+
+-#if defined(__GNUC__) && (defined(__i686__) || defined(__x86_64__))
++/* asm doesn't compile properly... avoid using */
++#if 0
+
+ static inline unsigned char descale_and_clamp(int x, int shift)
+ {
diff --git a/devel/pwlib/files/patch-unixmak b/devel/pwlib/files/patch-unixmak
new file mode 100644
index 000000000..30966d7e2
--- /dev/null
+++ b/devel/pwlib/files/patch-unixmak
@@ -0,0 +1,34 @@
+--- make/unix.mak.orig Tue Jan 17 13:57:17 2006
++++ make/unix.mak Tue Feb 14 15:12:55 2006
+@@ -871,9 +871,9 @@
+ endif
+
+ ifndef PTLIB_ALT
+-PLATFORM_TYPE = $(OSTYPE)_$(MACHTYPE)
++PLATFORM_TYPE =
+ else
+-PLATFORM_TYPE = $(OSTYPE)_$(PTLIB_ALT)_$(MACHTYPE)
++PLATFORM_TYPE =
+ endif
+
+ ifndef OBJ_SUFFIX
+@@ -939,15 +939,15 @@
+ PW_LIBDIR = $(PWLIBDIR)/lib
+
+ # set name of the PT library
+-PTLIB_BASE = pt_$(PLATFORM_TYPE)_$(OBJ_SUFFIX)
++PTLIB_BASE = pt_$(OBJ_SUFFIX)
+ PTLIB_FILE = lib$(PTLIB_BASE)$(LIB_TYPE).$(LIB_SUFFIX)
+-PT_OBJBASE = obj_$(PLATFORM_TYPE)_$(OBJDIR_SUFFIX)
++PT_OBJBASE = obj_$(OBJDIR_SUFFIX)
+ PT_OBJDIR = $(PW_LIBDIR)/$(PT_OBJBASE)
+
+ # set name of the PW library (may not be used)
+-PWLIB_BASE = pw_$(GUI_TYPE)_$(PLATFORM_TYPE)_$(OBJ_SUFFIX)
++PWLIB_BASE = pw_$(GUI_TYPE)_$(OBJ_SUFFIX)
+ PWLIB_FILE = lib$(PWLIB_BASE)$(LIB_TYPE).$(LIB_SUFFIX)
+-PW_OBJBASE = obj_$(GUI_TYPE)_$(PLATFORM_TYPE)_$(OBJDIR_SUFFIX)
++PW_OBJBASE = obj_$(GUI_TYPE)_$(OBJDIR_SUFFIX)
+ PW_OBJDIR = $(PW_LIBDIR)/$(PW_OBJBASE)
+
+ ###############################################################################
diff --git a/devel/pwlib/pkg-descr b/devel/pwlib/pkg-descr
new file mode 100644
index 000000000..c6a71d32c
--- /dev/null
+++ b/devel/pwlib/pkg-descr
@@ -0,0 +1,7 @@
+PWLib is a multi-platform code library that can be used to write
+applications that will compile and run on the BSD Unixes, Windows, Linux
+and a few other Unix variants. It was developed by Equivalence Ltd Pty.
+
+It is used by the OpenH323 library.
+
+WWW: http://www.openh323.org/
diff --git a/devel/pwlib/pkg-plist b/devel/pwlib/pkg-plist
new file mode 100644
index 000000000..21a56d2cb
--- /dev/null
+++ b/devel/pwlib/pkg-plist
@@ -0,0 +1,181 @@
+bin/ptlib-config
+include/ptbuildopts.h
+include/ptclib/asnber.h
+include/ptclib/asner.h
+include/ptclib/asnper.h
+include/ptclib/asnxer.h
+include/ptclib/cypher.h
+include/ptclib/delaychan.h
+include/ptclib/dtmf.h
+include/ptclib/enum.h
+include/ptclib/ftp.h
+include/ptclib/html.h
+include/ptclib/http.h
+include/ptclib/httpform.h
+include/ptclib/httpsvc.h
+include/ptclib/inetmail.h
+include/ptclib/inetprot.h
+include/ptclib/ipacl.h
+include/ptclib/memfile.h
+include/ptclib/mime.h
+include/ptclib/modem.h
+include/ptclib/pasn.h
+include/ptclib/pdns.h
+include/ptclib/pils.h
+include/ptclib/pldap.h
+include/ptclib/pnat.h
+include/ptclib/psasl.h
+include/ptclib/psnmp.h
+include/ptclib/psoap.h
+include/ptclib/pssl.h
+include/ptclib/pstun.h
+include/ptclib/ptts.h
+include/ptclib/pwavfile.h
+include/ptclib/pxml.h
+include/ptclib/pxmlrpc.h
+include/ptclib/pxmlrpcs.h
+include/ptclib/qchannel.h
+include/ptclib/random.h
+include/ptclib/shttpsvc.h
+include/ptclib/sockagg.h
+include/ptclib/socks.h
+include/ptclib/telnet.h
+include/ptclib/url.h
+include/ptclib/vsdl.h
+include/ptclib/vxml.h
+include/ptclib/xmpp.h
+include/ptclib/xmpp_c2s.h
+include/ptclib/xmpp_muc.h
+include/ptclib/xmpp_roster.h
+@dirrm include/ptclib
+include/ptlib.h
+include/ptlib/MacMainIf.h
+include/ptlib/args.h
+include/ptlib/array.h
+include/ptlib/channel.h
+include/ptlib/conchan.h
+include/ptlib/config.h
+include/ptlib/contain.h
+include/ptlib/contain.inl
+include/ptlib/critsec.h
+include/ptlib/dict.h
+include/ptlib/dynalink.h
+include/ptlib/ethsock.h
+include/ptlib/file.h
+include/ptlib/filepath.h
+include/ptlib/icmpsock.h
+include/ptlib/indchan.h
+include/ptlib/int64.h
+include/ptlib/ipdsock.h
+include/ptlib/ipsock.h
+include/ptlib/ipxsock.h
+include/ptlib/lists.h
+include/ptlib/mail.h
+include/ptlib/mutex.h
+include/ptlib/notifier.h
+include/ptlib/notifier_ext.h
+include/ptlib/object.h
+include/ptlib/osutil.inl
+include/ptlib/pdirect.h
+include/ptlib/pfactory.h
+include/ptlib/pipechan.h
+include/ptlib/plugin.h
+include/ptlib/pluginmgr.h
+include/ptlib/pprocess.h
+include/ptlib/psharedptr.h
+include/ptlib/pstring.h
+include/ptlib/psync.h
+include/ptlib/ptime.h
+include/ptlib/qos.h
+include/ptlib/remconn.h
+include/ptlib/safecoll.h
+include/ptlib/semaphor.h
+include/ptlib/serchan.h
+include/ptlib/sfile.h
+include/ptlib/smartptr.h
+include/ptlib/socket.h
+include/ptlib/sockets.h
+include/ptlib/sound.h
+include/ptlib/spxsock.h
+include/ptlib/svcproc.h
+include/ptlib/syncpoint.h
+include/ptlib/syncthrd.h
+include/ptlib/tcpsock.h
+include/ptlib/textfile.h
+include/ptlib/thread.h
+include/ptlib/timeint.h
+include/ptlib/timer.h
+include/ptlib/udpsock.h
+include/ptlib/unix/ptlib/beaudio.h
+include/ptlib/unix/ptlib/bevideo.h
+include/ptlib/unix/ptlib/channel.h
+include/ptlib/unix/ptlib/conchan.h
+include/ptlib/unix/ptlib/config.h
+include/ptlib/unix/ptlib/contain.h
+include/ptlib/unix/ptlib/critsec.h
+include/ptlib/unix/ptlib/dynalink.h
+include/ptlib/unix/ptlib/ethsock.h
+include/ptlib/unix/ptlib/file.h
+include/ptlib/unix/ptlib/filepath.h
+include/ptlib/unix/ptlib/icmpsock.h
+include/ptlib/unix/ptlib/ipdsock.h
+include/ptlib/unix/ptlib/ipsock.h
+include/ptlib/unix/ptlib/maccoreaudio.h
+include/ptlib/unix/ptlib/mutex.h
+include/ptlib/unix/ptlib/pdirect.h
+include/ptlib/unix/ptlib/pipechan.h
+include/ptlib/unix/ptlib/pmachdep.h
+include/ptlib/unix/ptlib/pprocess.h
+include/ptlib/unix/ptlib/ptime.h
+include/ptlib/unix/ptlib/ptlib.inl
+include/ptlib/unix/ptlib/remconn.h
+include/ptlib/unix/ptlib/resampler.h
+include/ptlib/unix/ptlib/semaphor.h
+include/ptlib/unix/ptlib/serchan.h
+include/ptlib/unix/ptlib/sfile.h
+include/ptlib/unix/ptlib/socket.h
+include/ptlib/unix/ptlib/sound.h
+include/ptlib/unix/ptlib/svcproc.h
+include/ptlib/unix/ptlib/syncpoint.h
+include/ptlib/unix/ptlib/tcpsock.h
+include/ptlib/unix/ptlib/textfile.h
+include/ptlib/unix/ptlib/thread.h
+include/ptlib/unix/ptlib/timeint.h
+include/ptlib/unix/ptlib/timer.h
+include/ptlib/unix/ptlib/udpsock.h
+include/ptlib/unix/ptlib/video.h
+include/ptlib/unix/ptlib/videoio.h
+@dirrm include/ptlib/unix/ptlib
+@dirrm include/ptlib/unix
+include/ptlib/vconvert.h
+include/ptlib/video.h
+include/ptlib/videoio.h
+include/ptlib/videoio1394dc.h
+@dirrm include/ptlib
+lib/libpt.so
+lib/libpt_r.so
+lib/libpt_r.so.1
+lib/pwlib/devices/sound/oss_pwplugin.so
+%%ESD%%lib/pwlib/devices/sound/esd_pwplugin.so
+%%AVC1394%%lib/pwlib/devices/videoinput/avc_pwplugin.so
+%%BSDVIDEO%%lib/pwlib/devices/videoinput/bsdvideo_pwplugin.so
+%%DC1394%%lib/pwlib/devices/videoinput/dc_pwplugin.so
+@dirrm lib/pwlib/devices/sound
+@dirrm lib/pwlib/devices/videoinput
+@dirrm lib/pwlib/devices
+@dirrmtry lib/pwlib
+%%DATADIR%%/make/common.mak
+%%DATADIR%%/make/defaultgui.mak
+%%DATADIR%%/make/gui.mak
+%%DATADIR%%/make/lib.mak
+%%DATADIR%%/make/motif.mak
+%%DATADIR%%/make/plugins.mak
+%%DATADIR%%/make/ptbuildopts.mak
+%%DATADIR%%/make/ptlib-config
+%%DATADIR%%/make/ptlib.mak
+%%DATADIR%%/make/pwlib.mak
+%%DATADIR%%/make/qt.mak
+%%DATADIR%%/make/unix.mak
+%%DATADIR%%/make/xlib.mak
+@dirrm %%DATADIR%%/make
+@dirrm %%DATADIR%%