pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
RE: pkg/39085: firefox3 compile problem: undefined symbol main
The following reply was made to PR pkg/39085; it has been noted by GNATS.
From: Tim Zingelman <zingelman%fnal.gov@localhost>
To: tnn%netbsd.org@localhost, gnats-bugs%netbsd.org@localhost
Cc:
Subject: RE: pkg/39085: firefox3 compile problem: undefined symbol main
Date: Wed, 10 Dec 2008 18:23:29 -0600 (CST)
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
--Boundary_(ID_o/4U0ajOO45ir7VyXim1TA)
Content-type: TEXT/PLAIN; charset=US-ASCII; format=flowed
Content-transfer-encoding: 7BIT
I've got a working pkgsrc firefox3 for solaris 10 sparc gcc34.
In the Makefile, I commented out the sqlite3 dependency, since firefox
builds its own, and also changed the include of libjemalloc.so to depend
on the PKG_OPTION, not the OPSYS... it seemed to be needed for my
environment:
diff -r1.8 Makefile
16c16
< .include "../../databases/sqlite3/buildlink3.mk"
---
> #.include "../../databases/sqlite3/buildlink3.mk"
68,69c68,69
< # Install libjemalloc.so which is needed on Linux.
< .if ${OPSYS} == "Linux"
---
> # Install libjemalloc.so if the option is selected.
> .if !empty(PKG_OPTIONS:Mmozilla-jemalloc)
Then I added these two patch files, the first eliminates the unresolved
reference to main, and the second the lack of (and no need for) libCstd
when using the gcc compiler:
cat patches/patch-za
--- db/sqlite3/src/Makefile.in.orig Mon Dec 8 11:33:32 2008
+++ db/sqlite3/src/Makefile.in Mon Dec 8 11:39:11 2008
@@ -50,6 +50,7 @@
FORCE_SHARED_LIB = 1
VISIBILITY_FLAGS =
LIB_IS_C_ONLY = 1
+EXTRA_DSO_LDOPTS += -shared
ifeq (,$(filter-out WINNT WINCE,$(OS_ARCH)))
ifndef GNU_CC
cat patches/patch-zb
--- toolkit/library/Makefile.in.orig Mon Dec 8 10:35:50 2008
+++ toolkit/library/Makefile.in Mon Dec 8 10:37:02 2008
@@ -227,8 +227,12 @@
endif
ifeq ($(OS_ARCH),SunOS)
+ifdef GNU_CC
+EXTRA_DSO_LDOPTS += -lelf -ldemangle
+else
EXTRA_DSO_LDOPTS += -lelf -ldemangle -lCstd
endif
+endif
ifeq ($(OS_ARCH),WINNT)
EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME,shell32 ole32 uuid version
winspool comdlg32 imm32 winmm wsock32 msimg32)
SHA1 (patch-za) = 125aeaaaf38aaface7322019756477b9b0f4b725
SHA1 (patch-zb) = 1d1df80cfb8dc066e5c41866dfb4933fa1daccc2
/usr/pkg/etc/mk.conf includes:
X11_TYPE=modular
PKG_OPTIONS.gecko=official-mozilla-branding
ACCEPTABLE_LICENSES+=mozilla-trademark-license
Hope this helps.
The only thing that is not perfect is the PLIST issue with libjemalloc.so,
which I can't quite figure out... none of the usual tricks work.
It does not appear that the PLIST.Linux is used at all... I copied it to
PLIST.SunOS, but that did not get libjemalloc into the package contents.
I tried adding to PLIST:
${JEMALLOC}lib/${MOZILLA}/libjemalloc.${SO_SUFFIX}
and in the Makefile setting either
PLIST_SUBST+=JEMALLOC=""
or
PLIST_SUBST+=JEMALLOC="@comment "
but that resulted in this error:
install:
/usr/pkg/pkgsrc/www/firefox3/work/mozilla/${JEMALLOC}dist/bin/libjemalloc.so
does not exist
during the bmake install, and still no libjemalloc in the package
contents.
I even added a simple:
lib/${MOZILLA}/libjemalloc.${SO_SUFFIX}
to the PLIST, and got no errors, but also no libjemalloc in the package
contents.
The ../firefox/Makefile.common does some dynamic PLIST manipulation, and
maybe that is where this needs to be fixed.
- Tim
--Boundary_(ID_o/4U0ajOO45ir7VyXim1TA)
Content-id: <Pine.GSO.4.64.0812101823290.7635%nova.fnal.gov@localhost>
Content-type: TEXT/PLAIN; charset=US-ASCII; name=patch-za
Content-transfer-encoding: 7BIT
Content-disposition: attachment; filename=patch-za
Content-description:
--- db/sqlite3/src/Makefile.in.orig Mon Dec 8 11:33:32 2008
+++ db/sqlite3/src/Makefile.in Mon Dec 8 11:39:11 2008
@@ -50,6 +50,7 @@
FORCE_SHARED_LIB = 1
VISIBILITY_FLAGS =
LIB_IS_C_ONLY = 1
+EXTRA_DSO_LDOPTS += -shared
ifeq (,$(filter-out WINNT WINCE,$(OS_ARCH)))
ifndef GNU_CC
--Boundary_(ID_o/4U0ajOO45ir7VyXim1TA)
Content-id: <Pine.GSO.4.64.0812101823291.7635%nova.fnal.gov@localhost>
Content-type: TEXT/PLAIN; charset=US-ASCII; name=patch-zb
Content-transfer-encoding: 7BIT
Content-disposition: attachment; filename=patch-zb
Content-description:
--- toolkit/library/Makefile.in.orig Mon Dec 8 10:35:50 2008
+++ toolkit/library/Makefile.in Mon Dec 8 10:37:02 2008
@@ -227,8 +227,12 @@
endif
ifeq ($(OS_ARCH),SunOS)
+ifdef GNU_CC
+EXTRA_DSO_LDOPTS += -lelf -ldemangle
+else
EXTRA_DSO_LDOPTS += -lelf -ldemangle -lCstd
endif
+endif
ifeq ($(OS_ARCH),WINNT)
EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME,shell32 ole32 uuid version winspool
comdlg32 imm32 winmm wsock32 msimg32)
--Boundary_(ID_o/4U0ajOO45ir7VyXim1TA)--
Home |
Main Index |
Thread Index |
Old Index