Bug 53474

Summary: Fix audio support for squeak3
Product: Ports & Packages Reporter: NINOMIYA Hideyuki <NINOMIYA Hideyuki <nin>
Component: Individual Port(s)Assignee: freebsd-ports-bugs (Nobody) <ports-bugs>
Status: Closed FIXED    
Severity: Affects Only Me CC: roland.jesse
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
squeak3.diff none

Description NINOMIYA Hideyuki <NINOMIYA Hideyuki 2003-06-19 02:00:23 UTC
Sound support comes to do squeak3(squeak-3.5) porting, but does not
become effective because, actually, it cannot detect the library which
I am going to utilize with stage of configure.

Fix: * fix for sound support.
* WITHOUT_AUDIO make option added.
* WITH_MMX make option added (effect is unconfirmed).
* inisqueak smoothly run patch added.
How-To-Repeat: cd /usr/ports/lang/squeak3
make configure

But !, the next message is out, "audio support disabled".

Of course a sound does not sound even if I start squeak which built it
after having started nasd.
Comment 1 Ceri Davies freebsd_committer freebsd_triage 2003-06-20 19:04:21 UTC
Adding to audit trail, from misfiled PR ports/53551:

Date: Fri, 20 Jun 2003 15:38:15 +0200
From: Roland Jesse <roland.jesse@gmx.net>
Message-Id: <200306201538.15619.roland.jesse@gmx.net>
References: <20030619.095324.846931882.nin@polka.mail.plala.or.jp>

 Hi,
 
 On Thursday 19 June 2003 02:53, NINOMIYA Hideyuki wrote:
 > Sound support comes to do squeak3(squeak-3.5) porting, but does not
 > become effective
 
 Thanks for looking into this.
 
 A couple minor notes:
 
 * We should add "PORTREVISION=1" in case the suggested changes get committed.
 
 > -CONFIGURE_ARGS+=	--libdir=${PREFIX}/share --with-audio
 > +CONFIGURE_ARGS+=	--libdir=${PREFIX}/share --with-audio=nas
 
 It is probably better to leave out the "--with-audio" switch here completely 
 as it is already taken care of:
 
 > +.ifdef (WITHOUT_AUDIO)
 > +CONFIGURE_ARGS+=	--without-audio
 > +.else
 > +LIB_DEPENDS+=	audio.2:${PORTSDIR}/audio/nas
 > +CONFIGURE_ARGS+=	--with-audio=nas
 > +.endif
 
 This looks very nice to me.
 
 > +--- platforms/unix/config/inisqueak.in.orig	Mon Jun 16 11:14:41 2003
 > ++++ platforms/unix/config/inisqueak.in	Mon Jun 16 11:19:18 2003
 
 I don't see the need to add a new patch file to CVS. Two ${REINPLACE_CMD} 
 lines can handle this job directly from within the Makefile.
 
 Otherwise, I am all in favour of committing this fix.
 
 Best,
   Roland (maintainer of lang/squeak3)
Comment 2 NINOMIYA Hideyuki <NINOMIYA Hideyuki 2003-07-01 13:52:44 UTC
Hi,

Date: Fri, 20 Jun 2003 15:38:15 +0200
From: Roland Jesse <roland.jesse@gmx.net>
Message-Id: <200306201538.15619.roland.jesse@gmx.net>
>   * We should add "PORTREVISION=1" in case the suggested changes get committed.
>  
>   > -CONFIGURE_ARGS+=	--libdir=${PREFIX}/share --with-audio
>   > +CONFIGURE_ARGS+=	--libdir=${PREFIX}/share --with-audio=nas
  
>   It is probably better to leave out the "--with-audio" switch here completely 
>   as it is already taken care of:

I made a mistake this
sorry
  
>   > +--- platforms/unix/config/inisqueak.in.orig	Mon Jun 16 11:14:41 2003
>   > ++++ platforms/unix/config/inisqueak.in	Mon Jun 16 11:19:18 2003
  
>   I don't see the need to add a new patch file to CVS. Two ${REINPLACE_CMD} 
>   lines can handle this job directly from within the Makefile.

I understood it

I remade diff file

* add new patch file 
	files/patch-platforms-unix-config-configure
  This is GCC-3 -O2 problem solution, but this is not complete solution.
  -O optimize option is passable.

new diff file from next line.
--8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<--
diff -urN squeak3.orig/Makefile squeak3/Makefile
--- squeak3.orig/Makefile	Thu Jun 12 11:13:22 2003
+++ squeak3/Makefile	Tue Jul  1 21:13:00 2003
@@ -7,6 +7,7 @@
 
 PORTNAME=	squeak
 PORTVERSION=	3.5
+PORTREVISION=	1
 CATEGORIES=	lang
 MASTER_SITES=	ftp://st.cs.uiuc.edu/Smalltalk/Squeak/3.5/ \
 		http://www-sor.inria.fr/~piumarta/squeak/unix/release/ \
@@ -21,7 +22,6 @@
 
 # Don't set USE_ZIP as this breaks EXTRACT_CMD, EXTRACT_SUFX, and what not.
 BUILD_DEPENDS=	unzip:${PORTSDIR}/archivers/unzip
-LIB_DEPENDS+=	audio.2:${PORTSDIR}/audio/nas
 
 SQUEAK_VERSION=	3.4-1
 SQUEAK_IMAGE_VERSION=	3.5
@@ -42,12 +42,23 @@
 CONFIGURE_WRKSRC=	${WRKSRC}/build
 INSTALL_WRKSRC=	${CONFIGURE_WRKSRC}
 CONFIGURE_SCRIPT=	../platforms/unix/config/configure
-CONFIGURE_ARGS+=	--libdir=${PREFIX}/share --with-audio
+CONFIGURE_ARGS+=	--libdir=${PREFIX}/share
 # don't pass "-s" to install to avoid trying to strip a shell script
 CONFIGURE_ENV=	INSTALL_PROGRAM="${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE}"
 BUILD_WRKSRC=	${WRKSRC}/build
 DIST_SUBDIR=	squeak
 
+.ifdef (WITHOUT_AUDIO)
+CONFIGURE_ARGS+=	--without-audio
+.else
+LIB_DEPENDS+=	audio.2:${PORTSDIR}/audio/nas
+CONFIGURE_ARGS+=	--with-audio=nas
+.endif
+
+.ifdef (WITH_MMX)
+CONFIGURE_ARGS+=	--enable-mpg-mmx
+.endif
+
 MAKEFILE=	Makefile
 .ifdef (CC)
 MAKE_ARGS+=	CC=${CC}
@@ -75,7 +86,11 @@
 	(cd ${PREFIX}/share/squeak && ${GZIP_CMD} ${file})
 .endfor
 # install inisqueak and change the build in version number on the fly
-	${SED} -e 's|VERSION=3.4-5170|VERSION=3.5-5180|' ${WRKSRC}/build/inisqueak > ${PREFIX}/bin/inisqueak
+	${SED} \
+		-e 's|VERSION=3.4-5170|VERSION=3.5-5180|' \
+		-e 's|IMAGE=squeak|IMAGE=Squeak3.5-5180|' \
+		-e 's|CHANGES=squeak|CHANGES=Squeak3.5-5180|' \
+		${WRKSRC}/build/inisqueak > ${PREFIX}/bin/inisqueak
 	${CHMOD} 755 ${PREFIX}/bin/inisqueak
 	${STRIP_CMD} ${PREFIX}/share/squeak/${SQUEAK_VERSION}/squeak
 	${CAT} ${PKGMESSAGE}
diff -urN squeak3.orig/files/patch-platforms-unix-config-configure squeak3/files/patch-platforms-unix-config-configure
--- squeak3.orig/files/patch-platforms-unix-config-configure	Thu Jan  1 09:00:00 1970
+++ squeak3/files/patch-platforms-unix-config-configure	Tue Jul  1 19:05:52 2003
@@ -0,0 +1,16 @@
+--- platforms/unix/config/configure.orig	Tue Jul  1 18:53:26 2003
++++ platforms/unix/config/configure	Tue Jul  1 19:03:44 2003
+@@ -9852,7 +9852,12 @@
+   cat >conftest.$ac_ext <<_ACEOF
+ #line 9853 "configure"
+ #include "confdefs.h"
+-main(){ double d= 1.0; return *(int *)&d == 0;}
++int main(void)
++{
++	union { double d; int i[ sizeof(double) / sizeof(int) ]; } d;
++	d.d = 1.0;
++	return d.i[0] == 0;
++}
+ _ACEOF
+ rm -f conftest$ac_exeext
+ if { (eval echo "$as_me:9858: \"$ac_link\"") >&5

--8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<--

o.k. ?
----
*******************************************************************
* This message is a thing by output of automatic translation.     *
* Therefore it will be for there to be a lot of funny parts.      *
* Please approve it.                                              *
*******************************************************************
NINOMIYA(family name) Hideyuki(personal name)         @ ehime japan
mailto:nin@polka.plala.or.jp              mailto:nin@Jp.FreeBSD.org
PGP-Fingerprint: 6C59 EC08 5B23 6490 44D0  7CD3 DA40 219F 7114 8553
PGP-Public-Key: http://www10.plala.or.jp/key-com/pgp/public-key.txt
Comment 3 Edwin Groothuis freebsd_committer freebsd_triage 2003-09-01 04:55:06 UTC
State Changed
From-To: open->closed

Commited, thanks!