flash10 vs f10

Boris Samorodov bsam at ipt.ru
Sat Jun 27 16:09:21 UTC 2009


Juergen Lock <nox at jelal.kn-bremen.de> writes:
> On Fri, Jun 26, 2009 at 03:33:15PM -0500, Sean C. Farley wrote:
>> On Fri, 26 Jun 2009, Renato Botelho wrote:
>> 
>> > On Fri, Jun 26, 2009 at 4:32 PM, Boris Samorodov<bsam at ipt.ru> wrote:
>> >> OK, thanks! I should have missed you previous post.
>> >>
>> >> Here is a port for tests. This shar should be run at /usr/ports/www:
>> >> ftp://ftp.ipt.ru/pub/linux/linux-f10-flashplugin10.shar
>> >>
>> >> Note: the port is only hand-written and tested to build/install/deinstall.
>> >
>> > I tried it and got this message:
>> >
>> > *** NSPlugin Wrapper *** ERROR: NPP_New() wait for reply: Message timeout
>> >
>> > My environment:
>> >
>> > FreeBSD botelhor.bplab.local 8.0-CURRENT FreeBSD 8.0-CURRENT #73
>> > r194284: Wed Jun 24 19:09:04 BRT 2009
>> > root at botelhor.bplab.local:/usr/obj/usr/src/sys/GARGA  i386
>> >
>> > linux-f10-atk-1.24.0
>> > linux-f10-cairo-1.8.0
>> > linux-f10-curl-7.19.4_1
>> > linux-f10-expat-2.0.1
>> > linux-f10-flashplugin-10.0r22
>> > linux-f10-fontconfig-2.6.0
>> > linux-f10-gtk2-2.14.7
>> > linux-f10-jpeg-6b
>> > linux-f10-libssh2-0.18
>> > linux-f10-nspr-4.7.3
>> > linux-f10-nss-3.12.2.0
>> > linux-f10-openssl-0.9.8g
>> > linux-f10-pango-1.22.3
>> > linux-f10-png-1.2.35
>> > linux-f10-sqlite3-3.5.9
>> > linux-f10-tiff-3.8.2
>> > linux-f10-xorg-libs-7.4
>> > linux_base-f10-10
>> > nspluginwrapper-1.2.2_2
>> >
>> > I deinstalled linux-f8, cleaned compat/linux and reinstalled everything.
>> 
>> Assuming it is the issue with missing dependencies for libcurl, we also 
>> need port(s) for liblber and libldap since f10's libcurl depends upon 
>> them.
>
> liblber is in the same rpm with libldap (I used
> openldap-2.4.12-1.fc10.i386.rpm as I said), and as I said we
> also need libsasl2 (libldap depends on it) which is in
> cyrus-sasl-lib-2.1.22-19.fc10.i386.rpm .
>
>>  I had to manually extract a couple of RPM's to get them.  Here is 
>> the ldd output of libcurl for me:
>> 
>> # /compat/linux/bin/sh /compat/linux/usr/bin/ldd /compat/linux/usr/lib/libcurl.so.4.1.1
>>          libidn.so.11 => /lib/libidn.so.11 (0x20073000)
>>  	libssh2.so.1 => /usr/lib/libssh2.so.1 (0x200a5000)
>>  	libldap-2.4.so.2 => /usr/lib/libldap-2.4.so.2 (0x200c7000)
>>  	librt.so.1 => /lib/librt.so.1 (0x20109000)
>>  	libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x20113000)
>>  	libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x20141000)
>>  	libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x201e1000)
>>  	libcom_err.so.2 => /lib/libcom_err.so.2 (0x20206000)
>>  	libz.so.1 => /lib/libz.so.1 (0x20209000)
>>  	libssl3.so => /lib/libssl3.so (0x2021d000)
>>  	libsmime3.so => /lib/libsmime3.so (0x2024e000)
>>  	libnss3.so => /lib/libnss3.so (0x20275000)
>>  	libplds4.so => /lib/libplds4.so (0x203bb000)
>>  	libplc4.so => /lib/libplc4.so (0x203bf000)
>>  	libnspr4.so => /lib/libnspr4.so (0x203c4000)
>>  	libpthread.so.0 => /lib/libpthread.so.0 (0x203fe000)
>>  	libdl.so.2 => /lib/libdl.so.2 (0x20418000)
>>  	libc.so.6 => /lib/libc.so.6 (0x2041d000)
>>  	libssl.so.7 => /lib/libssl.so.7 (0x20596000)
>>  	libcrypto.so.7 => /lib/libcrypto.so.7 (0x205e1000)
>>  	liblber-2.4.so.2 => /usr/lib/liblber-2.4.so.2 (0x20735000)
>>  	libresolv.so.2 => /lib/libresolv.so.2 (0x20744000)
>>  	libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x2075b000)
>>  	/lib/ld-linux.so.2 (0x00000000)
>>  	libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x20775000)
>>  	libkeyutils.so.1 => /lib/libkeyutils.so.1 (0x2077f000)
>>  	libnssutil3.so => /lib/libnssutil3.so (0x20782000)
>>  	libcrypt.so.1 => /lib/libcrypt.so.1 (0x2079b000)
>>  	libselinux.so.1 => /lib/libselinux.so.1 (0x207cf000)
>
>  Same here with the following ports I just tested here: (thanx to bsam
> for the linux-f10-flashplugin10 port and to Peter Jeremy for the
> original linux-f10-openldap and linux-f10-cyrus-sasl2 ports!)
>
>  First a patch for bsd.linux-apps.mk, then the shar, please test
> and comment :)

Good work! Here are some comments.

> Index: Mk/bsd.linux-apps.mk
> @@ -70,7 +70,8 @@
>  _LINUX_APPS_ALL+=
>  
>  # 2.6.16 components
> -_LINUX_26_APPS=		libidn libssh2 nspr nss sqlite3 tcl84 tk84
> +_LINUX_26_APPS=		cyrus-sasl2 libidn libssh2 nspr nss openldap \
> +			sqlite3 tcl84 tk84
>  
>  _LINUX_APPS_ALL+=	${_LINUX_26_APPS}
>  
> @@ -137,6 +138,11 @@
>  curl_DETECT=		${curl${LINUX_DIST_SUFFIX:S/-/_/}_FILE}
>  curl_PORT=		${PORTSDIR}/ftp/linux${LINUX_DIST_SUFFIX}-curl

Since linux-f10 curl requires cyrus-sasl2 and openldap I'd add here:
-----
.  if ${LINUX_DIST_SUFFIX} == "-f10"
curl_DEPENDS=cyrus-sasl2 openldap
.  endif
-----

Also apropriate changes should go to ftp/linux-f10-curl port.

> +# no cyrus-sasl2_FILE, cyrus-sasl2_f8_FILE
> +cyrus-sasl2_f10_FILE=	${LINUXBASE}/usr/lib/libsasl2.so.2.0.22
> +cyrus-sasl2_DETECT=	${cyrus-sasl2${LINUX_DIST_SUFFIX:S/-/_/}_FILE}
> +cyrus-sasl2_PORT=	${PORTSDIR}/security/linux${LINUX_DIST_SUFFIX}-cyrus-sasl2
> +
>  dri_FILE=		${LINUXBASE}/usr/X11R6/lib/libGL.so.1
>  dri_f8_FILE=		${LINUXBASE}/usr/lib/libGL.so.1
>  dri_f10_FILE=		${LINUXBASE}/usr/lib/libGL.so.1.2
> @@ -307,6 +313,11 @@
>  mikmod_DETECT=		${mikmod${LINUX_DIST_SUFFIX:S/-/_/}_FILE}
>  mikmod_PORT=		${PORTSDIR}/audio/linux${LINUX_DIST_SUFFIX}-mikmod
>  
> +# no openldap_FILE, openldap_f8_FILE
> +openldap_f10_FILE=	${LINUXBASE}/usr/lib/libldap-2.4.so.2.2.0
> +openldap_DETECT=	${openldap${LINUX_DIST_SUFFIX:S/-/_/}_FILE}
> +openldap_PORT=		${PORTSDIR}/net/linux${LINUX_DIST_SUFFIX}-openldap
> +
>  openmotif_FILE=		${LINUXBASE}/usr/X11R6/lib/libXm.so.3.0.3
>  openmotif_f8_FILE=	${LINUXBASE}/usr/lib/libXm.so.4.0.2
>  openmotif_f10_FILE=	${LINUXBASE}/usr/X11R6/lib/libXm.so.3.0.3
>
> # This is a shell archive.  Save it in a file, remove anything before
> # this line, and then unpack it by entering "sh file".  Note, it may
> # create directories; files and directories will be owned by you and
> # have default permissions.
> #
> # This archive contains:
> #
> #	net/linux-f10-openldap/
> #	net/linux-f10-openldap/Makefile
> #	net/linux-f10-openldap/distinfo.i386
> #	security/linux-f10-cyrus-sasl2/
> #	security/linux-f10-cyrus-sasl2/Makefile
> #	security/linux-f10-cyrus-sasl2/distinfo.i386
> #	www/linux-f10-flashplugin10/
> #	www/linux-f10-flashplugin10/Makefile
> #	www/linux-f10-flashplugin10/distinfo
> #	www/linux-f10-flashplugin10/pkg-descr
> #	www/linux-f10-flashplugin10/pkg-plist
> #
> echo c - net/linux-f10-openldap/
> mkdir -p net/linux-f10-openldap/ > /dev/null 2>&1
> echo x - net/linux-f10-openldap/Makefile
> sed 's/^X//' >net/linux-f10-openldap/Makefile << '17a12d65b66950d2cbc504ac86a37255'
> X# New ports collection makefile for:	net/linux-f10-openldap
> X# Date created:				2009-06-07
> X# Whom:					peter
> X#
> X# $FreeBSD$
> X#
> X
> XPORTNAME=	openldap
> XPORTVERSION=	2.4.12
> XCATEGORIES=	net linux
> XPKGNAMEPREFIX=	linux-f10-
> XDISTNAME=	${PORTNAME}-${PORTVERSION}-${RPMVERSION}
> X
> X.if defined(PACKAGE_BUILDING)
> XSRC_DISTFILES=	${PORTNAME}-${PORTVERSION}-${RPMVERSION}.src.rpm
> XALWAYS_KEEP_DISTFILES=	YES
> X.endif

Well, those <.if, .endif> actually are not needed as bsd.linux-rpm.mk
should itself take care of the case. If it doesn't, please tell me.

> X
> XMAINTAINER=	emulation at FreeBSD.org
> XCOMMENT=	Lightweight Directory Access Protocol libraries (Linux Fedora 10)
> X
> X#CONFLICTS=
> X
> XUSE_LINUX_RPM=	yes
> XLINUX_DIST_VER=	10
> XRPMVERSION=	1.fc10
> XUSE_LDCONFIG=	yes
> XDESCR=	${.CURDIR}/../openldap24-server/pkg-descr
> X
> XPLIST_DIRS=	etc/openldap/cacerts etc/openldap

I'd say only etc/openldap is needed (see below).

> XPLIST_FILES=	etc/openldap/ldap.conf usr/lib/liblber-2.4.so.2 usr/lib/liblber-2.4.so.2.2.0 usr/lib/libldap-2.4.so.2 usr/lib/libldap-2.4.so.2.2.0 usr/lib/libldap_r-2.4.so.2 usr/lib/libldap_r-2.4.so.2.2.0
> XDOCSDIR=	usr/share/doc/${PORTNAME}-${PORTVERSION}
> XPORTDOCS=	ANNOUNCEMENT CHANGES COPYRIGHT LICENSE README
> XMANPREFIX=	${PREFIX}/usr/share
> XMAN5=		ldap.conf.5 ldif.5
> XMANCOMPRESSED=	yes

At my port's propotype I have this:
-----
# do not install any openldap configuration directories/files
post-extract:
		${RM} -rf ${WRKSRC}/etc

# use a native openldap configuration directories/files
post-install:
		${LN} -sf ${LOCALBASE}/etc/openldap ${PREFIX}/etc
-----

This should work for managing the port via ports system but not with
packages.

> X
> X.include <bsd.port.mk>
> 17a12d65b66950d2cbc504ac86a37255
> echo x - net/linux-f10-openldap/distinfo.i386
> sed 's/^X//' >net/linux-f10-openldap/distinfo.i386 << 'f422178bbd4668750265f4e584e91c0e'
> XMD5 (rpm/i386/fedora/10/openldap-2.4.12-1.fc10.i386.rpm) = e3ea12058a8cdc54d6f270c802c92a00
> XSHA256 (rpm/i386/fedora/10/openldap-2.4.12-1.fc10.i386.rpm) = 2a71dcfdbfb1dc9b4e056c951518474d5958147c033f3584dc06e784fd67d567
> XSIZE (rpm/i386/fedora/10/openldap-2.4.12-1.fc10.i386.rpm) = 323504

The following commands would do the right thing (no src distinfo for
now):
-----
% cd <the port directory>
% sudo make fetch PACKAGE_BUILDING=YES
% sudo make makesum PACKAGE_BUILDING=YES
-----

> f422178bbd4668750265f4e584e91c0e
> echo c - security/linux-f10-cyrus-sasl2/
> mkdir -p security/linux-f10-cyrus-sasl2/ > /dev/null 2>&1
> echo x - security/linux-f10-cyrus-sasl2/Makefile
> sed 's/^X//' >security/linux-f10-cyrus-sasl2/Makefile << '4fc58bcf97a8889077c61da23cb55faa'
> X# New ports collection makefile for:	security/linux-f10-cyrus-sasl2
> X# Date created:				2009-06-07
> X# Whom:					peter
> X#
> X# $FreeBSD$
> X#
> X
> XPORTNAME=	cyrus-sasl2
> XPORTVERSION=	2.1.22
> XCATEGORIES=	security linux
> XPKGNAMEPREFIX=	linux-f10-
> XDISTNAME=	cyrus-sasl-lib-${PORTVERSION}-${RPMVERSION}
> X
> X.if defined(PACKAGE_BUILDING)
> XSRC_DISTFILES=	cyrus-sasl-lib-${PORTVERSION}-${RPMVERSION}.src.rpm
> XALWAYS_KEEP_DISTFILES=	YES
> X.endif

This is not right. I propose to add (somewhere further) instead
of the last four lines:
-----
SRC_DISTFILES=cyrus-sasl-${PORTVERSION}-${RPMVERSION}.src.rpm
-----

> X
> XMAINTAINER=	emulation at FreeBSD.org
> XCOMMENT=	RFC 2222 SASL (Simple Authentication and Security Layer) (Linux Fedora 10)
> X
> X#CONFLICTS=
> X
> XUSE_LINUX_RPM=	yes
> XLINUX_DIST_VER=	10
> XRPMVERSION=	19.fc10
> XUSE_LDCONFIG=	yes
> XBRANDELF_FILES=	usr/sbin/sasldblistusers2 usr/sbin/saslpasswd2
> XDESCR=	${.CURDIR}/../${PORTNAME}/pkg-descr
> X
> XPLIST_DIRS=	etc/sasl2 usr/lib/sasl2
> XPLIST_FILES=	usr/lib/libsasl2.so.2 usr/lib/libsasl2.so.2.0.22 usr/lib/sasl2/libanonymous.so usr/lib/sasl2/libanonymous.so.2 usr/lib/sasl2/libanonymous.so.2.0.22 usr/lib/sasl2/libsasldb.so usr/lib/sasl2/libsasldb.so.2 usr/lib/sasl2/libsasldb.so.2.0.22 usr/sbin/sasldblistusers2 usr/sbin/saslpasswd2
> XDOCSDIR=	usr/share/doc/cyrus-sasl-lib-${PORTVERSION}
> XPORTDOCS=	AUTHORS COPYING NEWS README advanced.html appconvert.html components.html gssapi.html index.html install.html macosx.html mechanisms.html options.html plugprog.html programming.html readme.html sysadmin.html upgrading.html windows.html
> X
> X.include <bsd.port.mk>
> 4fc58bcf97a8889077c61da23cb55faa
> echo x - security/linux-f10-cyrus-sasl2/distinfo.i386
> sed 's/^X//' >security/linux-f10-cyrus-sasl2/distinfo.i386 << '9c7e54bf867023e1f8fcaa16319c72f4'
> XMD5 (rpm/i386/fedora/10/cyrus-sasl-lib-2.1.22-19.fc10.i386.rpm) = 5a4ee3c84ec9581723fd56b658eec994
> XSHA256 (rpm/i386/fedora/10/cyrus-sasl-lib-2.1.22-19.fc10.i386.rpm) = ae8da4ee07615519c657ddbe3b8c128a2e81f00a4db0da17b7369dabe03ed6d2
> XSIZE (rpm/i386/fedora/10/cyrus-sasl-lib-2.1.22-19.fc10.i386.rpm) = 145305
> 9c7e54bf867023e1f8fcaa16319c72f4

The same comment about distinfo as for net/linux-f10-openldap.

> echo c - www/linux-f10-flashplugin10/
> mkdir -p www/linux-f10-flashplugin10/ > /dev/null 2>&1
> echo x - www/linux-f10-flashplugin10/Makefile
> sed 's/^X//' >www/linux-f10-flashplugin10/Makefile << '5455d901d257b50d731e64397ea6df2f'
> X# New ports collection makefile for:	www/linux-f10-flashplugin10

This port should be probably first repocopied from
www/linux-f8-flashplugin10 and then committed.

> X# Date created:				2009-06-26
> X# Whom:					bsam
> X# Based on:				www/linux-f8-flashplugin10 by nox@
> X#
> X# $FreeBSD$
> X#
> X
> XPORTNAME=	flashplugin
> XPORTVERSION=	10.0r22
> XCATEGORIES=	www multimedia linux
> XMASTER_SITES=	http://fpdownload.macromedia.com/get/flashplayer/current/:plugin \
> X		ftp://ftp.ipt.ru/pub/download/:suplib
> XPKGNAMEPREFIX=	linux-f10-
> XDISTFILES=	install_flash_player_10_linux.tar.gz:plugin \
> X		linux-f10-flashsupport-9.0.1.i386.tar.gz:suplib
> XDIST_SUBDIR=	${PORTNAME}/${PORTVERSION}
> X
> XMAINTAINER=	emulation at FreeBSD.org
> XCOMMENT=	Adobe Flash Player NPAPI Plugin
> X
> XONLY_FOR_ARCHS=	amd64 i386
> XUSE_LINUX=	yes
> XUSE_LINUX_APPS=	openssl curl cyrus-sasl2 libssh2 nspr nss openldap
> X
> XRESTRICTED=	Redistribution not allowed
> XRESTRICTED_FILES=	${DISTFILES:Nlinux-f10-flashsupport*:C/:[^:]+$//}
> X
> XNO_BUILD=	yes
> XWRKSRC=		${WRKDIR}/install_flash_player_10_linux
> X
> XUSE_NPAPI=	linux-*
> XNPAPI_FILES=	libflashplayer.so
> X
> XCONFLICTS=	linux-flashplugin-7* linux-flashplugin-9* linux-f8-flashplugin10-*
> X
> Xpost-install:
> X	@${INSTALL_PROGRAM} ${WRKDIR}/libflashsupport.so ${LINUXBASE}/usr/lib
> X
> X.include <bsd.port.pre.mk>
> X.include "${PORTSDIR}/www/linux-mplayer-plugin/Makefile.npapi"
> X.include <bsd.port.post.mk>
> 5455d901d257b50d731e64397ea6df2f
> echo x - www/linux-f10-flashplugin10/distinfo
> sed 's/^X//' >www/linux-f10-flashplugin10/distinfo << '1f552e2e0c05a396106217e48ff92103'
> XMD5 (flashplugin/10.0r22/install_flash_player_10_linux.tar.gz) = 23e4c2b844db0f87ff62084178aa2b1f
> XSHA256 (flashplugin/10.0r22/install_flash_player_10_linux.tar.gz) = cd29f166c87fecc943e88fe951bb61c56728fab12b4bf343badafa73ea95394e
> XSIZE (flashplugin/10.0r22/install_flash_player_10_linux.tar.gz) = 3994294
> XMD5 (flashplugin/10.0r22/linux-f10-flashsupport-9.0.1.i386.tar.gz) = 6e416c81497f65065d78dae1e0acad0d
> XSHA256 (flashplugin/10.0r22/linux-f10-flashsupport-9.0.1.i386.tar.gz) = 4a309b1a326bd2212cc72480628659e5a7fd61d9e0572cb7350c206f030955bf
> XSIZE (flashplugin/10.0r22/linux-f10-flashsupport-9.0.1.i386.tar.gz) = 3455
> 1f552e2e0c05a396106217e48ff92103
> echo x - www/linux-f10-flashplugin10/pkg-descr
> sed 's/^X//' >www/linux-f10-flashplugin10/pkg-descr << '57a1420ff5e8cb1b77c71ecb3a15c599'
> XThis is the official Flash Player from Adobe. This plugin enables
> Xyou to see .swf and .spl files on the 'net from your Opera, Mozilla or
> XFirefox sessions.
> X
> XPlease see the Adobe home page for more information.
> X
> XFreeBSD Flash License Agreement:
> X	http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/96374
> X
> XWWW: http://www.adobe.com/
> 57a1420ff5e8cb1b77c71ecb3a15c599
> echo x - www/linux-f10-flashplugin10/pkg-plist
> sed 's/^X//' >www/linux-f10-flashplugin10/pkg-plist << '9254ee58cdc375ce93f8fc3b1afc9e77'
> X at cwd /compat/linux
> Xusr/lib/libflashsupport.so
> X at cwd
> 9254ee58cdc375ce93f8fc3b1afc9e77
> exit

There may be something more, but I don't see it right now. Thanks for
all involved! It's a good team work.


WBR
-- 
bsam


More information about the freebsd-current mailing list