--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src/main/java"/>
+ <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"/>
+ <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.4"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>maven-argeo-osgi-plugin</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.maven.ide.eclipse.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.maven.ide.eclipse.maven2Nature</nature>
+ </natures>
+</projectDescription>
--- /dev/null
+<project>\r
+ <modelVersion>4.0.0</modelVersion>\r
+ <groupId>org.argeo.slc.maven</groupId>\r
+ <artifactId>maven-argeo-osgi-plugin</artifactId>\r
+ <version>0.1.1</version>\r
+ <packaging>maven-plugin</packaging>\r
+ <name>Argeo OSGi Plugin</name>\r
+\r
+ <build>\r
+ <plugins>\r
+ <plugin>\r
+ <artifactId>maven-compiler-plugin</artifactId>\r
+ <configuration>\r
+ <source>1.4</source>\r
+ <target>1.4</target>\r
+ </configuration>\r
+ </plugin>\r
+ <plugin>\r
+ <artifactId>maven-plugin-plugin</artifactId>\r
+ <dependencies>\r
+ <dependency>\r
+ <groupId>org.apache.maven</groupId>\r
+ <artifactId>maven-plugin-tools-ant\r
+ </artifactId>\r
+ <version>2.1</version>\r
+ </dependency>\r
+ </dependencies>\r
+ </plugin>\r
+ </plugins>\r
+ </build>\r
+ <dependencies>\r
+ <dependency>\r
+ <groupId>org.apache.maven</groupId>\r
+ <artifactId>maven-plugin-api</artifactId>\r
+ <version>2.0</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.apache.maven</groupId>\r
+ <artifactId>maven-script-ant</artifactId>\r
+ <version>2.0.9</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.apache.maven</groupId>\r
+ <artifactId>maven-project</artifactId>\r
+ <version>2.0.7</version>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>ant-contrib</groupId>\r
+ <artifactId>ant-contrib</artifactId>\r
+ <version>1.0b3</version>\r
+ <exclusions>\r
+ <exclusion>\r
+ <groupId>ant</groupId>\r
+ <artifactId>ant</artifactId>\r
+ </exclusion>\r
+ </exclusions>\r
+ </dependency>\r
+ </dependencies>\r
+ <distributionManagement>\r
+ <repository>\r
+ <uniqueVersion>false</uniqueVersion>\r
+ <id>argeo-restricted</id>\r
+ <name>Argeo FOSS Repository</name>\r
+ <url>file:///var/argeo/maven2/argeo\r
+ </url>\r
+ </repository>\r
+ <snapshotRepository>\r
+ <uniqueVersion>true</uniqueVersion>\r
+ <id>argeo-snapshots-restricted</id>\r
+ <name>Argeo FOSS Snapshots Repository</name>\r
+ <url>file:///var/argeo/maven2/argeo-snapshots\r
+ </url>\r
+ </snapshotRepository>\r
+ </distributionManagement>\r
+</project>
--- /dev/null
+<project>
+
+ <taskdef resource="net/sf/antcontrib/antlib.xml" />
+
+ <target name="simple-bundles" depends="generate-poms,deploy-pom">
+ </target>
+
+ <target name="generate-poms">
+
+ <property name="targetDir" location="target" />
+ <mkdir dir="${targetDir}" />
+
+ <copy todir="${targetDir}/bundles">
+ <fileset dir="${bundlesBase}" includes="**" excludes="*.xml,.*,target/**" />
+ </copy>
+
+ <pathconvert property="dirs" pathsep=",">
+ <path>
+ <dirset dir="${targetDir}/bundles" includes="*" />
+ </path>
+ <mapper>
+ <flattenmapper />
+ </mapper>
+ </pathconvert>
+
+ <if>
+ <contains string="${projectVersion}" substring="-SNAPSHOT" />
+ <then>
+ <property name="qualifier" value="SNAPSHOT" />
+ </then>
+ <else>
+ <tstamp>
+ <format property="qualifier" pattern="yyyyMMdd" />
+ </tstamp>
+ </else>
+ </if>
+
+
+ <property name="aggregatorPomFile" value="${targetDir}/bundles/pom.xml" />
+ <echo file="${aggregatorPomFile}">
+ <![CDATA[
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>${projectGroupId}</groupId>
+ <artifactId>aggregator</artifactId>
+ <version>${projectVersion}</version>
+ <packaging>pom</packaging>
+ <modules>
+ ]]></echo>
+ <for list="${dirs}" param="dir">
+
+ <sequential>
+ <echo file="${aggregatorPomFile}" append="true">
+ <![CDATA[<module>@{dir}</module>]]></echo>
+ </sequential>
+ </for>
+ <echo file="${aggregatorPomFile}" append="true">
+ <![CDATA[
+ <module>bundles</module>
+ </modules>
+ </project>
+ ]]></echo>
+
+ <for list="${dirs}" param="dir">
+
+ <sequential>
+ <echo>Generate POM for @{dir}</echo>
+
+ <var name="bundleDir" value="${targetDir}/bundles/@{dir}" />
+ <mkdir dir="${bundleDir}/target" />
+
+
+ <replace file="${bundleDir}/META-INF/MANIFEST.MF" token="qualifier" value="${qualifier}" />
+
+ <copy file="${bundleDir}/META-INF/MANIFEST.MF" tofile="${bundleDir}/target/bundle.properties" />
+ <replace file="${bundleDir}/target/bundle.properties" token=" " value="" />
+ <replace file="${bundleDir}/target/bundle.properties" token=":" value="=" />
+ <replace file="${bundleDir}/target/bundle.properties" token=".SNAPSHOT" value="-SNAPSHOT" />
+ <var file="${bundleDir}/target/bundle.properties" />
+
+ <copy file="pom-template.xml" toFile="${bundleDir}/pom.xml">
+ <filterset>
+ <filtersfile file="${bundleDir}/target/bundle.properties" />
+ </filterset>
+ </copy>
+
+ </sequential>
+ </for>
+
+</target>
+
+<target name="deploy-pom">
+
+ <property name="targetDir" location="target" />
+
+ <pathconvert property="dirs" pathsep=",">
+ <path>
+ <dirset dir="${targetDir}/bundles" includes="*" />
+ </path>
+ <mapper>
+ <flattenmapper />
+ </mapper>
+ </pathconvert>
+
+ <mkdir dir="${targetDir}/bundles/bundles" />
+ <property name="deployPomFile" value="${targetDir}/bundles/bundles/pom.xml" />
+
+ <echo file="${deployPomFile}">
+ <![CDATA[
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>${projectGroupId}</groupId>
+ <artifactId>bundles</artifactId>
+ <version>${projectVersion}</version>
+ <packaging>pom</packaging>
+ <dependencies>
+ ]]></echo>
+
+ <for list="${dirs}" param="dir">
+
+ <sequential>
+ <echo>Add @{dir} to deploy POM</echo>
+ <mkdir dir="${targetDir}" />
+
+ <var name="bundleDir" value="${targetDir}/bundles/@{dir}" />
+ <var file="${bundleDir}/target/bundle.properties" />
+
+ <echo file="${deployPomFile}" append="true">
+ <![CDATA[
+ <dependency>
+ <groupId>${projectGroupId}</groupId>
+ <artifactId>${Bundle-SymbolicName}</artifactId>
+ <version>${Bundle-Version}</version>
+ </dependency>
+ ]]></echo>
+ </sequential>
+ </for>
+
+ <echo file="${deployPomFile}" append="true">
+ <![CDATA[
+ </dependencies>
+ </project>
+ ]]></echo>
+</target>
+</project>
\ No newline at end of file
--- /dev/null
+<pluginMetadata>
+ <mojos>
+ <mojo>
+ <goal>simple-bundles</goal>
+ <call>simple-bundles</call>
+ <description>
+ Process a simple bundle (no Java)
+ </description>
+
+ <requiresProject>true</requiresProject>
+
+ <parameters>
+ <parameter>
+ <name>bundlesBase</name>
+ <property>bundlesBase</property>
+ <required>true</required>
+ <defaultValue>bundles</defaultValue>
+ <type>java.io.File</type>
+ <description>The base directory for the bundles.
+ </description>
+ </parameter>
+ <parameter>
+ <name>projectVersion</name>
+ <property>projectVersion</property>
+ <required>true</required>
+ <readonly>true</readonly>
+ <defaultValue>${project.version}</defaultValue>
+ <type>java.lang.String</type>
+ <description>The group id of the project currently being built.
+ </description>
+ </parameter>
+ <parameter>
+ <name>projectGroupId</name>
+ <property>projectGroupId</property>
+ <required>true</required>
+ <readonly>true</readonly>
+ <defaultValue>${project.groupId}</defaultValue>
+ <type>java.lang.String</type>
+ <description>The group id of the project currently being built.
+ </description>
+ </parameter>
+ </parameters>
+ </mojo>
+ <mojo>
+ <goal>deploy-pom</goal>
+ <call>deploy-pom</call>
+ <description>
+ Generate a POM with the dependencies
+ </description>
+
+ <requiresProject>true</requiresProject>
+ <parameters>
+ <parameter>
+ <name>projectGroupId</name>
+ <property>projectGroupId</property>
+ <required>true</required>
+ <readonly>true</readonly>
+ <defaultValue>${project.groupId}</defaultValue>
+ <type>java.lang.String</type>
+ <description>The group id of the project currently being built.
+ </description>
+ </parameter>
+ <parameter>
+ <name>projectVersion</name>
+ <property>projectVersion</property>
+ <required>true</required>
+ <readonly>true</readonly>
+ <defaultValue>${project.version}</defaultValue>
+ <type>java.lang.String</type>
+ <description>The group id of the project currently being built.
+ </description>
+ </parameter>
+ </parameters>
+
+ </mojo>
+ </mojos>
+</pluginMetadata>
\ No newline at end of file