Bug 76914

Summary: /usr/ports/audio/xmms-osssurround (build error amd64)
Product: Ports & Packages Reporter: gert cuykens <gert.cuykens>
Component: Individual Port(s)Assignee: Tilman Keskinoz <arved>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   

Description gert cuykens 2005-01-31 18:30:13 UTC
/usr/ports/audio/xmms-osssurround (build error amd64)

CFLAGS+= -fPIC in make file not working

> 7rxI# make
> ===> Building for xmms-osssurround-0.1_1
> cc -shared -olibOSSSurround.so about.o audio.o configure.o convert.o
> init.o mixer.o OSS.o
> /usr/bin/ld: about.o: relocation R_X86_64_32 can not be used when
> making a shared object; recompile with -fPIC
> about.o: could not read symbols: Bad value
> *** Error code 1
>
> Stop in /usr/ports/audio/xmms-osssurround/work/xmms-a52dec-1.0/OSSSurround-0.1.
> *** Error code 1
>
> Stop in /usr/ports/audio/xmms-osssurround.
> 7rxI#

How-To-Repeat: cd /usr/ports/audio/xmms-osssurround
make
Comment 1 Pav Lucistnik freebsd_committer freebsd_triage 2005-01-31 20:13:00 UTC
Responsible Changed
From-To: freebsd-amd64->freebsd-ports-bugs

Refile under ports where it belongs.
Comment 2 Tilman Keskinoz freebsd_committer freebsd_triage 2005-01-31 21:58:27 UTC
State Changed
From-To: open->feedback

Works fine here. 

Do you have the patch files in the port's files-dir?
Comment 3 gert cuykens 2005-02-01 05:50:22 UTC
No i did not put or replaced any files in the port directory.
Did you test it on a amd64 ? 
Can you post your make file please and the make output ?
Did it compile with cc -fPIC ... ?
Comment 4 Tilman Keskinoz freebsd_committer freebsd_triage 2005-02-01 10:08:25 UTC
* Gert Cuykens [2005-02-01 07:05]:
> > Works fine here.
> > 
> > Do you have the patch files in the port's files-dir?
> > 
> No i did not put or replaced any files in the port directory.
> Did you test it on a amd64 ?

Yes.

> Can you post your make file please and the make output ?
> Did it compile with cc -fPIC ... ?

Yes, that's why I was asking which patch files you have in the
files-directory.
Comment 5 gert cuykens 2005-02-01 10:36:06 UTC
On Tue, 1 Feb 2005 11:08:25 +0100, Tilman Linneweh <arved@freebsd.org> wrote:
> * Gert Cuykens [2005-02-01 07:05]:
> > > Works fine here.
> > >
> > > Do you have the patch files in the port's files-dir?
> > > 
> > No i did not put or replaced any files in the port directory.
> > Did you test it on a amd64 ?
> 
> Yes.
> 
> > Can you post your make file please and the make output ?
> > Did it compile with cc -fPIC ... ?
> 
> Yes, that's why I was asking which patch files you have in the
> files-directory.
> 

7rxI# ls
patch-OSSSurround-0.1_Makefile          patch-OSSSurround-0.1_configure.c
7rxI# cat patch-OSSSurround-0.1_configure.c

$FreeBSD: ports/audio/xmms-osssurround/files/patch-OSSSurround-0.1_configure.c,v
1.1 2002/08/11 21:04:30 naddy Exp $

--- OSSSurround-0.1/configure.c.orig    Sun Jan  6 14:36:17 2002
+++ OSSSurround-0.1/configure.c Thu Aug  1 19:10:21 2002
@@ -136,7 +136,7 @@
                                }
                                else
                                        item =
gtk_menu_item_new_with_label(buffer);
-                               gtk_signal_connect(GTK_OBJECT(item),
"activate", sigfunc, (gpointer) index++);
+                               gtk_signal_connect(GTK_OBJECT(item),
"activate", sigfunc, GINT_TO_POINTER(index++));
                                gtk_widget_show(item);
                                gtk_menu_append(GTK_MENU(menu), item);
                        }
7rxI# cat patch-OSSSurround-0.1_Makefile

$FreeBSD: ports/audio/xmms-osssurround/files/patch-OSSSurround-0.1_Makefile,v
1.1 2002/08/11 21:04:30 naddy Exp $

--- OSSSurround-0.1/Makefile.orig       Sun Mar 31 10:26:30 2002
+++ OSSSurround-0.1/Makefile    Thu Aug  1 19:16:46 2002
@@ -1,34 +1,34 @@
-CFLAGS = `gtk-config --cflags`
+CFLAGS += `xmms-config --cflags`

 all: libOSSSurround.so

 libOSSSurround.so: about.o audio.o configure.o convert.o init.o mixer.o OSS.o
-       gcc -shared -olibOSSSurround.so about.o audio.o configure.o
convert.o init.o mixer.o OSS.o
+       ${CC} -shared -olibOSSSurround.so about.o audio.o configure.o
convert.o init.o mixer.o OSS.o

 about.o: about.c config.h i18n.h OSS.h
-       gcc -c -oabout.o about.c ${CFLAGS}
+       ${CC} ${CFLAGS} -c -oabout.o about.c

 audio.o: audio.c config.h i18n.h OSS.h
-       gcc -c -oaudio.o audio.c ${CFLAGS}
+       ${CC} ${CFLAGS} -c -oaudio.o audio.c

 configure.o: configure.c config.h i18n.h OSS.h
-       gcc -c -oconfigure.o configure.c ${CFLAGS}
+       ${CC} ${CFLAGS} -c -oconfigure.o configure.c

 convert.o: convert.c config.h i18n.h OSS.h
-       gcc -c -oconvert.o convert.c ${CFLAGS}
+       ${CC} ${CFLAGS} -c -oconvert.o convert.c

 init.o: init.c config.h i18n.h OSS.h
-       gcc -c -oinit.o init.c ${CFLAGS}
+       ${CC} ${CFLAGS} -c -oinit.o init.c

 mixer.o: mixer.c config.h i18n.h OSS.h
-       gcc -c -omixer.o mixer.c ${CFLAGS}
+       ${CC} ${CFLAGS} -c -omixer.o mixer.c

 OSS.o: OSS.c config.h i18n.h OSS.h
-       gcc -c -oOSS.o OSS.c ${CFLAGS}
+       ${CC} ${CFLAGS} -c -oOSS.o OSS.c

 clean:
        rm -f *.o libOSSSurround.so

 install: libOSSSurround.so
        install -s -o root -g root -m 755 libOSSSurround.so
"`xmms-config --output-plugin-dir`"
-       echo `xmms-config --output-plugin-dir`/libOSSSurround.so >>
../installed.files
+       echo `xmms-config --output-plugin-dir`/libOSSSurround.so >>
../installed.files
7rxI#
Comment 6 Tilman Linneweh 2005-02-01 12:53:28 UTC
> 7rxI# ls
> patch-OSSSurround-0.1_Makefile          
> patch-OSSSurround-0.1_configure.c
>
Hm, looks okay.
Do you have special settings in your make.conf?

What's the output of make -V CFLAGS in the ports directory?
Comment 7 gert cuykens 2005-02-01 13:08:58 UTC
On Tue, 1 Feb 2005 13:53:28 +0100, Tilman Linneweh <arved@arved.at> wrote:
> 
> > 7rxI# ls
> > patch-OSSSurround-0.1_Makefile
> > patch-OSSSurround-0.1_configure.c
> >
> Hm, looks okay.
> Do you have special settings in your make.conf?
> 
> What's the output of make -V CFLAGS in the ports directory?
> 
> 

7rxI# cat /etc/make.conf
##################
# /etc/make.conf #
##################

CPUTYPE?=k8
CFLAGS= -O -pipe
COPTFLAGS= -O -pipe
DOC_LANG= en_US.ISO8859-1
X_WINDOW_SYSTEM=xorg
WITH_LAME= yes
PERL_VER=5.8.5
PERL_VERSION=5.8.5
PERL_ARCH=mach
NOPERL=yo
NO_PERL=yo
NO_PERL_WRAPPER=yo
WITH_APACHE2=yes
APACHE_PORT=www/apache21
DEFAULT_PHP_VER=5
WITH_MYSQL_VER=50

7rxI# make -V CFLAGS
-O -pipe -march=k8 -fPIC
7rxI#
Comment 8 gert cuykens 2005-02-01 16:28:18 UTC
On Tue, 1 Feb 2005 15:33:53 +0100, Tilman Linneweh <arved@arved.at> wrote:
> >> What's the output of make -V CFLAGS in the ports directory?
> > 7rxI# make -V CFLAGS
> > -O -pipe -march=k8 -fPIC
> > 7rxI#
> >
> That looks right too.
> 
> Can you send me offlist a buildlog of
> make -dl clean build

7rxI# make -dl clean build
cd /usr/ports/audio/xmms-osssurround && make  clean-depends
for dir in $(checked="";  for dir in $(echo "   
xmms.4:/usr/ports/multimedia/xmms X11.6:/usr/ports/x11/xorg-libraries
" | /usr/bin/sed -e 'y/ /\n/' | /usr/bin/cut -f 2 -d ':') $(echo  |
/usr/bin/sed -e 'y/ /\n/' | /usr/bin/cut -f 1 -d ':'); do  if [ -d
$dir ]; then  if (echo $checked | /usr/bin/grep -qwv "$dir"); then 
child=$(cd $dir; make PARENT_CHECKED="$checked" all-depends-list); 
for d in $child; do echo $d; done;  echo $dir;  checked="$dir $child
$checked";  fi;  else  echo "xmms-osssurround-0.1_1: \"$dir\"
non-existent -- dependency list incomplete" >&2;  fi;  done |
/usr/bin/sort -u); do  (cd $dir; make NOCLEANDEPENDS=yes clean);  done
Unknown modifier '/'

Unknown modifier '''

Unknown modifier '''

Unknown modifier '''

Unknown modifier '/'

Unclosed variable specification for cd
d
dependency
dir
do
done
done;
echo
else
fi;
for
iconv.3
Unknown modifier ''

hild: not found
cd: can't cd to "
*** Error code 2

Stop in /usr/ports/audio/xmms-osssurround.
*** Error code 1

Stop in /usr/ports/audio/xmms-osssurround.
7rxI#
Comment 9 Tilman Keskinoz freebsd_committer freebsd_triage 2005-02-01 17:36:57 UTC
* Gert Cuykens [2005-02-01 17:28]:
> > Can you send me offlist a buildlog of
> > make -dl clean build
> 
> 7rxI# make -dl clean build
> cd /usr/ports/audio/xmms-osssurround && make  clean-depends
> for dir in $(checked="";  for dir in $(echo "   
> xmms.4:/usr/ports/multimedia/xmms X11.6:/usr/ports/x11/xorg-libraries
> " | /usr/bin/sed -e 'y/ /\n/' | /usr/bin/cut -f 2 -d ':') $(echo  |
> /usr/bin/sed -e 'y/ /\n/' | /usr/bin/cut -f 1 -d ':'); do  if [ -d
> $dir ]; then  if (echo $checked | /usr/bin/grep -qwv "$dir"); then 
> child=$(cd $dir; make PARENT_CHECKED="$checked" all-depends-list); 
> for d in $child; do echo $d; done;  echo $dir;  checked="$dir $child
> $checked";  fi;  else  echo "xmms-osssurround-0.1_1: \"$dir\"
> non-existent -- dependency list incomplete" >&2;  fi;  done |
> /usr/bin/sort -u); do  (cd $dir; make NOCLEANDEPENDS=yes clean);  done
> Unknown modifier '/'
> 
> Unknown modifier '''
> 
> Unknown modifier '''
> 
> Unknown modifier '''
> 
> Unknown modifier '/'
> 
> Unclosed variable specification for cd
> d
> dependency
> dir
> do
> done
> done;
> echo
> else
> fi;
> for
> iconv.3
> Unknown modifier ''
> 
> hild: not found
> cd: can't cd to "
> *** Error code 2
> 
> Stop in /usr/ports/audio/xmms-osssurround.
> *** Error code 1

Hm, sorry for not testing first, not sure why "make -dl clean" is 
broken, 

Can you send me _offlisti_ the output of a clean make -dl build.
Comment 10 Tilman Keskinoz freebsd_committer freebsd_triage 2005-02-03 17:25:25 UTC
Responsible Changed
From-To: freebsd-ports-bugs->arved

I am working on this one
Comment 11 Tilman Keskinoz freebsd_committer freebsd_triage 2005-05-03 18:16:21 UTC
State Changed
From-To: feedback->closed

Oops, never followed up on this one. 

It looks like their was something goofy in the ports Makefile. 
After the Makefile cleanup by Volker Stolz in March this port now 
works as it should.