Bug 71636 - [build] Implement autotooling for swt make files
Summary: [build] Implement autotooling for swt make files
Status: CLOSED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 3.3   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Grant Gayed CLA
QA Contact:
URL:
Whiteboard:
Keywords: helpwanted
: 71635 146083 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-08-09 08:10 EDT by Jan Schulz CLA
Modified: 2017-12-06 02:27 EST (History)
7 users (show)

See Also:


Attachments
gtk patch (1.21 KB, patch)
2004-08-09 08:11 EDT, Jan Schulz CLA
no flags Details | Diff
motif patch (2.18 KB, patch)
2004-08-09 08:12 EDT, Jan Schulz CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Schulz CLA 2004-08-09 08:10:46 EDT
Hello,

I'm currently packaging eclipse for debian and I run into problems with your 
makefile for motif and gtk. It requires, that it is patched before I could use 
it on my system. To make as less changes as possible, I had to do two patches to 
the make of gtk:

+MOZILLA_INCLUDES=$(MOZILLA_HOME)/includes

and then using this instead of the old one: 
-       -I$(MOZILLA_HOME)/include \
+       -I$(MOZILLA_INCLUDES) \
(and so on...)

The other chnage was defining one more libdir
                -I$(JAVA_HOME)/include \
+               -I$(JAVA_HOME)/include/linux \

Thsi is required for all non IBM JDKs. It would be even better if that was also 
overwritebale completly, like replacing it with 
JAVA_HOME_INCLUDES := -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux
and using this. This way I could set this variables in the makefile call and be 
happy.

BTW: here is the call, which I need on my debian system *after* patching:

# build gtk jni files
build/libswt3.0-gtk2-jni:: debian/stamp-copy-all-together-gtk
        cd plugins/org.eclipse.swt/gtk_bin/library/ && \
        make -f make_gtk.mak make_swt make_atk make_gnome make_mozilla \
        MOZILLA_INCLUDES=/usr/include/mozilla \
        JAVA_HOME=$(JAVA_HOME) \
        MOZILLA_HOME=/usr/lib/mozilla \
        MOZILLALIBS="-L/usr/lib/mozilla -lgtkembedmoz -lxpcom"
        cp plugins/org.eclipse.swt/gtk_bin/library/*so plugins/org.eclipse.swt/
Eclipse\ SWT\ PI/gtk/library/

The MOZILLALIBS overwrite is nessesary with latest mozilla and firebird packages 
I have on my system.

I attach the patches which I used. There are similar things done in the motif 
makefile.

As a sidenote: IMO it would be better to don't set the default in a machine 
dependend way, but use resonable defaults and use a build.sh file to set this in 
the makefile call.

Nice greetings, Jan
Comment 1 Jan Schulz CLA 2004-08-09 08:11:38 EDT
Created attachment 13815 [details]
gtk patch

Patch to make compiling the gtk part possible on a debian unstable system
Comment 2 Jan Schulz CLA 2004-08-09 08:12:31 EDT
Created attachment 13816 [details]
motif patch

Patch to make compiling the motif parts possible on a debian unstable system
Comment 3 Jan Schulz CLA 2004-08-09 08:14:54 EDT
*** Bug 71635 has been marked as a duplicate of this bug. ***
Comment 4 Jan Schulz CLA 2005-04-14 09:36:58 EDT
Any update on this one?

See also https://bugs.eclipse.org/bugs/show_bug.cgi?id=71637: Autotooling or any 
other way to figure out this values would be great
Comment 5 Billy Biggs CLA 2005-04-14 10:11:19 EDT
I recently fixed the makefile to compile on non-IBM JDKs, that part is trivial.
 Figuring out where the mozilla includes should be has been challenging, since
this does seem to be something that the mozilla folks are fond of changing. 
There are a couple of other bugs filed about this from other distro packagers.

Veronika and I are looking into how to improve our makefiles.  Maybe we could do
something simple to support more mozilla versions if we understood their
differences better.
Comment 6 Kim Moir CLA 2006-10-11 16:41:09 EDT
The helpwanted flag is to indicate a request for help from the community to change  swt build scripts to support autotooling to help out the Linux distributions.

Comment 7 Kim Moir CLA 2007-01-30 17:49:06 EST
*** Bug 146083 has been marked as a duplicate of this bug. ***
Comment 8 Steve Northover CLA 2007-05-25 16:01:14 EDT
Not sure this is still relevant but it'd be nice if distibutions could build us better.
Comment 9 Ben Konrath CLA 2007-05-28 02:38:14 EDT
This would be very useful to have. I think it would be worth investigating scons  and cmake to see if one of those could be used instead of autotools.
Comment 10 Andrew Overholt CLA 2007-06-11 11:04:43 EDT
(In reply to comment #9)
> This would be very useful to have. I think it would be worth investigating
> scons  and cmake to see if one of those could be used instead of autotools.

auto* are way more common than the others, though.
Comment 11 Ben Konrath CLA 2007-06-12 02:22:04 EDT
(In reply to comment #10)
> auto* are way more common than the others, though.

Right, but it's important to pick the tool that works best for the problem that we're trying to solve rather than use a tool because it's popular. 
Comment 12 Alexander Kurtakov CLA 2017-12-06 02:27:46 EST
Autotools are no longer that popular(meson is probably its replacement) and nothing happened here for more than a decade so better to close it.