Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 321867 - www-plugins/nspluginwrapper-1.3.0 fails with forced as-needed
Summary: www-plugins/nspluginwrapper-1.3.0 fails with forced as-needed
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: AMD64 Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: as-needed
  Show dependency tree
 
Reported: 2010-05-28 17:38 UTC by Andreas K. Hüttel
Modified: 2010-06-20 12:19 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Output of emerge --info (emerge-info-nspluginwrapper.txt,5.24 KB, text/plain)
2010-05-28 17:40 UTC, Andreas K. Hüttel
Details
adding epatch (nspluginwrapper-1.2.2-r2.diff,435 bytes, patch)
2010-06-16 22:03 UTC, Kacper Kowalik (Xarthisius) (RETIRED)
Details | Diff
fixing as-needed issues (nspluginwrapper-1.2.2-gentoo.diff,12.66 KB, patch)
2010-06-16 22:04 UTC, Kacper Kowalik (Xarthisius) (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas K. Hüttel archtester gentoo-dev 2010-05-28 17:38:36 UTC
>>> Emerging (1 of 1) www-plugins/nspluginwrapper-1.2.2-r2
 * nspluginwrapper-1.2.2.tar.bz2 RMD160 SHA1 SHA256 size ;-) ...                                                                                          [ ok ]
 * checking ebuild checksums ;-) ...                                                                                                                      [ ok ]
 * checking auxfile checksums ;-) ...                                                                                                                     [ ok ]
 * checking miscfile checksums ;-) ...                                                                                                                    [ ok ]
 * CPV:  www-plugins/nspluginwrapper-1.2.2-r2
 * REPO: gentoo
 * USE:  amd64 elibc_glibc kernel_linux multilib userland_GNU
>>> Unpacking source...
>>> Unpacking nspluginwrapper-1.2.2.tar.bz2 to /var/tmp/portage/www-plugins/nspluginwrapper-1.2.2-r2/work
>>> Source unpacked in /var/tmp/portage/www-plugins/nspluginwrapper-1.2.2-r2/work
>>> Preparing source in /var/tmp/portage/www-plugins/nspluginwrapper-1.2.2-r2/work/nspluginwrapper-1.2.2 ...
 * Applying nspluginwrapper-1.2.2-gcc44.patch ...                                                                                                          [ ok ]
 * Applying nspluginwrapper-1.2.2-npidentifiers.patch ...                                                                                                  [ ok ]
 * Applying nspluginwrapper-1.2.2-respect-ldflags.patch ...                                                                                                [ ok ]
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/www-plugins/nspluginwrapper-1.2.2-r2/work/nspluginwrapper-1.2.2 ...
./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --enable-biarch --target-cpu=i386 --with-lib32=lib32 --with-lib64=lib64 --pkglibdir=/usr/lib64/nspluginwrapper
GLIB 2.0 environment not usable
 * ERROR: www-plugins/nspluginwrapper-1.2.2-r2 failed:
 *   econf failed
 * 
 * Call stack:
 *     ebuild.sh, line   54:  Called src_configure
 *   environment, line 2710:  Called econf '--enable-biarch' '--target-cpu=i386' '--with-lib32=lib32' '--with-lib64=lib64' '--pkglibdir=/usr/lib64/nspluginwrapper'
 *     ebuild.sh, line  544:  Called die
 * The specific snippet of code:
 *                      die "econf failed"
 * 
 * If you need support, post the output of 'emerge --info =www-plugins/nspluginwrapper-1.2.2-r2',
 * the complete build log and the output of 'emerge -pqv =www-plugins/nspluginwrapper-1.2.2-r2'.
 * The complete build log is located at '/var/tmp/portage/www-plugins/nspluginwrapper-1.2.2-r2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/www-plugins/nspluginwrapper-1.2.2-r2/temp/environment'.
 * S: '/var/tmp/portage/www-plugins/nspluginwrapper-1.2.2-r2/work/nspluginwrapper-1.2.2'


Digging into the code of the configure script and recreating the conditions, I find that the following test fails:

huettel@pinacolada ~ $ gcc -std=c99 -O2 -g -mtune=generic -Wall -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lglib-2.0 t.c -o t.o
/tmp/cc91xsN6.o: In function `main':
/home/huettel/t.c:3: undefined reference to `g_main_context_pending'
collect2: ld gab 1 als Ende-Status zurück
huettel@pinacolada ~ $ 

with t.c

#include <glib.h>
int main(void) {
    (void) g_main_pending();
    return 0;
}
Comment 1 Andreas K. Hüttel archtester gentoo-dev 2010-05-28 17:40:21 UTC
Created attachment 233303 [details]
Output of emerge --info
Comment 2 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2010-06-16 22:03:58 UTC
Created attachment 235657 [details, diff]
adding epatch

I've combined gcc44.patch, respect-ldflags.patch and new asneeded.patch into one gentoo.diff
Comment 3 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2010-06-16 22:04:21 UTC
Created attachment 235659 [details, diff]
fixing as-needed issues
Comment 4 Pacho Ramos gentoo-dev 2010-06-20 10:08:31 UTC
Please test with 1.3.0 and reopen if still valid (you will probably have to update patch in that case :-/)

Thanks
Comment 5 Samuli Suominen (RETIRED) gentoo-dev 2010-06-20 10:11:12 UTC
reopening, still entirely broken
Comment 6 Pacho Ramos gentoo-dev 2010-06-20 10:18:45 UTC
But what exact changes are needed? I would prefer to keep near to some other distribution since upstream is dead and I pretty much hate this one (I simply tried to bump it as amd64 users must use this again due adobe no longer providing 64 bits flash plugins :'-( )
Comment 7 Pacho Ramos gentoo-dev 2010-06-20 10:19:47 UTC
And I would prefer to see splitted patches (for learning and understanding purposes) over "mega patches" ;-)
Comment 8 Samuli Suominen (RETIRED) gentoo-dev 2010-06-20 10:22:59 UTC
(In reply to comment #7)
> And I would prefer to see splitted patches (for learning and understanding
> purposes) over "mega patches" ;-)
> 

err... all the patch does is adding missing $(foo_LIBS) to fix missing -l flags for libs it needs. also changes ldflags to libs in some places, because you can't use ldflags to pass -l libs. 

it's all here: http://www.gentoo.org/proj/en/qa/asneeded.xml
Comment 9 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2010-06-20 11:21:54 UTC
(In reply to comment #7)
> And I would prefer to see splitted patches (for learning and understanding
> purposes) over "mega patches" ;-)

I've merged those patches since they've changed the same files and fixed QA issues. I don't like idea of "patch over patch". 
Summarizing changes, we need correct linking order, roughly:
 CC LDFLAGS OBJECTS LIBS
since `pkg-config --libs foo` give you _libs_ I've changed foo_LDFLAGS to foo_LIBS and corrected linking order.

I'm going to do the same for 1.3.0, i.e. asneeed.patch will obsolete make.patch and ldflags.patch, for two reasons:
 1) ldflags.patch is highly related to asneeded and it's only one line patch
 2) make.patch is wrong since it adds LDFLAGS at the end of link

Best regards,
Kacper
Comment 10 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2010-06-20 11:32:08 UTC
Fixed in tree:
+  20 Jun 2010; Kacper Kowalik <xarthisius@gentoo.org>
+  nspluginwrapper-1.3.0.ebuild, +files/nspluginwrapper-1.3.0-asneeded.patch,
+  -files/nspluginwrapper-1.3.0-ldflags.patch,
+  -files/nspluginwrapper-1.3.0-make.patch:
+  Fixing as-needed issues and respecting LDFLAGS wrt bug 321867
+
Comment 11 Pacho Ramos gentoo-dev 2010-06-20 11:34:55 UTC
Thanks a lot Andreas, Samuli and Kacper
Comment 12 Matt 2010-06-20 12:19:01 UTC
(In reply to comment #11)
> Thanks a lot Andreas, Samuli and Kacper
> 

++

thank you very much :)