Difference between revisions of "Thunderbird"
Weibullguy (talk | contribs) m (Moved multilib bash script after build consistent with non-multilib.) |
|||
Line 2: | Line 2: | ||
|- | |- | ||
!Download Source: | !Download Source: | ||
− | | http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/ | + | | http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/{{Thunderbird-Version}}/source/thunderbird-{{Thunderbird-Version}}-source.tar.bz2 |
|} | |} | ||
Line 44: | Line 44: | ||
ac_cv_visibility_pragma=no | ac_cv_visibility_pragma=no | ||
− | ac_add_options --prefix=/opt/thunderbird- | + | ac_add_options --prefix=/opt/thunderbird-{{Thunderbird-Version}} |
ac_add_options --with-system-nss | ac_add_options --with-system-nss | ||
Line 96: | Line 96: | ||
If you're using a system installed [[NSS]] and [[NSPR]] then adjust the pkg-config files to point to the proper place: | If you're using a system installed [[NSS]] and [[NSPR]] then adjust the pkg-config files to point to the proper place: | ||
− | ln -sfv /usr/lib/pkgconfig/nss.pc /opt/thunderbird- | + | ln -sfv /usr/lib/pkgconfig/nss.pc /opt/thunderbird-{{Thunderbird-Version}}/lib/pkgconfig/thunderbird-nss.pc && |
− | ln -sfv /usr/lib/pkgconfig/nspr.pc /opt/thunderbird- | + | ln -sfv /usr/lib/pkgconfig/nspr.pc /opt/thunderbird-{{Thunderbird-Version}}/lib/pkgconfig/thunderbird-nspr.pc |
=== 50-thunderbird.sh === | === 50-thunderbird.sh === | ||
Line 106: | Line 106: | ||
# Begin /etc/profile.d/50-thunderbird.sh | # Begin /etc/profile.d/50-thunderbird.sh | ||
− | export PATH="${PATH}:/opt/thunderbird- | + | export PATH="${PATH}:/opt/thunderbird-{{Thunderbird-Version}}/bin" |
− | export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}${PKG_CONFIG_PATH+:}/opt/thunderbird- | + | export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}${PKG_CONFIG_PATH+:}/opt/thunderbird-{{Thunderbird-Version}}/lib/pkgconfig" |
# End /etc/profile.d/50-thunderbird.sh | # End /etc/profile.d/50-thunderbird.sh | ||
Line 145: | Line 145: | ||
==== Common ==== | ==== Common ==== | ||
− | mv -v /opt/thunderbird- | + | mv -v /opt/thunderbird-{{Thunderbird-Version}}/bin/thunderbird-config{,-32} && |
− | ln -sfv /usr/bin/multiarch_wrapper /opt/thunderbird- | + | ln -sfv /usr/bin/multiarch_wrapper /opt/thunderbird-{{Thunderbird-Version}}/bin/thunderbird-config |
If you're using a system installed [[NSS]] and [[NSPR]] then adjust the pkg-config files to point to the proper place: | If you're using a system installed [[NSS]] and [[NSPR]] then adjust the pkg-config files to point to the proper place: | ||
− | ln -sfv /usr/lib/pkgconfig/nss.pc /opt/thunderbird- | + | ln -sfv /usr/lib/pkgconfig/nss.pc /opt/thunderbird-{{Thunderbird-Version}}/lib/pkgconfig/thunderbird-nss.pc && |
− | ln -sfv /usr/lib/pkgconfig/nspr.pc /opt/thunderbird- | + | ln -sfv /usr/lib/pkgconfig/nspr.pc /opt/thunderbird-{{Thunderbird-Version}}/lib/pkgconfig/thunderbird-nspr.pc |
=== 64Bit === | === 64Bit === | ||
Line 158: | Line 158: | ||
cat >> .mozconfig << EOF | cat >> .mozconfig << EOF | ||
− | ac_add_options --libdir=/opt/thunderbird- | + | ac_add_options --libdir=/opt/thunderbird-{{Thunderbird-Version}}/lib64 |
export CC="gcc ${BUILD64}" | export CC="gcc ${BUILD64}" | ||
export CXX="g++ ${BUILD64}" | export CXX="g++ ${BUILD64}" | ||
Line 174: | Line 174: | ||
make -f client.mk install && | make -f client.mk install && | ||
− | mv -v /opt/thunderbird- | + | mv -v /opt/thunderbird-{{Thunderbird-Version}}/bin/thunderbird-config{,-64} && |
− | ln -sfv /usr/bin/multiarch_wrapper /opt/thunderbird- | + | ln -sfv /usr/bin/multiarch_wrapper /opt/thunderbird-{{Thunderbird-Version}}/bin/thunderbird-config |
If you're using a system installed [[NSS]] and [[NSPR]] then adjust the pkg-config files to point to the proper place: | If you're using a system installed [[NSS]] and [[NSPR]] then adjust the pkg-config files to point to the proper place: | ||
− | ln -sfv /usr/lib64/pkgconfig/nss.pc /opt/thunderbird- | + | ln -sfv /usr/lib64/pkgconfig/nss.pc /opt/thunderbird-{{Thunderbird-Version}}/lib64/pkgconfig/thunderbird-nss.pc && |
− | ln -sfv /usr/lib64/pkgconfig/nspr.pc /opt/thunderbird- | + | ln -sfv /usr/lib64/pkgconfig/nspr.pc /opt/thunderbird-{{Thunderbird-Version}}/lib64/pkgconfig/thunderbird-nspr.pc |
=== 50-thunderbird.sh === | === 50-thunderbird.sh === | ||
Line 189: | Line 189: | ||
# Begin /etc/profile.d/50-thunderbird.sh | # Begin /etc/profile.d/50-thunderbird.sh | ||
− | export PATH="${PATH}:/opt/thunderbird- | + | export PATH="${PATH}:/opt/thunderbird-{{Thunderbird-Version}}/bin" |
− | export PKG_CONFIG_PATH32="${PKG_CONFIG_PATH32}${PKG_CONFIG_PATH32+:}/opt/thunderbird- | + | export PKG_CONFIG_PATH32="${PKG_CONFIG_PATH32}${PKG_CONFIG_PATH32+:}/opt/thunderbird-{{Thunderbird-Version}}/lib/pkgconfig" |
− | export PKG_CONFIG_PATHN32="${PKG_CONFIG_PATHN32}${PKG_CONFIG_PATHN32+:}/opt/thunderbird- | + | export PKG_CONFIG_PATHN32="${PKG_CONFIG_PATHN32}${PKG_CONFIG_PATHN32+:}/opt/thunderbird-{{Thunderbird-Version}}/lib32/pkgconfig" |
− | export PKG_CONFIG_PATH64="${PKG_CONFIG_PATH64}${PKG_CONFIG_PATH64+:}/opt/thunderbird- | + | export PKG_CONFIG_PATH64="${PKG_CONFIG_PATH64}${PKG_CONFIG_PATH64+:}/opt/thunderbird-{{Thunderbird-Version}}/lib64/pkgconfig" |
# End /etc/profile.d/50-thunderbird.sh | # End /etc/profile.d/50-thunderbird.sh |
Revision as of 13:47, 17 December 2006
Download Source: | http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/3.0.4/source/thunderbird-3.0.4-source.tar.bz2 |
---|
Contents
Introduction to Thunderbird
Thunderbird is a stand-alone mail/news client based on the Mozilla codebase.
Dependencies
Required
Recommended
Optional
Creating a .mozconfig
The .mozconfig file contains the options that will be used to build thunderbird.
The first line includes the default configuration for compiling a browser and the second line determines where the build objects are going to reside. ac_cv_visibility_pragma=no fixes build errors on 32bit non-x86 systems but won't cause any trouble on x86. Having --with-system-nss and --with-system-nspr does not mean you *HAVE* to have a system installed version of nss and nspr. It makes the build system prefer to use the system installed version of nss and nspr over the internal version. --enable-canvas enables support for the <canvas></canvas> tag. --enable-svg enables support for rendering svg files. --enable-strip causes the installed binaries to be stripped. --disable-tests prevents test programs from being built which saves a lot of disk space and time. --disable-accessibility - disables a11y support. --disable-installer prevents the installer from being built. --enable-official-branding causes the installed binaries to have the official Thunderbird name embedded in them. Due to license restrictions, you may not distribute binaries created using this option.
cat > .mozconfig << "EOF" . $topsrcdir/mail/config/mozconfig mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@ ac_cv_visibility_pragma=no ac_add_options --prefix=/opt/thunderbird-3.0.4 ac_add_options --with-system-nss ac_add_options --with-system-nspr ac_add_options --with-system-zlib ac_add_options --with-system-png ac_add_options --with-system-jpeg ac_add_options --enable-system-cairo ac_add_options --enable-canvas ac_add_options --enable-svg ac_add_options --enable-strip ac_add_options --disable-tests ac_add_options --disable-accessibility ac_add_options --disable-installer ac_add_options --enable-official-branding EOF
If you would like dual monitor support in Thunderbird, append your your .mozconfig with the following:
cat >> .mozconfig << "EOF" ac_add_options --enable-xinerama EOF
If you have OpenLDAP installed and would like to build Thunderbird against it. This is required to build OpenOffice2 against Thunderbird. Append your .mozconfig with the following:
cat >> .mozconfig << "EOF" ac_add_options --enable-ldap EOF
If you would like to render fonts with Pango, append your your .mozconfig with the following. This can significantly slow font rendering.
cat >> .mozconfig << "EOF" ac_add_options --enable-pango EOF
Non-Multilib
sed -i "s:@MOZ_GTK2_LIBS@:& -L${XORG_PREFIX}/lib -lX11 -lXrender:g" config/autoconf.mk.in
Compile the package:
make -f client.mk build
Install the package:
make -f client.mk install
If you're using a system installed NSS and NSPR then adjust the pkg-config files to point to the proper place:
ln -sfv /usr/lib/pkgconfig/nss.pc /opt/thunderbird-3.0.4/lib/pkgconfig/thunderbird-nss.pc && ln -sfv /usr/lib/pkgconfig/nspr.pc /opt/thunderbird-3.0.4/lib/pkgconfig/thunderbird-nspr.pc
50-thunderbird.sh
If you're using the Bash Startup Files create an addition for Thunderbird with the following commands, otherwise make sure the enviornment variables are set in your profile:
cat > /etc/profile.d/50-thunderbird.sh << "EOF" # Begin /etc/profile.d/50-thunderbird.sh export PATH="${PATH}:/opt/thunderbird-3.0.4/bin" export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}${PKG_CONFIG_PATH+:}/opt/thunderbird-3.0.4/lib/pkgconfig" # End /etc/profile.d/50-thunderbird.sh EOF
Multilib
The order that the builds are displayed on this page isn't neccesarily the order that you install them in. If you would like a 32bit browser but still require the 64bit libraries for other packages build the 32bit version last.
Remember, Use a clean source and build directory for each build, Thunderbird is no exception.
32Bit
Use the following command to append your .mozconfig with 32bit specific flags:
cat >> .mozconfig << EOF export CC="gcc ${BUILD32}" export CXX="g++ ${BUILD32}" export PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" export USE_ARCH=32 ac_add_options --host=$CLFS_TARGET32 ac_add_options --build=$CLFS_TARGET32 mk_add_options CONFIG_GUESS=$CLFS_TARGET32 EOF
sed -i "s:@MOZ_GTK2_LIBS@:& -L${XORG_PREFIX}/lib -lX11 -lXrender:g" config/autoconf.mk.in
x86
Compile the package:
make -f client.mk OS_TEST=x86 build
Install the package:
make -f client.mk OS_TEST=x86 install
Common
mv -v /opt/thunderbird-3.0.4/bin/thunderbird-config{,-32} && ln -sfv /usr/bin/multiarch_wrapper /opt/thunderbird-3.0.4/bin/thunderbird-config
If you're using a system installed NSS and NSPR then adjust the pkg-config files to point to the proper place:
ln -sfv /usr/lib/pkgconfig/nss.pc /opt/thunderbird-3.0.4/lib/pkgconfig/thunderbird-nss.pc && ln -sfv /usr/lib/pkgconfig/nspr.pc /opt/thunderbird-3.0.4/lib/pkgconfig/thunderbird-nspr.pc
64Bit
Use the following command to append your .mozconfig with 64bit specific flags:
cat >> .mozconfig << EOF ac_add_options --libdir=/opt/thunderbird-3.0.4/lib64 export CC="gcc ${BUILD64}" export CXX="g++ ${BUILD64}" export PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" export USE_ARCH=64 EOF
sed -i "s:@MOZ_GTK2_LIBS@:& -L${XORG_PREFIX}/lib64 -lX11 -lXrender:g" config/autoconf.mk.in
Compile the package:
make -f client.mk build
Install the package:
make -f client.mk install && mv -v /opt/thunderbird-3.0.4/bin/thunderbird-config{,-64} && ln -sfv /usr/bin/multiarch_wrapper /opt/thunderbird-3.0.4/bin/thunderbird-config
If you're using a system installed NSS and NSPR then adjust the pkg-config files to point to the proper place:
ln -sfv /usr/lib64/pkgconfig/nss.pc /opt/thunderbird-3.0.4/lib64/pkgconfig/thunderbird-nss.pc && ln -sfv /usr/lib64/pkgconfig/nspr.pc /opt/thunderbird-3.0.4/lib64/pkgconfig/thunderbird-nspr.pc
50-thunderbird.sh
If you're using the Bash Startup Files create an addition for Thunderbird with the following commands, otherwise make sure the enviornment variables are set in your profile:
cat > /etc/profile.d/50-thunderbird.sh << "EOF" # Begin /etc/profile.d/50-thunderbird.sh export PATH="${PATH}:/opt/thunderbird-3.0.4/bin" export PKG_CONFIG_PATH32="${PKG_CONFIG_PATH32}${PKG_CONFIG_PATH32+:}/opt/thunderbird-3.0.4/lib/pkgconfig" export PKG_CONFIG_PATHN32="${PKG_CONFIG_PATHN32}${PKG_CONFIG_PATHN32+:}/opt/thunderbird-3.0.4/lib32/pkgconfig" export PKG_CONFIG_PATH64="${PKG_CONFIG_PATH64}${PKG_CONFIG_PATH64+:}/opt/thunderbird-3.0.4/lib64/pkgconfig" # End /etc/profile.d/50-thunderbird.sh EOF
Creating the Desktop File
Since Thunderbird does not provide a desktop file by default below is an example one:
cat > /usr/share/applications/thunderbird.desktop << "EOF" [Desktop Entry] Encoding=UTF-8 Name=Mozilla Thunderbird Mail Client Comment=Lightweight mail client based on mozilla Exec=thunderbird Icon=thunderbird.png Terminal=false Type=Application Categories=Application;Network; EOF
Grab the Thunderbird pixmap from http://cross-lfs.org/~jciccone/thunderbird.png and put it in /usr/share/pixmaps.