Bug 184630 - mail/thunderbird jobserver unavailable
Summary: mail/thunderbird jobserver unavailable
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-gecko (Nobody)
URL:
Keywords:
: 189598 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-12-09 11:50 UTC by Toni Ballesta
Modified: 2014-08-04 19:27 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Toni Ballesta 2013-12-09 11:50:00 UTC
===>  Building for thunderbird-24.1.0
gmake  -C .
gmake[1]: Entering directory `/usr/ports/mail/thunderbird/work/comm-esr24/obj-x86_64-unknown-freebsd9.2'
gmake[1]: warning: jobserver unavailable: using -j1.  Add `+' to parent make rule.
(...)
======================

I've the Phenom II x6 and only can compile with 1 core with Thunderbird. With www/firefox-esr-24.1.0 no problem, all cores work ok and in a few minutes is ended.

Fix: 

I think that the problem is on Makefile.
How-To-Repeat: Using make, portmaster, cleaning and rebuild, using sudo, su, su -, etc.
Comment 1 Mark Linimon freebsd_committer freebsd_triage 2013-12-10 02:04:02 UTC
Responsible Changed
From-To: freebsd-bugs->freebsd-ports-bugs

ports PR.
Comment 2 Edwin Groothuis freebsd_committer freebsd_triage 2013-12-10 02:04:18 UTC
Class Changed
From-To: maintainer-update->change-request

Fix category (submitter is not maintainer) (via the GNATS Auto Assign 
Tool)
Comment 3 Edwin Groothuis freebsd_committer freebsd_triage 2013-12-10 02:04:20 UTC
Responsible Changed
From-To: freebsd-ports-bugs->gecko

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 4 Toni Ballesta 2014-04-08 12:15:13 UTC
Now, mail/thunderbird is 24.4.0 and not solve the problem: no parallel 
building. FreeBSD upgraded to 10.0-RELEASE.
Comment 5 Toni Ballesta 2014-04-27 15:47:11 UTC
Please, this is very important. The lapse for compile Thunderbird with
only one core is very, very big.
Comment 6 Trond Endrestøl 2014-05-06 09:32:22 UTC
I've been experimenting with parallel builds at home, and I concocted 
the Makefile.local below. Feel free to integrate this into the regular 
Makefile for mail/thunderbird.

# Enable parallel build.
MAKE_JOBS_SAFE= yes

# MAKE_JOBS_NUMBER isn't defined at this stage, so we gather the number of CPU cores ourself.
_LOCAL_MAKE_JOBS_NUMBER!=   ${SYSCTL} -n kern.smp.cpus

# Do we set MOZ_MAKE_FLAGS elsewhere in the regular Makefile, or in the central .mk files?
# I hope this construct properly propagates any previous assignments to MOZ_MAKE_FLAGS.
MOZ_MAKE_FLAGS+=    -j ${_LOCAL_MAKE_JOBS_NUMBER}

# Finally tell gmake what we expect from it.
MOZ_EXPORT+=    MOZ_MAKE_FLAGS="${MOZ_MAKE_FLAGS}"
MOZ_MK_OPTIONS+=    MOZ_MAKE_FLAGS="${MOZ_MAKE_FLAGS}"

# EOF

-- 
----------------------------------------------------------------------
Trond Endrestøl                     |     Trond.Endrestol@ximalas.info
ACM, NAS, NUUG, SAGE, USENIX        |   FreeBSD 9.2-S & re-Alpine 2.03
Comment 7 Toni Ballesta 2014-06-22 15:18:16 UTC
Thanks Trond. I've write manually "10" on MAKE_JOBS_NUMBER, and now I can use multi thread. Misteriously, previous versions on time ago, I think this line doesn't exist, or it's different.

Please, don't close this bug because this patch only works for me. On Thunderbird 24.6, the problem persist.
Comment 8 Toni Ballesta 2014-06-22 15:25:02 UTC
Sorry, I do not explain correctly. I replace -j${MAKE_JOBS_NUMBER} by -j10 on Makefile, line 143 (on tb24.6), because I don't know how run or apply the Makefile.local.

Thank you again, Trond!
Comment 9 Jan Beich freebsd_committer freebsd_triage 2014-06-22 15:55:10 UTC
Try the following fixes. They can be committed now or wait for the next update.

http://trillian.chruetertee.ch/freebsd-gecko/changeset/1604
http://trillian.chruetertee.ch/freebsd-gecko/changeset/1611

Note, thunderbird-31.* build is going to be even faster due to --enable-unified-compilation.
Comment 10 Toni Ballesta 2014-06-22 16:03:20 UTC
Thanks Jan, I try this now.

And sorry, before my comments, I can build Thunderbird creating file Makefile.local and copying-paste the content of Trond. Reverting to Makefile original works with jobs equally. Without this Makefile.local, doesn't work the multi-jobs.
Comment 11 Jan Beich freebsd_committer freebsd_triage 2014-06-22 16:09:05 UTC
*** Bug 189598 has been marked as a duplicate of this bug. ***
Comment 12 Toni Ballesta 2014-07-27 18:22:24 UTC
Please, add this Makefile.local on the system ports...