Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Unsupported Software
  • Search

Firefox / Deer Park CVS Ebuild

This forum covers all Gentoo-related software not officially supported by Gentoo. Ebuilds/software posted here might harm the health and stability of your system(s), and are not supported by Gentoo developers. Bugs/errors caused by ebuilds from overlays.gentoo.org are covered by this forum, too.
Post Reply
Advanced search
55 posts
  • 1
  • 2
  • 3
  • Next
Author
Message
candrews
Developer
Developer
Posts: 162
Joined: Wed Aug 10, 2005 3:39 pm
Contact:
Contact candrews
Website

Firefox / Deer Park CVS Ebuild

  • Quote

Post by candrews » Wed Aug 10, 2005 3:54 pm

I started with TrueDFX's Deer Park 1.1a2 ebuild from http://forums.gentoo.org/viewtopic-t-34 ... +park.html and modified it to get the source from CVS. I also included a Cairo patch, so Firefox will build against Cairo>=0.6.0.
http://users.wpi.edu/~candrews/mozilla-firefox.tar.bz2
On my system (not sure if everyone will have this issue, as I'm insane and run all Break My Gentoo builds possible) tabs don't work. It's an interesting issue... kind of hard to describe. I wonder if anyone else has this problem.
This is my first ebuild, so be nice. :-) And please try to improve it, I'm *postive* this is not how you're supposed to do CVS ebuilds!
Top
didl
Retired Dev
Retired Dev
User avatar
Posts: 1106
Joined: Tue Sep 09, 2003 11:01 pm
Location: Pittsburgh, PA

Re: Firefox / Deer Park CVS Ebuild

  • Quote

Post by didl » Wed Aug 10, 2005 6:33 pm

candrews wrote: On my system (not sure if everyone will have this issue, as I'm insane and run all Break My Gentoo builds possible) tabs don't work. It's an interesting issue... kind of hard to describe. I wonder if anyone else has this problem.
I am using firefox CVS and tabs are working perfectly fine. Hence, there must
be an issue with your CFLAGS/ebuild/setup.
Top
candrews
Developer
Developer
Posts: 162
Joined: Wed Aug 10, 2005 3:39 pm
Contact:
Contact candrews
Website

Re: Firefox / Deer Park CVS Ebuild

  • Quote

Post by candrews » Wed Aug 10, 2005 7:05 pm

didl wrote:
candrews wrote: On my system (not sure if everyone will have this issue, as I'm insane and run all Break My Gentoo builds possible) tabs don't work. It's an interesting issue... kind of hard to describe. I wonder if anyone else has this problem.
I am using firefox CVS and tabs are working perfectly fine. Hence, there must
be an issue with your CFLAGS/ebuild/setup.
I'm using -O3 CFLAGS, which isn't that insane. Can you post your ebuild (or build process, if you didn't make an ebuild)? Perhaps we can work something out and make a functional ebuild.
Top
sanmartin
Tux's lil' helper
Tux's lil' helper
Posts: 138
Joined: Wed Aug 10, 2005 10:42 pm
Location: Massachusetts

  • Quote

Post by sanmartin » Wed Aug 10, 2005 10:43 pm

Code: Select all

checking for trouble comparing to zero near std::operator!=()... no
checking for LC_MESSAGES... yes
checking for jpeg_destroy_compress in -ljpeg... yes
checking for gzread in -lz... yes
checking for png_get_valid in -lpng... yes
checking for pkg-config... /usr/bin/pkg-config
checking for gtk+-2.0 >= 1.3.7... yes
checking MOZ_GTK2_CFLAGS... -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/freetype2 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/freetype2/config -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
checking MOZ_GTK2_LIBS...   -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangoxft-1.0 -lpangocairo-1.0 -lpangox-1.0 -lpangoft2-1.0 -lfreetype -lcairo -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lfontconfig -lpixman -lXrender -lX11 -lXext -lpng12 -lz -lglitz -lm
configure: error: Cannot enable XFT and FREETYPE2 at the same time.

!!! Please attach the config.log to your bug report:
!!! /var/tmp/portage/mozilla-firefox-1.1_alpha2/work/mozilla/config.log

!!! ERROR: www-client/mozilla-firefox-1.1_alpha2 failed.
!!! Function econf, Line 485, Exitcode 0
!!! econf failed
!!! If you need support, post the topmost build error, NOT this status message.
Game over. Insert 4 coins to continue.
Top
candrews
Developer
Developer
Posts: 162
Joined: Wed Aug 10, 2005 3:39 pm
Contact:
Contact candrews
Website

Use flags

  • Quote

Post by candrews » Thu Aug 11, 2005 12:19 am

You need use the -truetype and -moznoxft use flags. These are the recommended flags by the mozilla people, so you aren't losing any functionality or eye candy.
Top
sanmartin
Tux's lil' helper
Tux's lil' helper
Posts: 138
Joined: Wed Aug 10, 2005 10:42 pm
Location: Massachusetts

  • Quote

Post by sanmartin » Thu Aug 11, 2005 12:21 am

if the things these flags do break the build then they shouldn't be there :x
Top
didl
Retired Dev
Retired Dev
User avatar
Posts: 1106
Joined: Tue Sep 09, 2003 11:01 pm
Location: Pittsburgh, PA

Re: Firefox / Deer Park CVS Ebuild

  • Quote

Post by didl » Thu Aug 11, 2005 10:38 am

candrews wrote: I'm using -O3 CFLAGS, which isn't that insane. Can you post your ebuild (or build process, if you didn't make an ebuild)? Perhaps we can work something out and make a functional ebuild.
I don't use an ebuild, just a .mozconfig file and good old make :D

Here's its content

Code: Select all

mk_add_options MOZ_OBJDIR=/home/markus/misc/firefox/mozilla-build
mk_add_options MOZ_CO_PROJECT=browser
ac_add_options --enable-application=browser
. /home/markus/misc/firefox/mozilla/browser/config/mozconfig
ac_add_options --enable-optimize="-O2 -march=pentium4m -pipe -fomit-frame-pointer"
ac_add_options --disable-debug
ac_add_options --enable-default-toolkit=gtk2
ac_add_options --enable-xft
BTW, -O3 also works just fine.
Top
ZoeF
n00b
n00b
Posts: 17
Joined: Sat Jul 02, 2005 7:17 am

  • Quote

Post by ZoeF » Fri Aug 12, 2005 1:21 pm

I'm not having much luck with this ebuild. It compiles fine, but when I run it I can not download any files, and find doesn't work at all... it also seems to do something weird with the bookmarks. They appear to be gone, but can be restored by going to manage bookmarks. Really strange, perhaps it's just a bug in the latest CVS too... who knows?

Another strange issue I had though, is that when I emerged it with USE="-freetype" the about build config showed that it enabled freetype and then disabled it again during the build. Seems quite strange, as I've built with just .mozconfig and make before and have never had that happen.
Top
didl
Retired Dev
Retired Dev
User avatar
Posts: 1106
Joined: Tue Sep 09, 2003 11:01 pm
Location: Pittsburgh, PA

  • Quote

Post by didl » Fri Aug 12, 2005 2:15 pm

ZoeF wrote:I'm not having much luck with this ebuild. It compiles fine, but when I run it I can not download any files, and find doesn't work at all... it also seems to do something weird with the bookmarks. They appear to be gone, but can be restored by going to manage bookmarks. Really strange, perhaps it's just a bug in the latest CVS too... who knows?
The latest CVS works just fine for me. Try to move your .mozilla directory and let the firefox
binary create a new one upon startup.

[edit]
rephrased and hopefully now say what I wanted to say in the first place
Last edited by didl on Fri Aug 12, 2005 3:59 pm, edited 1 time in total.
Top
ZoeF
n00b
n00b
Posts: 17
Joined: Sat Jul 02, 2005 7:17 am

  • Quote

Post by ZoeF » Fri Aug 12, 2005 3:42 pm

Not to sound like a n00b, but hey, that's what it says under my name...

How would that do anything different than creating a new profile afterward and trying it out? I did that and got the same results with the ebuild. I didn't think Firefox did anything profile related until you tried to start it?
Top
didl
Retired Dev
Retired Dev
User avatar
Posts: 1106
Joined: Tue Sep 09, 2003 11:01 pm
Location: Pittsburgh, PA

  • Quote

Post by didl » Fri Aug 12, 2005 4:03 pm

Errr, my fault :oops:

I phrased my sentence extremely badly. Sorry about that, it's still quite early here
in Illinois :wink: What I meant to say was to simply move .mozilla
and let firefox create a new one upon startup. That fixed it for me back then when
I first started to use the CVS source.
Top
ZoeF
n00b
n00b
Posts: 17
Joined: Sat Jul 02, 2005 7:17 am

  • Quote

Post by ZoeF » Fri Aug 12, 2005 4:42 pm

I see... still sounds weird, since the only thing in .mozilla is the profile. I might try it though...

I've already run CVS builds though, in fact I'm running one from the 7th right now. Being able to compile the CVS nicely through portage would be nice though.

Oh yeah, I'm in Illinois too. It's a small world. :)
Top
ZoeF
n00b
n00b
Posts: 17
Joined: Sat Jul 02, 2005 7:17 am

  • Quote

Post by ZoeF » Fri Aug 12, 2005 6:10 pm

Tried your idea, no luck. I'm absolutely sure the ebuild is screwed up. Hopefully I can find something fairly obvious that will fix it.
Top
didl
Retired Dev
Retired Dev
User avatar
Posts: 1106
Joined: Tue Sep 09, 2003 11:01 pm
Location: Pittsburgh, PA

  • Quote

Post by didl » Fri Aug 12, 2005 7:06 pm

Have you tried removing cairo support (-mozsvg that is)?
Top
candrews
Developer
Developer
Posts: 162
Joined: Wed Aug 10, 2005 3:39 pm
Contact:
Contact candrews
Website

  • Quote

Post by candrews » Fri Aug 12, 2005 8:03 pm

ZoeF wrote:I'm not having much luck with this ebuild. It compiles fine, but when I run it I can not download any files, and find doesn't work at all... it also seems to do something weird with the bookmarks. They appear to be gone, but can be restored by going to manage bookmarks. Really strange, perhaps it's just a bug in the latest CVS too... who knows?
That's exactly what happens to me! EXACTLY! Anyone have a clue how to fix it? See as how didl can compile it from cvs without the ebuild... didl, can you look at the ebuild and see if I did something wrong making the mozconfig? Thanks!
Top
didl
Retired Dev
Retired Dev
User avatar
Posts: 1106
Joined: Tue Sep 09, 2003 11:01 pm
Location: Pittsburgh, PA

  • Quote

Post by didl » Fri Aug 12, 2005 8:17 pm

As you can see from my mozconfig, I use a very minimalistic scheme
to compile firefox. Hence, in principle, any of the additional stuff
that your ebuild requests, cairo, the extensions, ... etc as well
as the patches could be the culprit. The only suggestion I could give
you is to first remove them all, confirm that everything compiles and
runs fine, and then turn them back on one at a time.

BTW: You can remove the lines concerning hardened-gcc. Deer Park
works fine (for me at least) with stack-protector enabled.
Top
ZoeF
n00b
n00b
Posts: 17
Joined: Sat Jul 02, 2005 7:17 am

  • Quote

Post by ZoeF » Fri Aug 12, 2005 9:00 pm

I pulled out the Cairo stuff, and tried to get the ebuild to use a mozconfig similar to the one used in the official nightly builds. I don't know if it will fix anything, but I can hope. It's compiling now. Will update in a few hours when I've had time to test it.
Top
ZoeF
n00b
n00b
Posts: 17
Joined: Sat Jul 02, 2005 7:17 am

  • Quote

Post by ZoeF » Fri Aug 12, 2005 10:25 pm

No luck. Find as you type partially worked, but that was the only thing I could get out of it. So the patches aren't breaking anything at least. I still don't know what is though.

I changed the following:

Under "src_compile"

Code: Select all

	mozconfig_annotate '' --disable-ldap
	mozconfig_annotate '' --disable-mailnews
	mozconfig_annotate '' --disable-tests
	mozconfig_annotate '' --disable-debug
	mozconfig_annotate '' --disable-freetype2
	mozconfig_annotate '' --enable-xft
	mozconfig_annotate '' --enable-default-toolkit=gtk2
	mozconfig_annotate '' --enable-extensions=cookie,xml-rpc,xmlextras,pref,transformiix,universalchardet,webservices,negotiateauth
	mozconfig_annotate '' --disable-composer
	mozconfig_annotate '' --enable-single-profile
	mozconfig_annotate '' --disable-profilesharing
	mozconfig_annotate '' --enable-official-branding
I removed all the Cairo stuff as mentioned before.

And I know the extensions aren't breaking anything, because compiling the non-portage way I use those extensions without issue.

So there has to be another issue with how the build is made. It will take someone with more experience than me in ebuilds to fix it.
Top
wuno
Apprentice
Apprentice
User avatar
Posts: 193
Joined: Tue May 17, 2005 1:23 pm
Location: Germany

  • Quote

Post by wuno » Sun Aug 14, 2005 12:36 pm

I'm running Deer Park from CVS using an ebuild based on my / TrueDFX's ebuild http://forums.gentoo.org/viewtopic-t-347250.html since pango-1.9.1 came out, because then I got trouble compiling Deer Park alpha2 from its source (about 10 days ago). Yet I didn' t encounter at any problems so far with tabbed browsing or bookmarks. What I however noticed that every update to cairo (0.6.0, 0.9.0, 0.9.2 now) or gtk+ 2.7.4, now 2.8.0 brought some instabilities in FF/DP. So, I guess that in part troubles mentioned here may be due to the cairo/gtk+ versions FF/DP was compiled against. For instance at the moment I'm on cairo-0.9.2 and gtk+-2.8.0 and FF/DP compiled on Friday (before the trunk was closed) and this morning crash occasionally when I simply click on a link. With cairo-0.9.0 and gtk+-2.7.5 I hadn't these problems. Fortunately gtk+ now reached a new stable version and I am optimistic that soon the crasher in the DP code will be identified.
Concerning the cairo-patch pulled in by your ebuild, it could be that it only works successfully if people have at least gtk-2.7.x installed on their system. Another thing to mention, there was an update to the cairo.diff (now cairo.diff3) with slight modifications https://bugzilla.mozilla.org/attachment.cgi?id=191647 that might get your cairo better to work. The patch is gzipped, however "epatch" will take care about ungzipping,
Candrews Just in case you are interested how I pull the CVS sources here the corresponding diff to your ebuild

Code: Select all

@@ -35,22 +35,30 @@
 # Needed by src_compile() and src_install().
 # Would do in pkg_setup but that loses the export attribute, they
 # become pure shell variables.
+export MOZ_CO_PROJECT=browser
 export BUILD_OFFICIAL=1
 export MOZILLA_OFFICIAL=1
-export MOZ_PHOENIX=1

 src_unpack() {
-#cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot login
-cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot checkout mozilla/client.mk
-cd mozilla
-MOZ_CO_PROJECT="browser" make -f client.mk checkout
-
-       declare x
-
-       for x in ${A}; do
-               [[ $x == *.tar.* ]] || continue
-               unpack $x || die "unpack failed"
-       done
+       # This is (now less) hackish, but it works
+       addwrite ${DISTDIR}/cvs-src
+       mkdir -p ${DISTDIR}/cvs-src/
+       cd ${DISTDIR}/cvs-src/
+       echo ":pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot A">"${T}/cvspass"
+       export CVS_PASSFILE="${T}/cvspass"
+               cd ${DISTDIR}/cvs-src/
+               einfo "Checking out latest Mozilla Firefox frem CVS..."
+               cvs -z3 -d:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot checkout -PA mozilla/client.mk
+               make -f mozilla/client.mk checkout MOZ_CO_FLAGS=-PA MOZ_CO_PROJECT=browser,mail
+               cp -a mozilla ${S}
+               # Fix an ownership problem
+               chown -R root:root ${S} 2>/dev/null
+#      declare x
+#
+#      for x in ${A}; do
+#              [[ $x == *.tar.* ]] || continue
+#              unpack $x || die "unpack failed"
+#      done
        cd ${S} || die "cd failed"

        ####################################
As you can see I don't us the unpack thing, as I cp the pulled CVS source to the workdir (I update the thunderbird files as well for building this beast also from CVS). And exporting "MOZ_PHOENIX" isn't need anymore for builds from the trunk. I am not sure, if this pulls more or other files than your version, however. The only other differences maybe that I compile with -O2 rather than -O3.
Top
bbe
Apprentice
Apprentice
Posts: 158
Joined: Mon Jan 10, 2005 11:15 pm
Location: UK

  • Quote

Post by bbe » Thu Aug 25, 2005 3:32 pm

I can't get the cairo.diff or cairo.diff3.gz to patch properly. I've just unmasked cairo-1.0.0 also. The patch fails with what seems like missing files in the gfx/cairo/cairo directory. I'm probably doing something stupid.. i've not fiddled with ebuilds before. All i did to try to use the cairo.diff3.gz was change the the epatch line where it uses cairo.diff.. but both fail. Any ideas?
Top
Gergan Penkov
Veteran
Veteran
User avatar
Posts: 1464
Joined: Sat Jul 17, 2004 9:42 pm
Location: das kleinste Kuhdorf Deutschlands :)

  • Quote

Post by Gergan Penkov » Thu Aug 25, 2005 9:53 pm

Hi,
I have sent ebuilds to wuno for the cvs-build, but I don't have place to post the builds with the patches.
There some problems, if someone wants to build from the sources, because the svg-renderer is not made to use the system cairo, for example and there are more things - registration and so on. Some extensions, (most of them actually) will not function for now with the cvs-build. As some in the thread have already seen, one could not build with xft and truetype, pango is for now broken. You could not build with mozilla-cairo (without patches), because it is not updated and double inclusion of the headers break it (most notably pango includes the system headers).
And about the profile, the best thing is to use the profile option, otherwise deeppark will overwrite the default profile and the extensions will be useless with normal firefox (although one could delete some files to bring them back).
All this said I have compiled yesterday with cairo-renderer, enable-canvas and don't have any problems (no pango only xft) it is stable for now::)) - http://www.squarefree.com/burningedge/, here one could see the changes for the day::))
"I knew when an angel whispered into my ear,
You gotta get him away, yeah
Hey little bitch!
Be glad you finally walked away or you may have not lived another day."
Godsmack
Top
Gergan Penkov
Veteran
Veteran
User avatar
Posts: 1464
Joined: Sat Jul 17, 2004 9:42 pm
Location: das kleinste Kuhdorf Deutschlands :)

CVS-ebuild

  • Quote

Post by Gergan Penkov » Fri Aug 26, 2005 4:08 pm

Here is the ebuild, it could co-exist with a normal firefox-installation (uses own profile-directory and own internal name deeppark, instead of firefox), does not use mozilla-launcher at all, builds with system cairo and the new features (canvas and cairo-renderer you will need cairo-1.0 for pango to function correctly).
[EDIT] WARNING You will need pango-1.10.0, gtk+-2.8.2 and other masked packages (from gnome-2.12) to compile the beast with pango and the nifty-features as canvas, glitz ... If you don't have them disable pango and remove the following lines

Code: Select all

                mozconfig_annotate mozsvg --enable-canvas
                mozconfig_annotate mozsvg --enable-svg-renderer=cairo
                mozconfig_annotate mozsvg --enable-glitz
in order to compile with mozsvg
[EDIT]
it uses slightly changed mozconfig2.eclass, because truetype and xft flags could not be select at once (the truetype flag is obsolete in this form with gtk2) to select the back-ends. The use flags are mozxft (it should be explicitely selected), moztt (it is the truetype flag, do not use it), mozpango (to build the pango support) and buildd (to build only and not to update from cvs, it will copy the needed files from /usr/portage/distfiles/cvs-src/mozilla/).
Put in your overlay eclass-directory (default /usr/local/portage/eclass/) the following mozconfig2.eclass:

Code: Select all

# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/eclass/mozconfig.eclass,v 1.20 2005/08/02 12:51:09 agriffis Exp $
#
# mozconfig.eclass: the new mozilla.eclass

inherit multilib flag-o-matic

IUSE="debug gnome ipv6 mozxft moztt xinerama xprint"

RDEPEND="virtual/x11
        !moznoxft? ( virtual/xft )
        >=media-libs/fontconfig-2.1
        >=sys-libs/zlib-1.1.4
        >=media-libs/jpeg-6b
        >=media-libs/libmng-1.0.0
        >=media-libs/libpng-1.2.1
        >=sys-apps/portage-2.0.36
        dev-libs/expat
        app-arch/zip
        app-arch/unzip
        >=www-client/mozilla-launcher-1.22
        >=x11-libs/gtk+-2.2.0
        >=dev-libs/glib-2.2.0
        >=x11-libs/pango-1.2.1
        >=dev-libs/libIDL-0.8.0
        gnome? ( >=gnome-base/gnome-vfs-2.3.5 )
        svg? ( >=x11-libs/cairo-0.9 )"

DEPEND="${RDEPEND}
        dev-util/pkgconfig"

# Set by configure (plus USE_AUTOCONF=1), but useful for NSPR
export MOZILLA_CLIENT=1
export BUILD_OPT=1
export NO_STATIC_LIB=1
#export USE_PTHREADS=1

mozconfig_init() {
        declare enable_optimize pango_version myext x
        declare MOZ=$([[ ${PN} == mozilla ]] && echo true || echo false)
        declare FF=$([[ ${PN} == *firefox ]] && echo true || echo false)
        declare DP=$([[ ${PN} == *deeppark ]] && echo true || echo false)
        declare TB=$([[ ${PN} == *thunderbird ]] && echo true || echo false)
        declare SB=$([[ ${PN} == *sunbird ]] && echo true || echo false)

        ####################################
        #
        # Setup the initial .mozconfig
        # See http://www.mozilla.org/build/configure-build.html
        #
        ####################################

        case ${PN} in
                mozilla)
                        # The other builds have an initial --enable-extensions in their
                        # .mozconfig.  The "default" set in configure applies to mozilla
                        # specifically.
                        : >.mozconfig || die "initial mozconfig creation failed"
                        mozconfig_annotate "" --enable-extensions=default ;;
                *firefox)
                        cp browser/config/mozconfig .mozconfig \
                                || die "cp browser/config/mozconfig failed" ;;
                *deeppark)
                        cp browser/config/mozconfig .mozconfig \
                                || die "cp browser/config/mozconfig failed" ;;
                *thunderbird)
                        cp mail/config/mozconfig .mozconfig \
                                || die "cp mail/config/mozconfig failed" ;;
                *sunbird)
                        cp calendar/sunbird/config/mozconfig .mozconfig \
                                || die "cp calendar/sunbird/config/mozconfig failed" ;;
        esac

        ####################################
        #
        # CFLAGS setup and ARCH support
        #
        ####################################

        # Set optimization level based on CFLAGS
        if is-flag -O0; then
                mozconfig_annotate "from CFLAGS" --enable-optimize=-O0
        elif [[ ${ARCH} == hppa ]]; then
                mozconfig_annotate "more than -O0 causes segfaults on hppa" --enable-optimize=-O0
        elif [[ ${ARCH} == alpha || ${ARCH} == amd64 || ${ARCH} == ia64 || ${ARCH} == ppc64 ]]; then
                mozconfig_annotate "more than -O1 causes segfaults on 64-bit (bug 33767)" \
                        --enable-optimize=-O1
        elif is-flag -O1; then
                mozconfig_annotate "from CFLAGS" --enable-optimize=-O1
        else
                mozconfig_annotate "mozilla fallback" --enable-optimize=-O2
        fi

        # Now strip optimization from CFLAGS so it doesn't end up in the
        # compile string
        filter-flags '-O*'

        # Strip over-aggressive CFLAGS - Mozilla supplies its own
        # fine-tuned CFLAGS and shouldn't be interfered with..  Do this
        # AFTER setting optimization above since strip-flags only allows
        # -O -O1 and -O2
        strip-flags

        # -fstack-protector is in ALLOWED_FLAGS but breaks moz #83511
        filter-flags -fstack-protector

        # Additional ARCH support
        case "${ARCH}" in
        alpha)
                # Historically we have needed to add -fPIC manually for 64-bit.
                # Additionally, alpha should *always* build with -mieee for correct math
                # operation
                append-flags -fPIC -mieee
                ;;

        amd64|ia64)
                # Historically we have needed to add this manually for 64-bit
                append-flags -fPIC
                ;;

        ppc64)
                append-flags -fPIC -mminimal-toc
                ;;

        ppc)
                # Fix to avoid gcc-3.3.x micompilation issues.
                if [[ $(gcc-major-version).$(gcc-minor-version) == 3.3 ]]; then
                        append-flags -fno-strict-aliasing
                fi
                ;;

        sparc)
                # Sparc support ...
                replace-sparc64-flags
                ;;

        x86)
                if [[ $(gcc-major-version) -eq 3 ]]; then
                        # gcc-3 prior to 3.2.3 doesn't work well for pentium4
                        # see bug 25332
                        if [[ $(gcc-minor-version) -lt 2 ||
                                ( $(gcc-minor-version) -eq 2 && $(gcc-micro-version) -lt 3 ) ]]
                        then
                                replace-flags -march=pentium4 -march=pentium3
                                filter-flags -msse2
                        fi
                fi
                ;;
        esac

        if [[ $(gcc-major-version) -eq 3 ]]; then
                # Enable us to use flash, etc plugins compiled with gcc-2.95.3
                mozconfig_annotate "building with >=gcc-3" --enable-old-abi-compat-wrappers

                # Needed to build without warnings on gcc-3
                CXXFLAGS="${CXXFLAGS} -Wno-deprecated"
        fi

        # Go a little faster; use less RAM
        append-flags "$MAKEEDIT_FLAGS"

        # Define our plugin dirs for nsplugins-v2.patch
        #
        # This is the way we would *like* to do things.  However ./configure chokes
        # on these definitions, so the real definitions happen in the ebuilds, just
        # before emake.
        #
        #append-flags "-DGENTOO_NSPLUGINS_DIR=\\\"/usr/$(get_libdir)/nsplugins\\\""
        #append-flags "-DGENTOO_NSBROWSER_PLUGINS_DIR=\\\"/usr/$(get_libdir)/nsbrowser/plugins\\\""

        ####################################
        #
        # mozconfig setup
        #
        ####################################

        mozconfig_annotate gentoo \
                --with-pthreads \
                --disable-installer \
                --disable-pedantic \
                --enable-crypto \
                --with-system-jpeg \
                --with-system-png \
                --with-system-zlib \
                --without-system-nspr \
                --enable-default-toolkit=gtk2
        mozconfig_use_enable ipv6
        mozconfig_use_enable xinerama
        mozconfig_use_enable xprint
        if use moztt; then
                mozconfig_annotate moztt --enable-freetype2
                mozconfig_annotate moztt --enable-freetypetest
        else
                mozconfig_annotate -mott --disable-freetype2
        fi
        if use mozpango; then
                mozconfig_annotate mozpango --enable-pango
        fi

        if use debug; then
                mozconfig_annotate +debug \
                        --enable-debug \
                        --enable-tests \
                        --disable-reorder \
                        --disable-strip \
                        --disable-strip-libs \
                        --enable-debugger-info-modules=ALL_MODULES
        else
                mozconfig_annotate -debug \
                        --disable-debug \
                        --disable-tests \
                        --enable-reorder \
                        --enable-strip \
                        --enable-strip-libs

                # Currently --enable-elf-dynstr-gc only works for x86 and ppc,
                # thanks to Jason Wever <weeve@gentoo.org> for the fix.
                if use x86 || use ppc && [[ ${enable_optimize} != -O0 ]]; then
                        mozconfig_annotate "${ARCH} optimized build" --enable-elf-dynstr-gc
                fi
        fi

        # Here is a strange one...
        if is-flag '-mcpu=ultrasparc*' || is-flag '-mtune=ultrasparc*'; then
                mozconfig_annotate "building on ultrasparc" --enable-js-ultrasparc
        fi

        # Check if we should enable Xft support...
        if use mozxft; then
                # We need Xft2.0 locally installed
                if [[ -x /usr/bin/pkg-config ]] && pkg-config xft; then
                        # We also need pango-1.1, else Mozilla links to both
                        # Xft1.1 *and* Xft2.0, and segfault...
                        pango_version=$(pkg-config --modversion pango | cut -d. -f1,2)
                        if [[ ${pango_version//.} -gt 10 ]]; then
                                mozconfig_annotate "mozxft" --enable-xft
                        else
                                mozconfig_annotate "bad pango version <1.1" --disable-xft
                        fi
                else
                        mozconfig_annotate "no pkg-config xft" --disable-xft
                fi
        else

                mozconfig_annotate "disabling xft2  (-mozxft)" --disable-xft
        fi
}

# Simulate the silly csh makemake script
makemake() {
        typeset m topdir
        for m in $(find . -name Makefile.in); do
                topdir=$(echo "$m" | sed -r 's:[^/]+:..:g')
                sed -e "s:@srcdir@:.:g" -e "s:@top_srcdir@:${topdir}:g" \
                        < ${m} > ${m%.in} || die "sed ${m} failed"
        done
}

#
# The following functions are for manipulating mozconfig
#

# mozconfig_annotate: add an annotated line to .mozconfig
#
# Example:
# mozconfig_annotate "building on ultrasparc" --enable-js-ultrasparc
# => ac_add_options --enable-js-ultrasparc # building on ultrasparc
mozconfig_annotate() {
        declare reason=$1 x ; shift
        [[ $# -gt 0 ]] || die "mozconfig_annotate missing flags for ${reason}\!"
        for x in ${*}; do
                echo "ac_add_options ${x} # ${reason}" >>.mozconfig
        done
}

# mozconfig_use_enable: add a line to .mozconfig based on a USE-flag
#
# Example:
# mozconfig_use_enable truetype freetype2
# => ac_add_options --enable-freetype2 # +truetype
mozconfig_use_enable() {
        declare flag=$(use_enable "$@")
        mozconfig_annotate "$(useq $1 && echo +$1 || echo -$1)" "${flag}"
}

# mozconfig_use_with: add a line to .mozconfig based on a USE-flag
#
# Example:
# mozconfig_use_with kerberos gss-api /usr/$(get_libdir)
# => ac_add_options --with-gss-api=/usr/lib # +kerberos
mozconfig_use_with() {
        declare flag=$(use_with "$@")
        mozconfig_annotate "$(useq $1 && echo +$1 || echo -$1)" "${flag}"
}

# mozconfig_use_extension: enable or disable an extension based on a USE-flag
#
# Example:
# mozconfig_use_extension gnome gnomevfs
# => ac_add_options --enable-extensions=gnomevfs
mozconfig_use_extension() {
        declare minus=$(useq $1 || echo -)
        mozconfig_annotate "${minus:-+}$1" --enable-extensions=${minus}${2}
}

# mozconfig_final: display a table describing all configuration options paired
# with reasons, then clean up extensions list
mozconfig_final() {
        declare ac opt hash reason
        echo
        echo "=========================================================="
        echo "Building ${PF} with the following configuration"
        grep ^ac_add_options .mozconfig | while read ac opt hash reason; do
                [[ -z ${hash} || ${hash} == \# ]] \
                        || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
                printf "    %-30s  %s\n" "${opt}" "${reason:-mozilla.org default}"
        done
        echo "=========================================================="
        echo

        # Resolve multiple --enable-extensions down to one
        declare exts=$(sed -n 's/^ac_add_options --enable-extensions=\([^ ]*\).*/\1/p' \
                .mozconfig | xargs)
        sed -i '/^ac_add_options --enable-extensions/d' .mozconfig
        echo "ac_add_options --enable-extensions=${exts// /,}" >> .mozconfig
}
After that you'll need the following files in overlay-portage dir www-client/mozilla-deeppark (defaults to /usr/local/portage/www-client/mozilla-deeppark/)

Code: Select all

/usr/local/portage/www-client/mozilla-deeppark/:
mozilla-deeppark-9999.ebuild

/usr/local/portage/www-client/mozilla-deeppark/files:
embed-typeaheadfind.patch
firefox-cairo-canvas.patch
firefox-nopangoxft.patch
gentoo-default-prefs.js
mozilla-1.3-alpha-stubs.patch
mozilla-firefox-1.1a2-4ft2.patch
mozilla-firefox-1.1a2-ia64.patch
mozilla-hppa.patch
mozilla-rpath-1.patch

/usr/local/portage/www-client/mozilla-deeppark/files/icon:
deeppark-icon.png
mozilladeeppark.desktop
The ebuild mozilla-deeppark-9999.ebuild:

Code: Select all

# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

unset ALLOWED_FLAGS  # stupid extra-functions.sh ... bug 49179
inherit flag-o-matic toolchain-funcs eutils mozconfig2 makeedit multilib cvs

DESCRIPTION="Firefox Web Browser"
HOMEPAGE="http://www.mozilla.org/projects/firefox/"
MY_PV="1.0+"
SRC_URI="mirror://gentoo/mozilla-jslibmath-alpha.patch
        http://dev.gentoo.org/~agriffis/dist/mozilla-1.7.10-nsplugins-v2.patch"

KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~sparc ~x86"
SLOT="0"
LICENSE="MPL-1.1 NPL-1.1"
IUSE="gnome java mozdevelop mozxft moztt mozpango mozsvg mozcalendar ldap ssl buildd"

# xrender.pc appeared for the first time in xorg-x11-6.7.0-r2
# and is required to build with support for cairo.  #71504
RDEPEND="java? ( virtual/jre )
        >=media-libs/libmng-1.0.0
        mozsvg? (
                !<=x11-base/xorg-x11-6.7.0-r2
                >x11-libs/cairo-0.5
        )
        >=www-client/mozilla-launcher-1.39"

DEPEND="${RDEPEND}
        java? ( >=dev-java/java-config-0.2.0 )"

S=${WORKDIR}/mozilla

# Needed by src_compile() and src_install().
# Would do in pkg_setup but that loses the export attribute, they
# become pure shell variables.
export MOZ_CO_PROJECT=browser
export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1
ECVS_SERVER="cvs-mirror.mozilla.org:/cvsroot"
ECVS_PASS="anonymous"
ECVS_MODULE="mozilla"
ECVS_UP_OPT="-dPAC"
ECVS_CO_OPT="-PA"
ECVS_BRANCH="HEAD"
ECVS_CVS_COMMAND="cvs -f -z3"
CVS_MODULE="mozilla/README \
        mozilla/accessible \
        mozilla/browser \
        mozilla/build/ \
        mozilla/caps/ \
        mozilla/chrome \
        mozilla/config \
        mozilla/content \
        mozilla/db \
        mozilla/dbm \
        mozilla/directory \
        mozilla/docshell \
        mozilla/dom \
        mozilla/editor \
        mozilla/embedding \
        mozilla/extensions \
        mozilla/gc \
        mozilla/gfx \
        mozilla/intl \
        mozilla/ipc/ \
        mozilla/jpeg \
        mozilla/js \
        mozilla/l10n \
        mozilla/layout \
        mozilla/lib \
        mozilla/mailnews \
        mozilla/modules \
        mozilla/netwerk \
        mozilla/nsprpub \
        mozilla/other-licenses/ \
        mozilla/parser \
        mozilla/plugin \
        mozilla/profile \
        mozilla/rdf \
        mozilla/security \
        mozilla/storage \
        mozilla/sun-java \
        mozilla/themes \
        mozilla/toolkit \
        mozilla/tools \
        mozilla/uriloader \
        mozilla/view \
        mozilla/webshell \
        mozilla/widget \
        mozilla/xpcom \
        mozilla/xpfe \
        mozilla/xpinstall"
src_unpack() {
        if use buildd && [[ -d ${DISTDIR}/cvs-src/mozilla ]]; then
                ECVS_SERVER="offline"
        fi
        for x in ${CVS_MODULE}; do
                ECVS_MODULE=$x
                cvs_src_unpack || die "cvs failed"
        done
        ECVS_LOCAL=1
        ECVS_MODULE="mozilla"
        cvs_src_unpack || die "cvs failed"
        unset ECVS_LOCAL
        cd ${S} || die "cd failed"

        ####################################
        #
        # Branding
        #
        ####################################

        sed -i -e 's|"Firefox"|"DeepPark"|' ${S}/browser/app/nsBrowserApp.cpp
        sed -i -e 's|MOZ_APP_NAME=firefox|MOZ_APP_NAME=deeppark|' ${S}/configure
        sed -i -e "s|Firefox|DeepPark|" ${S}/other-licenses/branding/firefox/locales/en-US/brand.*

        ####################################
        #
        # architecture patches
        #
        ####################################

        # alpha stubs patch from lfs project.
        # <taviso@gentoo.org> (26 Jun 2003)
        use alpha && epatch ${FILESDIR}/mozilla-1.3-alpha-stubs.patch

        # hppa patches from Ivar <orskaug@stud.ntnu.no>
        # <gmsoft@gentoo.org> (22 Dec 2004)
        epatch ${FILESDIR}/mozilla-hppa.patch

        # patch to solve segfaults on ia64, from Debian, originally from David
        # Mosberger
        epatch ${FILESDIR}/mozilla-firefox-1.1a2-ia64.patch

        # patch to fix math operations on alpha, makes maps.google.com work!
        epatch ${DISTDIR}/mozilla-jslibmath-alpha.patch

        ####################################
        #
        # general compilation and run-time fixes
        #
        ####################################

        # patch from fedora to remove the pangoxft things
        epatch ${FILESDIR}/firefox-nopangoxft.patch

        #cairo-canvas patch
        epatch ${FILESDIR}/firefox-cairo-canvas.patch

        ####################################
        #
        # behavioral fixes
        #
        ####################################

        # look in /usr/lib/nsplugins for plugins, in addition to the usual places
        epatch ${DISTDIR}/mozilla-1.7.10-nsplugins-v2.patch

        # patch to fix typeahead find for browsers which embed Firefox
        # http://bugzilla.gnome.org/show_bug.cgi?id=157435
        epatch ${FILESDIR}/embed-typeaheadfind.patch

        #rpath patch
        epatch ${FILESDIR}/mozilla-rpath-1.patch
}

src_compile() {
        declare MOZILLA_FIVE_HOME=/usr/$(get_libdir)/${PN}

        grep -Flr "#RPATH_FIXER" --include=*.mk . | xargs sed -i -e \
                's|#RPATH_FIXER|'"${MOZILLA_FIVE_HOME}"'|'

        ####################################
        #
        # mozconfig, CFLAGS and CXXFLAGS setup
        #
        ####################################
        if use mozxft && use moztt; then
                einfo "You should not try to use both xft and truetype at once!"
                die
        fi

        mozconfig_init

        # Deer Park lost these defaults
        mozconfig_annotate '' --disable-mailnews
        mozconfig_annotate '' --enable-extensions=default,typeaheadfind,-reporter,-inspector
        mozconfig_annotate '' --enable-single-profile
        mozconfig_annotate '' --disable-profilesharing
        mozconfig_annotate '' --disable-profilelocking
        # Bug 60668: Galeon doesn't build without oji enabled, so enable it
        # regardless of java setting.
        mozconfig_annotate '' --enable-native-uconv
        if use mozsvg; then
                mozconfig_annotate mozsvg --enable-system-cairo
                mozconfig_annotate mozsvg --enable-svg
                #this breaks on my system, it compiles fine but sigsevs
                mozconfig_annotate mozsvg --enable-canvas
                mozconfig_annotate mozsvg --enable-svg-renderer=cairo
                mozconfig_annotate mozsvg --enable-glitz
        fi

        # Bug 60668: Galeon doesn't build without oji enabled, so enable it
        # regardless of java setting.
        mozconfig_annotate '' --enable-oji --enable-mathml

        # Other ff-specific settings
        mozconfig_use_enable mozdevelop jsd
        mozconfig_use_enable mozdevelop xpctools
        mozconfig_use_extension mozdevelop venkman
        mozconfig_use_enable gnome gnomevfs
        mozconfig_use_extension gnome gnomevfs
        mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
        mozconfig_annotate '' --with-user-appdir=deeppark

        if use ldap; then
                mozconfig_use_enable ldap
                mozconfig_use_enable ldap ldap-experimental
        fi

        # Finalize and report settings
        mozconfig_final

        # hardened GCC uses -fstack-protector-all by default, which breaks us
        has_hardened && append-flags -fno-stack-protector-all
        replace-flags -fstack-protector-all -fstack-protector

        ####################################
        #
        #  Configure and build
        #
        ####################################

        CPPFLAGS="${CPPFLAGS} -DARON_WAS_HERE" \
        CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
        econf || die

        # It would be great if we could pass these in via CPPFLAGS or CFLAGS prior
        # to econf, but the quotes cause configure to fail.
        grep -Flre -DARON_WAS_HERE --exclude=config.\* . | xargs sed -i -e \
        's|-DARON_WAS_HERE|-DGENTOO_NSPLUGINS_DIR=\\\"/usr/'"$(get_libdir)"'/nsplugins\\\" -DGENTOO_NSBROWSER_PLUGINS_DIR=\\\"/usr/'"$(get_libdir)"'/nsbrowser/plugins\\\"|'

        # This removes extraneous CFLAGS from the Makefiles to reduce RAM
        # requirements while compiling
        edit_makefiles

        emake || die

}

src_install() {
        declare MOZILLA_FIVE_HOME=/usr/$(get_libdir)/${PN}

        # Most of the installation happens here
        dodir ${MOZILLA_FIVE_HOME}
        cp -RL ${S}/dist/bin/* ${D}${MOZILLA_FIVE_HOME}


        # Install icon and .desktop for menu entry
        insinto /usr/share/pixmaps
        doins ${FILESDIR}/icon/deeppark-icon.png

        # Fix bug 54179: Install .desktop file into /usr/share/applications
        # instead of /usr/share/gnome/apps/Internet (18 Jun 2004 agriffis)
        insinto /usr/share/applications
        doins ${FILESDIR}/icon/mozilladeeppark.desktop

        ####################################
        #
        # Install files necessary for applications to build against firefox
        #
        ####################################

        einfo "Installing includes and idl files..."
        dodir ${MOZILLA_FIVE_HOME}/include/idl /usr/include
        cd ${S}/dist
        cp -LfR include/* ${D}${MOZILLA_FIVE_HOME}/include || die "failed to copy"
        cp -LfR idl/* ${D}${MOZILLA_FIVE_HOME}/include/idl || die "failed to copy"

        # Dirty hack to get some applications using this header running
        #dosym ${MOZILLA_FIVE_HOME}/include/necko/nsIURI.h \
        #       /usr/$(get_libdir)/${MOZILLA_FIVE_HOME##*/}/include/nsIURI.h
        ####################################
        #
        # Some preferences, probably gentoo.org as start-page also
        #
        ####################################

        dodir ${MOZILLA_FIVE_HOME}/greprefs
        cp ${FILESDIR}/gentoo-default-prefs.js ${D}/${MOZILLA_FIVE_HOME}/greprefs/all-gentoo.js
        dodir ${MOZILLA_FIVE_HOME}/defaults/pref
        cp ${FILESDIR}/gentoo-default-prefs.js ${D}/${MOZILLA_FIVE_HOME}/defaults/pref/all-gentoo.js

        #setting the script
        sed -i -e "s|\(^moz_libdir=\)\(.*\)|\1${MOZILLA_FIVE_HOME}|" ${D}/${MOZILLA_FIVE_HOME}/firefox
        sed -i -e 's|\(MOZ_USER_DIR=\"\)\(.*\"\)|\1.mozilla/deeppark"|' ${D}/${MOZILLA_FIVE_HOME}/firefox
        sed -i -e "s|\(^MRE_HOME=\)\(.*\)|#\1\2|" ${D}/${MOZILLA_FIVE_HOME}/firefox
        sed -i -e 's|\(^progname=\)\(".*\)|\1"deeppark"|' ${D}/${MOZILLA_FIVE_HOME}/firefox
        mv ${D}/${MOZILLA_FIVE_HOME}/firefox ${D}/${MOZILLA_FIVE_HOME}/deeppark
        mv ${D}/${MOZILLA_FIVE_HOME}/firefox-bin ${D}/${MOZILLA_FIVE_HOME}/deeppark-bin
        dodir ${D}/usr/bin
        dosym ${MOZILLA_FIVE_HOME}/deeppark ${D}/usr/bin/deeppark

        # Install docs
        dodoc LEGAL LICENSE
}

pkg_postinst() {
        declare MOZILLA_FIVE_HOME=/usr/$(get_libdir)/${PN}

        ####################################
        #
        # The registration is done here,
        # mozilla-launcher do not do it correctly for now
        #
        ####################################

        touch ${MOZILLA_FIVE_HOME}/components/compreg.dat
        touch ${MOZILLA_FIVE_HOME}/components/xpti.dat
        [ -x ${MOZILLA_FIVE_HOME}/firefox ] && ${MOZILLA_FIVE_HOME}/deeppark -register
        [ -x ${MOZILLA_FIVE_HOME}/regxpcom ] && ${MOZILLA_FIVE_HOME}/regxpcom

}

pkg_postrm() {
        declare MOZILLA_FIVE_HOME=/usr/$(get_libdir)/${PN}

        ####################################
        #
        # The registration is done here,
        # mozilla-launcher do not do it correctly for now
        #
        ####################################

        [ -x ${MOZILLA_FIVE_HOME}/firefox ] && ${MOZILLA_FIVE_HOME}/deeppark -register
        [ -x ${MOZILLA_FIVE_HOME}/regxpcom ] && ${MOZILLA_FIVE_HOME}/regxpcom
}

Some of the patches and the icon could be find in TrueDFX's build and wuno's ebuild from http://forums.gentoo.org/viewtopic-t-34 ... alpha.html
The others, which could not be found are updated rpath-patch (update against yesterday) save as mozilla-rpath-1.patch (in files directory):

Code: Select all

--- config/rules.mk.orig        2005-07-28 01:45:18.000000000 +0000
+++ config/rules.mk     2005-07-28 01:45:21.000000000 +0000
@@ -507,5 +507,10 @@
 #
 ifeq ($(OS_ARCH),Linux)
 ifdef IS_COMPONENT
+DSO_LDOPTS += -Wl,-R#RPATH_FIXER
+OS_LDFLAGS += -Wl,-R#RPATH_FIXER
 EXTRA_DSO_LDOPTS += -Wl,-Bsymbolic
+else
+DSO_LDOPTS += -Wl,-R#RPATH_FIXER
+OS_LDFLAGS += -Wl,-R#RPATH_FIXER
 endif
--- nsprpub/config/rules.mk.orig        2003-09-16 02:00:28.000000000 +0000
+++ nsprpub/config/rules.mk     2005-07-30 04:00:21.000000000 +0000
@@ -87,6 +87,9 @@
 endif
 endif

+DSO_LDOPTS += -Wl,-R#RPATH_FIXER
+OS_LDFLAGS += -Wl,-R#RPATH_FIXER
+
 #
 # This makefile contains rules for building the following kinds of
 # libraries:
--- security/coreconf/rules.mk.orig     2005-07-31 16:31:37.000000000 +0000
+++ security/coreconf/rules.mk  2005-07-31 16:37:27.000000000 +0000
@@ -349,7 +349,7 @@
 ifdef XP_OS2_VACPP
        $(MKSHLIB) $(DLLFLAGS) $(LDFLAGS) $(OBJS) $(SUB_SHLOBJS) $(LD_LIBS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
 else
-       $(MKSHLIB) -o $@ $(OBJS) $(SUB_SHLOBJS) $(LD_LIBS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
+       $(MKSHLIB) -Wl,-R#RPATH_FIXER -o $@ $(OBJS) $(SUB_SHLOBJS) $(LD_LIBS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
 endif
        chmod +x $@
 ifeq ($(OS_TARGET),Darwin)
--- security/coreconf/rules.mk.orig     2005-08-01 11:40:54.000000000 +0000
+++ security/coreconf/rules.mk  2005-08-01 11:50:31.000000000 +0000
@@ -291,7 +291,7 @@
 ifdef XP_OS2_VACPP
        $(MKPROG) -Fe$@ $(CFLAGS) $(OBJS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
 else
-       $(MKPROG) -o $@ $(CFLAGS) $(OBJS) $(LDFLAGS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
+       $(MKPROG) -Wl,-R#RPATH_FIXER -o $@ $(CFLAGS) $(OBJS) $(LDFLAGS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
 endif
 endif
The next one is firefox-cairo-canvas.patch (which allows us to build cairo-canvas against the system libs):

Code: Select all

--- content/canvas/src/Makefile.in.orig 2005-08-23 01:46:46.000000000 +0000
+++ content/canvas/src/Makefile.in      2005-08-23 01:49:49.000000000 +0000
@@ -77,6 +77,11 @@
                libpixman \
                $(NULL)

+ifndef MOZ_TREE_CAIRO
+LOCAL_INCLUDES          += $(MOZ_CAIRO_CFLAGS)
+EXTRA_DSO_LDOPTS        += $(MOZ_CAIRO_LIBS)
+endif
+
 # XXX some platforms can't handle building
 # an empty .a/lib.  Remove this dummy.cpp
 # whenever w have a rendering context
The next one is firefox-nopangoxft.patch (fedora patch removing the last call to the old pango api):

Code: Select all

--- mozilla/gfx/src/gtk/mozilla-decoder.cpp.noxft       2005-08-18 22:41:26.000000000 -0400
+++ mozilla/gfx/src/gtk/mozilla-decoder.cpp     2005-08-18 22:38:01.000000000 -0400
@@ -40,7 +40,7 @@
 #define PANGO_ENABLE_ENGINE

 #include "mozilla-decoder.h"
-#include <pango/pangoxft.h>
+#include <pango/pangocairo.h>
 #include <pango/pangofc-fontmap.h>
 #include <pango/pangofc-font.h>
 #include <gdk/gdkx.h>
@@ -208,7 +208,7 @@
         }
     }

-    pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(pango_xft_get_font_map(GDK_DISPLAY(),gdk_x11_get_default_screen())),
+    pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(pango_cairo_font_map_get_default()),
                                             mozilla_find_decoder,
                                             NULL,
                                             NULL);
The next are some preferences as auto scroll and so on not to change them each time (gentoo-default-prefs.js):

Code: Select all

pref("app.update.enabled", false);
pref("app.update.autoInstallEnabled", false);
pref("browser.display.use_system_colors",   true);
pref("browser.link.open_external",          3);
pref("general.smoothScroll",                true);
pref("general.autoScroll",                true);
And the mozilladeeppark.desktop file from /usr/local/portage/www-client/mozilla-deeppark/files/icon:

Code: Select all

[Desktop Entry]
Name=Mozilla Deeppark
Comment=Web Browser
Exec=/usr/lib/mozilla-deeppark/deeppark %U
Icon=deeppark-icon.png
Terminal=false
Type=Application
Categories=Application;Network;
After that simply execute

Code: Select all

ebuild /usr/local/portage/www-client/mozilla-deeppark/mozilla-deeppark-9999.ebuild digest

If you would like to save on download, you could unpack the deeppark-archive (if you have it) in /usr/portage/distfiles/cvs-src/ so that the mozilla directory from the archive comes direct under /usr/portage/distfiles/cvs-src/ (i used mc, so no tar command here::))
And

Code: Select all

USE="mozxft mozpango" emerge -D  mozilla-deeppark
(do not use the buildd-flag the first time, because there some patches, which are already integrate in trunk and without them it could easily break).
Executing - simply use deeppark from terminal or click the icon in the menu::)

[EDIT] small changes in registering (forgot to change firefox to deeppark in two of the lines) [EDIT]
[EDIT] mozilladeeppark.desktop changing from firefox to deeppark [EDIT]
[EDIT] Some changes to the ebuild, it seems that using the deeppark archive as a source for the cvs update, could stick us to deeppark-alfa branch, which is not what we want. added the -A switch to try to remedy this situation and hopefully use the head [EDIT]
Last edited by Gergan Penkov on Thu Sep 01, 2005 6:29 pm, edited 3 times in total.
"I knew when an angel whispered into my ear,
You gotta get him away, yeah
Hey little bitch!
Be glad you finally walked away or you may have not lived another day."
Godsmack
Top
bbe
Apprentice
Apprentice
Posts: 158
Joined: Mon Jan 10, 2005 11:15 pm
Location: UK

  • Quote

Post by bbe » Sat Aug 27, 2005 12:42 pm

Thanks Gergan. I managed to get deeppark to compile, but without the rpath patch (it failed for some reason). However I get a seg fault whenever I try to view any SVG. I'm trying a few other things now.. i'll let you know
Top
Gergan Penkov
Veteran
Veteran
User avatar
Posts: 1464
Joined: Sat Jul 17, 2004 9:42 pm
Location: das kleinste Kuhdorf Deutschlands :)

  • Quote

Post by Gergan Penkov » Sat Aug 27, 2005 12:51 pm

Do you have cairo-1.0, because there were some problems with 0.9.2. About the rpath patch probably some spaces (I have changed it yesterday, because they have made some changes to nss/nspr-makefiles, it is essentially the same as in portage simply you could add $(OS_LIBS) to the end of the following two lines
- $(MKSHLIB) -o $@ $(OBJS) $(SUB_SHLOBJS) $(LD_LIBS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
+ $(MKSHLIB) -Wl,-R#RPATH_FIXER -o $@ $(OBJS) $(SUB_SHLOBJS) $(LD_LIBS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
I'll try to compile it now to see if there are more changes to be made.
"I knew when an angel whispered into my ear,
You gotta get him away, yeah
Hey little bitch!
Be glad you finally walked away or you may have not lived another day."
Godsmack
Top
Lowspirit
Apprentice
Apprentice
User avatar
Posts: 258
Joined: Wed Jul 31, 2002 10:50 pm
Location: Northern Sweden

  • Quote

Post by Lowspirit » Sat Aug 27, 2005 1:02 pm

Compiled for me too, same as above mentioned (without rpath patch). Did not try with svg though, that's my next mission.
Gentoo | AMD X2 3800+ 2GB RAM | Kernel 2.6.30 . ReiserFS . CFQ . GCC4.3.3 | Firefox 3.5 | Gnome 2.26 w/ Compiz-Fusion
"Penguins are the only fish that can fly"
Top
Post Reply

55 posts
  • 1
  • 2
  • 3
  • Next

Return to “Unsupported Software”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic