Initial import.

This commit is contained in:
Alexander Kurtakov 2009-09-09 18:45:59 +00:00
parent fdc8af14d6
commit 60bf7b6ee0
5 changed files with 607 additions and 0 deletions

View File

@ -0,0 +1 @@
maven-bundle-plugin-2.0.0-project.tar.gz

432
felix-1.0.2.pom Normal file
View File

@ -0,0 +1,432 @@
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
<version>4</version>
</parent>
<groupId>org.apache.felix</groupId>
<artifactId>felix</artifactId>
<packaging>pom</packaging>
<name>Apache Felix</name>
<version>1.0.2</version>
<url>http://felix.apache.org/</url>
<inceptionYear>2006</inceptionYear>
<description>Apache felix is an OSGi implementation.</description>
<issueManagement>
<system>Jira</system>
<url>http://issues.apache.org/jira/browse/FELIX</url>
</issueManagement>
<mailingLists>
<mailingList>
<name>Felix Dev</name>
<subscribe>dev-subscribe@felix.apache.org</subscribe>
<unsubscribe>dev-unsubscribe@felix.apache.org</unsubscribe>
<post>-</post>
<archive>http://www.mail-archive.com/dev%40felix.apache.org/</archive>
</mailingList>
<mailingList>
<name>Felix Commits</name>
<subscribe>commits-subscribe@felix.apache.org</subscribe>
<unsubscribe>commits-unsubscribe@felix.apache.org</unsubscribe>
<post>-</post>
<archive>http://www.mail-archive.com/commits%40felix.apache.org/</archive>
</mailingList>
</mailingLists>
<scm>
<connection>scm:svn:https://svn.apache.org/repos/asf/felix/releases/felix-1.0.2</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/felix/releases/felix-1.0.2</developerConnection>
<url>scm:svn:https://svn.apache.org/repos/asf/felix/releases/felix-1.0.2</url>
</scm>
<!--
Felix contains 3 custom maven packaging plugins. Each creates a jar file
as an artifact.
maven-bundle-plugin
(bundle packaging - latest prefered plugin for generating OSGi bundles.)
maven-osgi-plugin
(osgi-bundle packaging - old plugin for generating OSGi bundles.)
org.apache.felix.ipojo.plugin
(plugin for generating iPOJO OSGi bundles.)
But with maven bug https://issues.apache.org/jira/browse/FELIX-198 files
are not always created with the correct extension in the repository.
As a work around, this pom creates different profiles for building the
different types of felix modules.
Usage:
mvn -Dpackaging=<type> clean install
-->
<profiles>
<profile>
<id>packaging-plugins</id>
<activation>
<property>
<name>packaging</name>
<value>plugins</value>
</property>
</activation>
<modules>
<module>../org.osgi.service.obr</module>
<module>../maven-obr-plugin</module>
<module>../bundleplugin</module>
<module>../scrplugin</module>
<module>../tools/maven2/maven-osgi-plugin</module>
</modules>
</profile>
<profile>
<id>packaging-ipojo-bundle</id>
<activation>
<property>
<name>packaging</name>
<value>ipojo-bundle</value>
</property>
</activation>
<modules>
<!--<module>ipojo/arch</module>-->
</modules>
</profile>
<profile>
<id>packaging-bundle</id>
<activation>
<property>
<name>packaging</name>
<value>bundle</value>
</property>
</activation>
<modules>
<module>../org.osgi.foundation</module>
<module>../javax.servlet</module>
<module>../org.osgi.core</module>
<module>../org.osgi.compendium</module>
<module>../framework</module>
<module>../main</module>
<module>../shell</module>
<module>../shell.tui</module>
<module>../shell.gui</module>
<module>../shell.gui.plugin</module>
<module>../org.osgi.service.obr</module>
<module>../bundlerepository</module>
<module>../log</module>
<module>../eventadmin</module>
<module>../http.jetty</module>
<module>../upnp</module>
<module>../scr</module>
<module>../configadmin</module>
<module>../metatype</module>
<module>../dependencymanager</module>
<module>../servicebinder</module>
<module>../wireadmin</module>
<module>../prefs</module>
<module>../ipojo</module>
<module>../mosgi</module>
<module>../jmood</module>
<module>../examples</module>
</modules>
</profile>
<profile>
<id>packaging-osgi-bundle</id>
<activation>
<property>
<name>packaging</name>
<value>osgi-bundle</value>
</property>
</activation>
<modules>
<module>../org.apache.felix.daemon</module>
<!-- <module>tools/mangen</module> -->
</modules>
</profile>
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>bin</descriptorRef>
<descriptorRef>project</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>attached</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<distributionManagement>
<site>
<id>felix website</id>
<url>file:///${user.dir}/target/site-deployed/</url>
</site>
<repository>
<id>apache.releases</id>
<name>Apache Release Distribution Repository</name>
<url>scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository</url>
</repository>
</distributionManagement>
<pluginRepositories>
<pluginRepository>
<id>apache.snapshots</id>
<name>snapshot plugins</name>
<url>
http://people.apache.org/repo/m2-snapshot-repository
</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
<!-- definitions for testing -->
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>easymock</groupId>
<artifactId>easymock</artifactId>
<version>1.2_Java1.3</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-plugin-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>2.0-beta-6</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.0.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.3</version>
</plugin>
<!-- <plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>1.1.0-SNAPSHOT</version>
</plugin> -->
<!-- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-remote-resources-plugin</artifactId>
<version>1.0-alpha-6</version>
</plugin> -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.0-alpha-4</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-1</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<target>1.3</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
<!-- plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
</plugin -->
<!-- We want to package up license resources in the JARs produced
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-remote-resources-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>process</goal>
</goals>
<configuration>
<resourceBundles>
<resourceBundle>org.apache:apache-jar-resource-bundle:1.0</resourceBundle>
</resourceBundles>
</configuration>
</execution>
</executions>
</plugin>-->
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>.</directory>
<targetPath>META-INF</targetPath>
<includes>
<include>LICENSE*</include>
<include>NOTICE*</include>
</includes>
</resource>
</resources>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<configuration>
<templateDirectory>${user.dir}/src/site/</templateDirectory>
<template>maven-site.vm</template>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<reportSets>
<reportSet>
<reports>
<report>index</report>
<report>dependencies</report>
<report>project-team</report>
<report>mailing-list</report>
<report>issue-tracking</report>
<report>license</report>
<report>scm</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<!--plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<aggregate>true</aggregate>
</configuration>
</plugin-->
</plugins>
</reporting>
</project>

47
felix-settings.xml Normal file
View File

@ -0,0 +1,47 @@
<settings>
<profiles>
<profile>
<id>JPP</id>
<repositories>
<repository>
<id>internal</id>
<layout>jpp</layout>
<url>__JPP_URL_PLACEHOLDER__</url>
</repository>
<repository>
<id>external</id>
<layout>jpp</layout>
<url>__JAVADIR_PLACEHOLDER__</url>
</repository>
<repository>
<id>local</id>
<layout>jpp</layout>
<url>__MAVENREPO_DIR_PLACEHOLDER__</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>plugins-internal</id>
<name>plugins-internal</name>
<layout>jpp</layout>
<url>__JPP_URL_PLACEHOLDER__</url>
</pluginRepository>
<pluginRepository>
<id>plugins-external</id>
<name>plugins-external</name>
<layout>jpp</layout>
<url>__JAVADIR_PLACEHOLDER__</url>
</pluginRepository>
<pluginRepository>
<id>plugins-maven</id>
<name>plugins-maven</name>
<layout>jpp</layout>
<url>__MAVENDIR_PLUGIN_PLACEHOLDER__</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>JPP</activeProfile>
</activeProfiles>
</settings>

126
maven-plugin-bundle.spec Normal file
View File

@ -0,0 +1,126 @@
Name: maven-plugin-bundle
Version: 2.0.0
Release: 2%{?dist}
Summary: Maven Bundle Plugin
Group: Development/Tools
License: ASL 2.0
URL: http://felix.apache.org
Source0: http://www.apache.org/dist/felix/maven-bundle-plugin-2.0.0-project.tar.gz
Source1: http://repo1.maven.org/maven2/org/apache/felix/felix/1.0.2/felix-1.0.2.pom
Source2: felix-settings.xml
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: aqute-bndlib >= 0.0.363
BuildRequires: plexus-utils >= 1.4.5
BuildRequires: felix-osgi-obr
BuildRequires: kxml
BuildRequires: maven-shared-dependency-tree >= 1.1-3
BuildRequires: maven-wagon >= 1.0-0.2.b2
BuildRequires: maven2-plugin-compiler >= 2.0.8
BuildRequires: maven2-plugin-install >= 2.0.8
BuildRequires: maven2-plugin-jar >= 2.0.8
BuildRequires: maven2-plugin-javadoc >= 2.0.8
BuildRequires: maven2-plugin-plugin >= 2.0.8
BuildRequires: maven2-plugin-resources >= 2.0.8
BuildRequires: maven-surefire-maven-plugin >= 2.3
BuildRequires: maven-surefire-provider-junit >= 2.3
Requires: aqute-bndlib >= 0.0.363
Requires: plexus-utils >= 1.4.5
Requires: felix-osgi-obr
Requires: kxml
Requires: maven2
BuildArch: noarch
%description
Provides a maven plugin that supports creating an OSGi bundle
from the contents of the compilation classpath along with its
resources and dependencies. Plus a zillion other features.
%package javadoc
Group: Documentation
Summary: Javadoc for %{name}
%description javadoc
API documentation for %{name}.
%prep
%setup -q -n maven-bundle-plugin-%{version}
cp %{SOURCE2} settings.xml
mkdir -p .m2/repository/JPP/maven2/default_poms
cp %{SOURCE1} .m2/repository/JPP/maven2/default_poms/org.apache.felix-felix.pom
%build
sed -i -e \
"s|<url>__JPP_URL_PLACEHOLDER__</url>|<url>file://`pwd`/.m2/repository</url>|g" \
settings.xml
sed -i -e \
"s|<url>__JAVADIR_PLACEHOLDER__</url>|<url>file://`pwd`/external_repo</url>|g" \
settings.xml
sed -i -e \
"s|<url>__MAVENREPO_DIR_PLACEHOLDER__</url>|<url>file://`pwd`/.m2/repository</url>|g" \
settings.xml
sed -i -e \
"s|<url>__MAVENDIR_PLUGIN_PLACEHOLDER__</url>|<url>file:///usr/share/maven2/plugins</url>|g" \
settings.xml
sed -i -e \
"s|<url>__ECLIPSEDIR_PLUGIN_PLACEHOLDER__</url>|<url>file:///usr/share/eclipse/plugins</url>|g" \
settings.xml
export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository
mvn-jpp \
-e \
-s $(pwd)/settings.xml \
-Dmaven2.jpp.mode=true \
-Dmaven.repo.local=$MAVEN_REPO_LOCAL \
install javadoc:javadoc
%install
rm -rf %{buildroot}
# jars
install -d -m 0755 %{buildroot}%{_javadir}
install -m 644 target/maven-bundle-plugin-%{version}.jar \
$RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
ln -s %{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar
%add_to_maven_depmap org.apache.felix maven-bundle-plugin %{version} JPP %{name}
# poms
install -d -m 755 %{buildroot}%{_datadir}/maven2/poms
install -pm 644 pom.xml \
%{buildroot}%{_datadir}/maven2/poms/JPP-%{name}.pom
# javadoc
install -d -m 0755 %{buildroot}%{_javadocdir}/%{name}-%{version}
cp -pr target/site/api*/* %{buildroot}%{_javadocdir}/%{name}-%{version}/
ln -s %{name}-%{version} %{buildroot}%{_javadocdir}/%{name}
rm -rf target/site/api*
%post
%update_maven_depmap
%postun
%update_maven_depmap
%clean
%{__rm} -rf %{buildroot}
%files
%defattr(-,root,root,-)
%{_javadir}/*
%{_datadir}/maven2/poms/*
%{_mavendepmapfragdir}/*
%files javadoc
%defattr(-,root,root,-)
%{_javadocdir}/%{name}-%{version}
%{_javadocdir}/%{name}
%changelog
* Mon Sep 7 2009 Alexander Kurtakov <akurtako@redhat.com> 2.0.0-2
- Fix BR/Rs.
* Thu Sep 3 2009 Alexander Kurtakov <akurtako@redhat.com> 2.0.0-1
- Initial import.

View File

@ -0,0 +1 @@
de97b6f6b92b7ebef33000f4ed31ebb1 maven-bundle-plugin-2.0.0-project.tar.gz