Bug 485353 - [GTK] local build should include GTK3
Summary: [GTK] local build should include GTK3
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 4.6   Edit
Hardware: PC Linux
: P3 minor (vote)
Target Milestone: ---   Edit
Assignee: Platform-SWT-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2016-01-07 09:08 EST by Markus Keller CLA
Modified: 2018-10-19 08:59 EDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Markus Keller CLA 2016-01-07 09:08:05 EST
I had to build natives to test a GTK patch, and I hit the wall because GTK3 support didn't work out of the box.

Sravan revealed that I need to add this to /org.eclipse.swt.gtk.linux.x86/build.xml:
    <property name="machine_gtk3" value="localmachine"/>

It looks like bug 428656 fixed this for the Maven build, but the workspace build should also work without this hack.

On a related note, I had to change the "targets" property to ...
    <property name="targets" value="install"/>
... because I didn't find all XULRunner dependencies, and WebKit support was good enough for me. Skipping XULRunner by default would be much more appropriate than skipping GTK3.
Comment 1 Alexander Kurtakov CLA 2016-01-07 10:54:02 EST
Defaulting to GTK3 but not compiling it by default is kind of weird I agree. Adding machine_gtk3=localmachine in fragment build.xml has the potential of breaking existing builders if there are still platforms for which gtk2 and gtk3 builds happen on different machines @IBM builders  (Arun please correct me if wrong). Building GTK3 shouldn't be conditionalized on local vs. remote vailable, it should be enabled/disabled on another var per os/arch tuple (fragment build.xml files), always default to local and if some param passed do it remote (if this use case is still needed). This is smth that can't be touched from non-IBMers (due to exact knowledge/access to builders needed) until bug 476642 is resolved but the number of bumpers there are too many and require more groups involvement than manageable so really slow going.

About XULRunner - it's swt integration is exercise for the sake of the exercise on any recent distro as no one has that old xulrunners needed for swt to work with. 
This is really nasty area in getting people onboard for swt but thankfully the maven build and terminal build.sh work reliably enough so I just recommend people building the natives at the console (sigh). I'm really happy to see others see the current state not that good.
Comment 2 Markus Keller CLA 2016-01-07 13:26:44 EST
(In reply to Alexander Kurtakov from comment #1)
Thanks for the background. It's not high-priority.

> Adding machine_gtk3=localmachine in fragment build.xml has the potential of
> breaking existing builders if there are still platforms for which gtk2 and
> gtk3 builds happen on different machines @IBM builders

Yeah, I didn't mean to release this workaround, but I just wanted to write it down somewhere, so that I or others can find it.

> ... always default to local and if some param passed
> do it remote (if this use case is still needed).

Yup.

Funny thing about XULRunner: I just changed my Windows install to use XULRunner, because I was forced to upgrade to IE 11. I can't stand IE's font smearing. XULRunner looks better and respects my OS settings.
Comment 3 Eric Williams CLA 2018-05-11 15:23:22 EDT
Is this still an issue?
Comment 4 Sravan Kumar Lakkimsetti CLA 2018-05-14 01:46:02 EDT
(In reply to Eric Williams from comment #3)
> Is this still an issue?

Yeah its still an issue. Need to add 
    <property name="machine_gtk3" value="localmachine"/>
to <binaries repo>/<gtk binaries>/build.xml
Comment 5 Eric Williams CLA 2018-05-15 11:23:19 EDT
(In reply to Sravan Kumar Lakkimsetti from comment #4)
> (In reply to Eric Williams from comment #3)
> > Is this still an issue?
> 
> Yeah its still an issue. Need to add 
>     <property name="machine_gtk3" value="localmachine"/>
> to <binaries repo>/<gtk binaries>/build.xml

Okay. Is it feasible to target this for 4.9?
Comment 6 Alexander Kurtakov CLA 2018-10-19 08:59:18 EDT
In 4.10 only GTK3 is built.