From 0fbdd725579723d0b97ef55fb31ac061ff4f784d Mon Sep 17 00:00:00 2001
From: Gaetan Boismal <gaetan.boismal@forgerock.com>
Date: Thu, 12 Mar 2015 16:41:30 +0000
Subject: [PATCH] OPENDJ-1772: Add package-svr4 profile to server pom
---
opendj-server-legacy/src/svr4/OpenDJ/layout.xml | 100 +++++++-------------
opendj-server-legacy/pom.xml | 30 ++++++
opendj-server-legacy/build.xml | 1
opendj-server-legacy/build-svr4.xml | 113 ++++++++++------------
4 files changed, 116 insertions(+), 128 deletions(-)
diff --git a/opendj-server-legacy/build-svr4.xml b/opendj-server-legacy/build-svr4.xml
index ced7124..3133614 100644
--- a/opendj-server-legacy/build-svr4.xml
+++ b/opendj-server-legacy/build-svr4.xml
@@ -22,7 +22,7 @@
!
!
! Copyright 2006-2009 Sun Microsystems, Inc.
- ! Portions Copyright 2011-2013 ForgeRock AS
+ ! Portions Copyright 2011-2015 ForgeRock AS
! -->
<project name="SVR4 Packaging" basedir="." default="package-svr4">
@@ -33,12 +33,12 @@
<!-- By default will build OpenDJ package -->
- <property name="product" value="${SHORT_NAME}" />
+ <property name="product" value="${shortProductName}" />
<!-- General properties -->
<property name="svr4.src.dir" location="src/svr4/${product}" />
- <property name="build.dir" location="build" />
+ <property name="build.dir" location="target" />
<property name="package.dir" location="${build.dir}/package" />
<property name="svr4.dir" location="${build.dir}/package/svr4" />
@@ -66,9 +66,9 @@
<!-- Check if OS is Solaris -->
<target name="checkos">
<condition property="isSunOS">
- <os name="SunOS"/>
+ <os name="SunOS" />
</condition>
- </target>
+ </target>
<target name="wrongos" unless="isSunOS">
<echo message="OS is ${os.name}. SVR4 package can only be built on a SunOS machine" />
@@ -77,15 +77,14 @@
<!-- Construct SVR4 package -->
<target name="svr4" depends="checkos,wrongos,cleansvr4,pkgversion,layout,metadata,pkgmk,zipsvr4" if="isSunOS"
- description="Construct ${svr4.name} package for product ${product}.">
+ description="Construct ${svr4.name} package for product ${product}.">
<echo message="Package ${svr4.name} for product ${product} built in ${svr4.dir}" />
</target>
<!-- Cleanup target -->
- <target name="cleansvr4" if="isSunOS"
- description="Cleanup SVR4 files.">
- <delete dir="${svr4.build.dir}" />
- <delete dir="${svr4.dir}/${svr4.name}" />
+ <target name="cleansvr4" if="isSunOS" description="Cleanup SVR4 files.">
+ <delete dir="${svr4.build.dir}" />
+ <delete dir="${svr4.dir}/${svr4.name}" />
</target>
<!-- Construct metadata data -->
@@ -94,14 +93,14 @@
</target>
<!-- Construct pkginfo file -->
- <target name="pkginfo" if="isSunOS" depends="pkgversion"
- description="Create pkginfo file based on ${svr4.src.dir}/info.properties" >
- <echo message="Building pkginfo for ${svr4.name}" />
- <tstamp>
- <format property="rev" pattern="yyyy.MM.dd"/>
- </tstamp>
- <mkdir dir="${svr4.meta.dir}"/>
- <echo file="${svr4.meta.dir}/pkginfo">
+ <target name="pkginfo" if="isSunOS" depends="pkgversion"
+ description="Create pkginfo file based on ${svr4.src.dir}/info.properties">
+ <echo message="Building pkginfo for ${svr4.name}" />
+ <tstamp>
+ <format property="rev" pattern="yyyy.MM.dd" />
+ </tstamp>
+ <mkdir dir="${svr4.meta.dir}" />
+ <echo file="${svr4.meta.dir}/pkginfo">
PKG=${svr4.name}
NAME=${svr4.fullname}
ARCH=${svr4.arch}
@@ -117,71 +116,61 @@
BASEDIR=${svr4.basedir}
CLASSES=none
HOTLINE=Please contact your local service provider
-EMAIL=
- </echo>
+EMAIL=opendj@forgerock.org
+ </echo>
</target>
<!-- Construct prototype file -->
- <target name="prototype" depends="layout" if="isSunOS"
- description="Create prototype file based on ${svr4.layout.dir}" >
- <echo message="Building prototype for ${svr4.name} pkg" />
- <exec executable="pkgproto" dir="${svr4.layout.dir}" output="${svr4.meta.dir}/prototype">
- <arg value="."/>
- </exec>
- <exec executable="groups" dir="${svr4.layout.dir}" outputproperty="user.group" />
- <echo file="${svr4.meta.dir}/prototype" append="true">i pkginfo
-i copyright</echo>
- <replaceregexp file="${svr4.meta.dir}/prototype"
- match=" ${user.name} "
- replace=" root "
- byline="true"/>
- <replaceregexp file="${svr4.meta.dir}/prototype"
- match=" ${user.group}"
- replace=" sys"
- byline="true"/>
+ <target name="prototype" depends="layout" if="isSunOS" description="Create prototype file based on ${svr4.layout.dir}">
+ <echo message="Building prototype for ${svr4.name} pkg" />
+ <exec executable="pkgproto" dir="${svr4.layout.dir}" output="${svr4.meta.dir}/prototype">
+ <arg value="." />
+ </exec>
+ <exec executable="groups" dir="${svr4.layout.dir}" outputproperty="user.group" />
+ <echo file="${svr4.meta.dir}/prototype" append="true">i pkginfo
+i copyright
+ </echo>
+ <replaceregexp file="${svr4.meta.dir}/prototype" match=" ${user.name} " replace=" root " byline="true" />
+ <replaceregexp file="${svr4.meta.dir}/prototype" match=" ${user.group}" replace=" sys" byline="true" />
</target>
<!-- Construct copyright file -->
- <target name="copyright" if="isSunOS"
- description="Create copyright file based on ${svr4.src.dir}/copyright" >
- <echo message="Building copyright for ${svr4.name} pkg" />
- <copy file="${svr4.src.dir}/copyright" todir="${svr4.meta.dir}"/>
+ <target name="copyright" if="isSunOS" description="Create copyright file based on ${svr4.src.dir}/copyright">
+ <echo message="Building copyright for ${svr4.name} pkg" />
+ <copy file="${svr4.src.dir}/copyright" todir="${svr4.meta.dir}" />
</target>
<!-- Construct depend file -->
<target name="depend.init" if="isSunOS">
- <available property="present" file="${svr4.src.dir}/depend"/>
+ <available property="present" file="${svr4.src.dir}/depend" />
</target>
- <target name="depend" depends="depend.init" if="present"
- description="Create depend file based on ${svr4.src.dir}/depend" >
- <echo message="Building depend for ${svr4.name} pkg" />
- <copy file="${svr4.src.dir}/depend" todir="${svr4.meta.dir}"/>
+ <target name="depend" depends="depend.init" if="present" description="Create depend file based on ${svr4.src.dir}/depend">
+ <echo message="Building depend for ${svr4.name} pkg" />
+ <copy file="${svr4.src.dir}/depend" todir="${svr4.meta.dir}" />
</target>
<!-- Make package -->
- <target name="pkgmk" if="isSunOS"
- description="Build ${svr4.name} package" >
- <echo message="Building ${svr4.name} pkg" />
- <echo message="Executing pkgmk -o -d ${svr4.dir} -r ${svr4.layout.dir} -f ${svr4.meta.dir}/prototype in ${svr4.layout.dir}" />
- <exec executable="pkgmk" dir="${svr4.layout.dir}">
- <arg value="-o"/>
- <arg value="-d"/>
- <arg value="${svr4.dir}"/>
- <arg value="-r"/>
- <arg value="${svr4.layout.dir}"/>
- <arg value="-f"/>
- <arg value="${svr4.meta.dir}/prototype"/>
- </exec>
+ <target name="pkgmk" if="isSunOS" description="Build ${svr4.name} package">
+ <echo message="Building ${svr4.name} pkg" />
+ <echo message="Executing pkgmk -o -d ${svr4.dir} -r ${svr4.layout.dir} -f ${svr4.meta.dir}/prototype in ${svr4.layout.dir}" />
+ <exec executable="pkgmk" dir="${svr4.layout.dir}">
+ <arg value="-o" />
+ <arg value="-d" />
+ <arg value="${svr4.dir}" />
+ <arg value="-r" />
+ <arg value="${svr4.layout.dir}" />
+ <arg value="-f" />
+ <arg value="${svr4.meta.dir}/prototype" />
+ </exec>
</target>
<!-- ZIP package -->
- <target name="zipsvr4" if="isSunOS"
- description="ZIP ${svr4.name} package" >
+ <target name="zipsvr4" if="isSunOS" description="ZIP ${svr4.name} package">
<echo message="Zipping ${svr4.name} pkg" />
<zip destfile="${svr4.dir}/${svr4.name}.zip">
- <zipfileset dir="${svr4.dir}" includes="${svr4.name}/**/*"/>
+ <zipfileset dir="${svr4.dir}" includes="${svr4.name}/**/*" />
</zip>
</target>
diff --git a/opendj-server-legacy/build.xml b/opendj-server-legacy/build.xml
index 832d608..a1965e4 100644
--- a/opendj-server-legacy/build.xml
+++ b/opendj-server-legacy/build.xml
@@ -2944,6 +2944,5 @@
<ivy:cleancache/>
</target>
- <import file="build-svr4.xml"/>
<import file="build-pkg.xml"/>
</project>
diff --git a/opendj-server-legacy/pom.xml b/opendj-server-legacy/pom.xml
index d9cdb0e..0fd32d8 100644
--- a/opendj-server-legacy/pom.xml
+++ b/opendj-server-legacy/pom.xml
@@ -1868,6 +1868,36 @@
</plugins>
</build>
</profile>
+
+ <!-- Build the solaris package -->
+ <profile>
+ <id>package-svr4</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>generate-svr4-package</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <target>
+ <ant antfile="${basedir}/build-svr4.xml">
+ <target name="svr4" />
+ </ant>
+ </target>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
</profiles>
</project>
diff --git a/opendj-server-legacy/src/svr4/OpenDJ/layout.xml b/opendj-server-legacy/src/svr4/OpenDJ/layout.xml
index bca2fe2..a70479b 100644
--- a/opendj-server-legacy/src/svr4/OpenDJ/layout.xml
+++ b/opendj-server-legacy/src/svr4/OpenDJ/layout.xml
@@ -22,7 +22,7 @@
!
!
! Copyright 2006-2009 Sun Microsystems, Inc.
- ! Portions Copyright 2010-2013 ForgeRock AS.
+ ! Portions Copyright 2010-2015 ForgeRock AS.
! -->
<project name="OpenDJ SVR4 layout" basedir=".">
@@ -32,82 +32,52 @@
</description>
- <target name="pkgversion"
- description="Set svr4.version property" >
- <!-- Construct the version number string -->
- <taskdef name="getversionnumber"
- classname="org.opends.build.tools.CreateVersionString">
- <classpath>
- <fileset dir="${build.dir}/build-tools">
- <include name="*.jar" />
- </fileset>
- </classpath>
- </taskdef>
-
- <getversionnumber property="svr4.fullversion" />
- <property name="svr4.version"
- value="${MAJOR_VERSION}.${MINOR_VERSION}.${POINT_VERSION}" />
+ <target name="pkgversion" description="Set svr4.version property">
+ <property name="svr4.version"
+ value="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}" />
+ <property name="svr4.fullversion" value="${svr4.version}-${parsedVersion.qualifier}-${buildRevision}" />
</target>
- <property name="resource.dir" location="src/resource" />
+ <property name="resource.dir" location="resource" />
<!-- Construct layout -->
- <target name="layout" if="isSunOS"
- description="Create layout based on zip layout" >
- <!-- Get the revision number of the current Subversion workspace -->
- <taskdef name="getsvnrevision"
- classname="org.opends.build.tools.GetSubversionRevision">
- <classpath>
- <fileset dir="${build.dir}/build-tools">
- <include name="*.jar" />
- </fileset>
- <fileset dir="${svnkit.dir}">
- <include name="*.jar" />
- </fileset>
- </classpath>
- </taskdef>
+ <target name="layout" if="isSunOS" description="Create layout based on zip layout">
+ <property name="zip.dir" location="${package.dir}/${lowerCaseProductName}" />
- <getsvnrevision property="REVISION_NUMBER" />
+ <echo message="Building layout for ${svr4.name} pkg based on ${zip.dir}" />
+ <!-- copy ZIP layout. Use exec instead of copy task to preserve file permissions -->
+ <mkdir dir="${svr4.layout.dir}" />
+ <exec executable="cp">
+ <arg value="-R" />
+ <arg value="${zip.dir}" />
+ <arg value="${svr4.layout.pkg.dir}" />
+ </exec>
+ <chmod dir="${svr4.layout.pkg.dir}" perm="755" />
- <property name="zip.dir"
- location="${package.dir}/${product}-${svr4.fullversion}" />
+ <!-- Remove Windows specific files -->
+ <delete includeemptydirs="true">
+ <fileset dir="${svr4.layout.pkg.dir}" includes="**/*.exe" />
+ <fileset dir="${svr4.layout.pkg.dir}" includes="**/*.bat" />
+ <fileset dir="${svr4.layout.pkg.dir}" includes="**/bat/" />
+ </delete>
- <echo
- message="Building layout for ${svr4.name} pkg based on ${zip.dir}" />
- <!-- copy ZIP layout.
- Use exec instead of copy task to preserve file permissions -->
- <mkdir dir="${svr4.layout.dir}"/>
- <exec executable="cp">
- <arg value="-R"/>
- <arg value="${zip.dir}"/>
- <arg value="${svr4.layout.pkg.dir}"/>
- </exec>
- <chmod dir="${svr4.layout.pkg.dir}" perm="755"/>
- <!-- Remove Windows specific files -->
- <delete includeemptydirs="true">
- <fileset dir="${svr4.layout.pkg.dir}" includes="**/*.exe"/>
- <fileset dir="${svr4.layout.pkg.dir}" includes="**/*.bat"/>
- <fileset dir="${svr4.layout.pkg.dir}" includes="**/bat/"/>
- </delete>
- <!-- Remove MacOS specific files -->
- <delete includeemptydirs="true">
- <fileset dir="${svr4.layout.pkg.dir}" includes="**/*.app/" />
- </delete>
- <!-- Remove uninstall file -->
- <delete file="${svr4.layout.pkg.dir}/uninstall" />
+ <!-- Remove MacOS specific files -->
+ <delete includeemptydirs="true">
+ <fileset dir="${svr4.layout.pkg.dir}" includes="**/*.app/" />
+ </delete>
+
<!-- Add svc-opendj.sh wrapper -->
- <copy file="${svr4.src.dir}/_svc-opendj.sh"
- tofile="${svr4.layout.pkg.dir}/lib/_svc-opendj.sh" />
+ <copy file="${svr4.src.dir}/_svc-opendj.sh" tofile="${svr4.layout.pkg.dir}/lib/_svc-opendj.sh" />
<chmod file="${svr4.layout.pkg.dir}/lib/_svc-opendj.sh" perm="755" />
+
<!-- Add the SMF Manifest for OpenDJ in a resources directory -->
- <mkdir dir="${svr4.layout.pkg.dir}/resources"/>
- <copy file="${svr4.src.dir}/opendj-manifest.xml"
- tofile="${svr4.layout.pkg.dir}/resources/opendj-manifest.xml" />
- <chmod file="${svr4.layout.pkg.dir}/resources/opendj-manifest.xml"
- perm="644" />
+ <mkdir dir="${svr4.layout.pkg.dir}/resources" />
+ <copy file="${svr4.src.dir}/opendj-manifest.xml" tofile="${svr4.layout.pkg.dir}/resources/opendj-manifest.xml" />
+ <chmod file="${svr4.layout.pkg.dir}/resources/opendj-manifest.xml" perm="644" />
+
<!-- Add man pages -->
<copy todir="${svr4.layout.pkg.dir}/man">
- <fileset dir="${resource.dir}/man"/>
+ <fileset dir="${resource.dir}/man" />
</copy>
</target>
--
Gitblit v1.10.0