Hello again,
you may be right that not using configure directly and using the client.mk
results in a different build sometimes with less “random issues”.
Thunderbird would not build without ldap for me using configure, using
client.mk I think it just built, … Will do more testing over the next days, ...
Strange thing, …
René
On Mar 30, 2015, at 13:56, René Rebe <[email protected]> wrote:
> Hi,
>
> minimal needed code change to convert the autoconf to client.mk build of
> Firefox “products”:
>
> Index: package/www/seamonkey/mozilla-conf.in
> ===================================================================
> --- package/www/seamonkey/mozilla-conf.in (revision 43909)
> +++ package/www/seamonkey/mozilla-conf.in (working copy)
> @@ -101,7 +101,7 @@
> }
>
> mozilla_ver() {
> - moz_ver=`sed -n 's/MOZ_APP_VERSION *= *//p' config/autoconf.mk`
> + moz_ver="`sed -n 's/MOZ_APP_VERSION *= *//p' config/autoconf.mk ||
> true`"
> moz_ver=${moz_ver:-$ver}
> }
>
> Index: package/www/seamonkey/seamonkey.conf
> ===================================================================
> --- package/www/seamonkey/seamonkey.conf (revision 43909)
> +++ package/www/seamonkey/seamonkey.conf (working copy)
> @@ -18,8 +18,8 @@
> set_confopt
> fi
>
> -hook_add preconf 8 "mkdir -p objdir; cd objdir; configscript=../configure"
> -var_remove makeopt ' ' '-f client.mk build'
> +#hook_add preconf 8 "mkdir -p objdir; cd objdir; configscript=../configure"
> +#var_remove makeopt ' ' '-f client.mk build'
>
> mozilla_config() {
> cat >> .mozconfig <<-EOT
>
>
> On Jan 30, 2015, at 23:46, Barry Kauler <[email protected]> wrote:
>
>> 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
>
> --
> ExactCODE GmbH, Lietzenburger Str. 42, DE-10789 Berlin
> DE Legal: Amtsgericht Berlin (Charlottenburg) HRB 105123B, Tax-ID#:
> DE251602478
> Managing Director: René Rebe
> http://exactcode.com | http://exactscan.com | http://ocrkit.com |
> http://t2-project.org | http://rene.rebe.de
>
> -----------------------------------------------------------
> If you wish to unsubscribe from this mailing, send mail to
> [email protected] with a subject of: unsubscribe t2
--
ExactCODE GmbH, Lietzenburger Str. 42, DE-10789 Berlin
DE Legal: Amtsgericht Berlin (Charlottenburg) HRB 105123B, Tax-ID#: DE251602478
Managing Director: René Rebe
http://exactcode.com | http://exactscan.com | http://ocrkit.com |
http://t2-project.org | http://rene.rebe.de
-----------------------------------------------------------
If you wish to unsubscribe from this mailing, send mail to
[email protected] with a subject of: unsubscribe t2