|
|
Re: IMP non-java bits and build process [message #29568 is a reply to message #29394] |
Thu, 23 July 2009 20:29 |
Robert M. Fuhrer Messages: 294 Registered: July 2009 |
Senior Member |
|
|
Porter Ricks wrote:
> Background: Now that eclipse is available again for Solaris x86 I'm
> interested in getting IMP working on this OS (specifically OpenSolaris).
> Not only to use IMP on this platform but also because because some other
> Eclipse projects (e.g. QVT declarative) are depending on IMP. If more
> projects depend on IMP in future then Solaris and other less
> well-supported platforms will miss out on them.
>
> My questions are:
>
> - Is there a summary of the build process for the whole IMP project
> available somewhere? Java and native code bits?
We have an internal page that summarizes the entire build process, which
needs a bit of updating, given recent code restructuring. I'll get this
posted to the IMP website on eclipse.org ASAP.
> - Which parts remain non-100% pure-java (e.g. LPG) and where can I find
> details of their build process/requirements? How are they integrated
> into eclipse plugins?
The only non-Java code to which you're referring is not actually part of
IMP per se: the LPG parser generator itself, which is written in C++,
and is housed in the plugin lpg.generator. The runtime and the rest of
the meta-tooling is 100% pure Java. If you don't want to use LPG, it's
all 100% pure Java.
As Ed has pointed out, we've been checking in the generated lexer and
parser classes into the src repo for a while now, so you actually don't
need to run LPG to build IMP from its source.
> - Any opinions on the difficulty of porting the native code components
> to another unix OS? Pretty much a routine process of configure make
> install etc? Any unusual build requirements?
The LPG generator is written in very simple C++, and we've built it for
many different platforms, including Mac OS, Windows, Linux, AIX, and
mainframes. Any recent version of g++ should be able to build it. There
are Makefiles in the source distribution, but in reality it boils down
roughly to "g++ -o lpg *.cpp". See the LPG project page on SourceForge
for more info on getting the source.
> - If I could build the binary bits for Solaris X86 what other changes
> would be needed in the plugins to allow it to be recognised as one of
> the valid platforms for IMP?
If you wanted to enable the LPG IDE for a new platform, you'd need to:
- Create a new platform-specific plugin fragment for lpg.generator,
making sure to add a platform constraint clause to its manifest.
- Add the new fragment to the lpg.generator feature manifest.
You can follow the existing plugin fragments (e.g. lpg.generator.linux_x86)
as a template.
--
Cheers,
-- Bob
--------------------------------
Robert M. Fuhrer
Research Staff Member
Programming Technologies Dept.
IBM T.J. Watson Research Center
IDE Meta-tooling Platform Project Lead (http://www.eclipse.org/imp)
X10: Productive High-Performance Parallel Programming (http://x10.sf.net)
|
|
|
|
Re: IMP non-java bits and build process [message #576263 is a reply to message #29394] |
Thu, 23 July 2009 20:29 |
Robert M. Fuhrer Messages: 294 Registered: July 2009 |
Senior Member |
|
|
Porter Ricks wrote:
> Background: Now that eclipse is available again for Solaris x86 I'm
> interested in getting IMP working on this OS (specifically OpenSolaris).
> Not only to use IMP on this platform but also because because some other
> Eclipse projects (e.g. QVT declarative) are depending on IMP. If more
> projects depend on IMP in future then Solaris and other less
> well-supported platforms will miss out on them.
>
> My questions are:
>
> - Is there a summary of the build process for the whole IMP project
> available somewhere? Java and native code bits?
We have an internal page that summarizes the entire build process, which
needs a bit of updating, given recent code restructuring. I'll get this
posted to the IMP website on eclipse.org ASAP.
> - Which parts remain non-100% pure-java (e.g. LPG) and where can I find
> details of their build process/requirements? How are they integrated
> into eclipse plugins?
The only non-Java code to which you're referring is not actually part of
IMP per se: the LPG parser generator itself, which is written in C++,
and is housed in the plugin lpg.generator. The runtime and the rest of
the meta-tooling is 100% pure Java. If you don't want to use LPG, it's
all 100% pure Java.
As Ed has pointed out, we've been checking in the generated lexer and
parser classes into the src repo for a while now, so you actually don't
need to run LPG to build IMP from its source.
> - Any opinions on the difficulty of porting the native code components
> to another unix OS? Pretty much a routine process of configure make
> install etc? Any unusual build requirements?
The LPG generator is written in very simple C++, and we've built it for
many different platforms, including Mac OS, Windows, Linux, AIX, and
mainframes. Any recent version of g++ should be able to build it. There
are Makefiles in the source distribution, but in reality it boils down
roughly to "g++ -o lpg *.cpp". See the LPG project page on SourceForge
for more info on getting the source.
> - If I could build the binary bits for Solaris X86 what other changes
> would be needed in the plugins to allow it to be recognised as one of
> the valid platforms for IMP?
If you wanted to enable the LPG IDE for a new platform, you'd need to:
- Create a new platform-specific plugin fragment for lpg.generator,
making sure to add a platform constraint clause to its manifest.
- Add the new fragment to the lpg.generator feature manifest.
You can follow the existing plugin fragments (e.g. lpg.generator.linux_x86)
as a template.
--
Cheers,
-- Bob
--------------------------------
Robert M. Fuhrer
Research Staff Member
Programming Technologies Dept.
IBM T.J. Watson Research Center
IDE Meta-tooling Platform Project Lead (http://www.eclipse.org/imp)
X10: Productive High-Performance Parallel Programming (http://x10.sf.net)
|
|
|
Powered by
FUDForum. Page generated in 0.04136 seconds