[ 
http://jira.codehaus.org/browse/MOJO-574?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=203993#action_203993
 ] 

Rainer Schulze commented on MOJO-574:
-------------------------------------

Looking for an alternative to the old-fashioned "make" build process I recently 
'stumbled' over the native-maven-plugin. As an avid maven user I gave it try 
(in a linux environment) and found that it doesn't fit our needs as long as the 
header files are not stored (installed, deployed) together with the artifacts 
(especially libraries). So I developed some ideas of how to cope with the 
problem (without being capable of implementing them in the 'native-plugin').

First I would add an additional directory in the project layout where I would 
store those header files that must be deployed. The directory might be situated 
in the '{{src}}' directory and be named as 'groupId.artifactId' (e.g. 
"{{src/org.codehaus.jira.lib.utils/}}" or 
"{{include/org.codehaus.jira.lib.utils/}}")

In the source code of the project references to the header files must be 
written as

{{#include "org.codehaus.jira.lib.utils/Header.h"}}

During the compile phase of the project there must be a "{{-Isrc}}" compiler 
option set, so that the compiler will find the header files in their 
'development' location.

The deploy process must copy the whole directory 
{{org.codehaus.jira.lib.utils}} to the appropriate places (repositories).

When a library is referenced by another project the compile option must be 
expanded to contain the

{{$HOME/.m2/repository/org/codehaus/jira/lib/utils/1.0.6}} in the include path.

By these means header files and libraries are kept together consistently.

Another 'problem' arises from creating artifacts in different environments 
(linux32, linux64, windows, ...). A solution to this problem might be a 
modification of the repository path of an artifact by pre- or appending

{{{os.name}/{os.arch}/{os.version}}}.

I started to develop an application that implements the above ideas, but 
without maven support this is a very hard job, so I would appreciate it a lot 
if they were implemented in the native-plugin.

Sorry (not really) for the long comment ... What are your opinions?


> .h files as dependencies
> ------------------------
>
>                 Key: MOJO-574
>                 URL: http://jira.codehaus.org/browse/MOJO-574
>             Project: Mojo
>          Issue Type: New Feature
>          Components: native
>         Environment: Windows and Unix (Linux)
>            Reporter: Tony Sandin
>
> To compile or link native code requires static or shared libraries and 
> include files. THe current Native plugin only deploy share, static, or 
> executable artifacts, but no include files.
> Includes files should deploy with the library artifact as well.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to