On 1/31/15, René Rebe <[email protected]> wrote:
> Hi,
>
>
> Does this “client.mk” thing also apply to firefox and thunderbird? That is
> “cover” bugs due to this “new-style-configure”?
>
> While I took a brief look at this, I noticed the T2 “mozilla” packages have
> support for this “old-style” client.mk. However, all these package opt not
> to build this way, but use the “more modern” configure/make cycle, …
>
>
Rene,
This time I got a successful compile in T2.
I created a .conf file without custmain(), just hooks.
I used Linux From Scratch as my guide. They use "make -f client.mk"
and as far as I know this is still the recommended method, it is not
an "old way".
(if you have information contrary to this, please let me know, with a link!)
So, this code is not required:
hook_add preconf 8 "mkdir -p objdir; cd objdir; configscript=../configure"
var_remove makeopt ' ' '-f client.mk build'
As LFS points out, seamonkey has a bug, the only thing that you have
to do before
running "make -f client.mk" is create this folder:
mkdir mozilla/objdir-sm-release
...or, whatever name you have given to the build folder. In my case:
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-sm-release
I removed the include of 'mozilla-conf.in', and here is my .conf.
However, this is just for the experiment and you can probably just
roll your existing seamonkey.conf back to using 'client.mk'.
For reference, my .conf:
runconf=0
autogen=0
sm_fix_pre()
{
#create mozconfig:
echo "mk_add_options MOZ_MAKE_FLAGS='-j1'
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-sm-release
mk_add_options MOZ_CO_PROJECT=suite
ac_add_options --enable-application=suite
ac_add_options --enable-system-hunspell
ac_add_options --localstatedir=/var
ac_add_options --sysconfdir=/etc
ac_add_options --prefix=/usr
ac_add_options --host=${arch_target}
ac_add_options --disable-dbus
ac_add_options --disable-accessibility
ac_add_options --with-system-bz2
ac_add_options --disable-updater
ac_add_options --disable-parental-controls
ac_add_options --enable-places
ac_add_options --disable-gnomevfs
ac_add_options --enable-system-sqlite
ac_add_options --enable-system-cairo
ac_add_options --enable-strip
ac_add_options --without-system-jpeg
ac_add_options --with-system-zlib
ac_add_options --enable-libxul
ac_add_options --enable-storage
ac_add_options --disable-tests
ac_add_options --with-default-mozilla-five-home=${libdir}/seamonkey
ac_add_options --enable-jsd
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --disable-crashreporter
ac_add_options --disable-libnotify
ac_add_options --with-system-libvpx
ac_add_options --enable-gio
ac_add_options --enable-chrome-format=omni
ac_add_options --disable-necko-wifi
ac_add_options --disable-gconf
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --enable-shared-js
ac_add_options --enable-gstreamer
ac_add_options --disable-ldap
ac_add_options --disable-angle
ac_add_options --with-system-icu
ac_add_options --disable-pulseaudio
ac_add_options --enable-system-ffi
ac_add_options --disable-gnomeui
ac_add_options --with-pthreads
ac_add_options --enable-system-pixman
ac_add_options --disable-logging
ac_add_options --disable-debug
ac_add_options --disable-profilesharing
ac_add_options --enable-mathml
ac_add_options --enable-crypto
ac_add_options --with-system-icu
ac_add_options --with-system-libevent
ac_add_options --enable-optimize='-Os'" > mozconfig
#have to do this due to a bug...
mkdir mozilla/objdir-sm-release
if [[ $libdir == *lib64 ]];then
export LDFLAGS='-L/usr/X11R7/lib64'
else
export LDFLAGS='-L/usr/X11R7/lib'
fi
export CPLUS_INCLUDE_PATH=/usr/X11R7/include
export C_INCLUDE_PATH=/usr/X11R7/include
}
hook_add premake 5 'sm_fix_pre'
makeopt='-f client.mk'
makeinstopt=''
sm_fix_post()
{
#the usual way of installing is broken, do it the long way:
mkdir -p $root${libdir}/seamonkey-${ver}
cp -a -L -f --remove-destination objdir-sm-release/dist/bin/*
$root${libdir}/seamonkey-${ver}/
ln -snf seamonkey-${ver} $root${libdir}/seamonkey
#and development files:
mkdir -p $root${libdir}/seamonkey-devel-${ver}
cp -a -L -f --remove-destination objdir-sm-release/dist/sdk
$root${libdir}/seamonkey-devel-${ver}/
ln -snf ../seamonkey-${ver} $root${libdir}/seamonkey-devel-${ver}/bin
ln -snf ../../include/seamonkey-${ver}
$root${libdir}/seamonkey-devel-${ver}/include
ln -snf sdk/lib $root${libdir}/seamonkey-devel-${ver}/lib
cp -a -L -f --remove-destination
objdir-sm-release/dist/include/xpcom-config.h
$root${libdir}/seamonkey-devel-${ver}/
mkdir -p $root/usr/include/seamonkey-${ver}
cp -a -L -f --remove-destination objdir-sm-release/dist/include/*
$root/usr/include/seamonkey-${ver}/
ln -snf seamonkey-${ver} $root/usr/include/seamonkey
mkdir -p $root/usr/share/idl/seamonkey-${ver}
cp -a -L -f --remove-destination objdir-sm-release/dist/idl/*
$root/usr/share/idl/seamonkey-${ver}/
ln -snf ../../share/idl/seamonkey-${ver}
$root${libdir}/seamonkey-devel-${ver}/idl
mkdir -p $root/usr/bin
ln -snf ../..${libdir}/seamonkey/seamonkey $root/usr/bin/seamonkey
}
hook_add postmake 6 'sm_fix_post'
check_shared=0
Note that mine builds with ldap disabled, which I think you reported
before is a problem. But, I built 2.32.
I don't know about firefox and thunderbird. I just checked the LFS
page for firefox, and they are using client.mk:
http://www.linuxfromscratch.org/blfs/view/svn/xsoft/firefox.html
Regards,
Barry
-----------------------------------------------------------
If you wish to unsubscribe from this mailing, send mail to
[email protected] with a subject of: unsubscribe t2