From 8c8d1ae3d34bb6b27cbac308c8803aaa4da34954 Mon Sep 17 00:00:00 2001 From: Pascal Belloncle Date: Fri, 10 Jun 2011 16:37:30 -0700 Subject: [PATCH] osgi build --- .gitignore | 1 + .rvmrc | 2 ++ Buildfile | 48 +++++++++++++++++++++++++++++++++++++++ META-INF/MANIFEST.MF | 9 ++++++++ META-INF/web-fragment.xml | 17 ++++++++++++++ build.properties | 6 +++++ dependencies.rb | 1 + repositories.rb | 6 +++++ 8 files changed, 90 insertions(+) create mode 100644 .rvmrc create mode 100644 Buildfile create mode 100644 META-INF/MANIFEST.MF create mode 100644 META-INF/web-fragment.xml create mode 100644 build.properties create mode 100644 dependencies.rb create mode 100644 repositories.rb diff --git a/.gitignore b/.gitignore index 5f09485ed..257f14acc 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ WebSite *.xcodeproj/*.perspectivev3 xcuserdata/ !*.xcodeproj/project.pbxproj +target diff --git a/.rvmrc b/.rvmrc new file mode 100644 index 000000000..87b405130 --- /dev/null +++ b/.rvmrc @@ -0,0 +1,2 @@ +rvm_install_on_use_flag=1 +rvm jruby-head@buildr diff --git a/Buildfile b/Buildfile new file mode 100644 index 000000000..4d166105d --- /dev/null +++ b/Buildfile @@ -0,0 +1,48 @@ +require "buildr4osgi" + +require File.join(File.dirname(__FILE__), "repositories.rb") +require File.join(File.dirname(__FILE__), "dependencies.rb") + +# Keep this structure to allow the build system to update version numbers. +VERSION_NUMBER = "1.0.0.1-SNAPSHOT" + + +# Shorten expressions +def jars(*args) + args.collect {|arg| project(arg).package(:jar)} +end + +desc "Cappuccino Distribution" +define "cappuccino" do + project.version = VERSION_NUMBER + project.group = "com.intalio.cloud.cappuccino" + + file(_("target/Frameworks")).enhance do + mkdir_p "target/patch" + end + + file(_("target/Frameworks")).enhance do + mkdir_p "target/Frameworks/Debug" + system <<-BASH + export BUILD_PATH="target/Build" + jake debug release + BASH + + cp_r "target/Build/Release/AppKit", "target/Frameworks/" + cp_r "target/Build/Release/Foundation", "target/Frameworks/" + cp_r "target/Build/Release/Objective-J", "target/Frameworks/" + cp_r "target/Build/Debug/AppKit", "target/Frameworks/Debug/" + cp_r "target/Build/Debug/Foundation", "target/Frameworks/Debug/" + cp_r "target/Build/Debug/Objective-J", "target/Frameworks/Debug/" + end + + # file(_("target/Build")).enhance do + # end + package(:bundle).include _("target/patch"), :as => "content/patch" + package(:bundle).include _("target/Frameworks"), :as => "content/Frameworks" + package(:bundle).include _("build.properties"), :as => "build.properties" + package(:bundle).meta_inf << file('META-INF/web-fragment.xml') + +end + + diff --git a/META-INF/MANIFEST.MF b/META-INF/MANIFEST.MF new file mode 100644 index 000000000..8597ecf8c --- /dev/null +++ b/META-INF/MANIFEST.MF @@ -0,0 +1,9 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: cappuccinofrag +Bundle-SymbolicName: com.intalio.cloud.cappuccino +Fragment-Host: com.intalio.cloud.carbon +Jetty-WarFragmentFolderPath: /content +Jetty-WarPatchFragmentFolderPath: /patch +Bundle-Version: 1.0.0.qualifier +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 diff --git a/META-INF/web-fragment.xml b/META-INF/web-fragment.xml new file mode 100644 index 000000000..07b5a6795 --- /dev/null +++ b/META-INF/web-fragment.xml @@ -0,0 +1,17 @@ + + + + cappuccino-fragment + + + + cappuccino-fragment + /carbon + + + \ No newline at end of file diff --git a/build.properties b/build.properties new file mode 100644 index 000000000..60c49031b --- /dev/null +++ b/build.properties @@ -0,0 +1,6 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + content/,\ + patch/,\ + . diff --git a/dependencies.rb b/dependencies.rb new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/dependencies.rb @@ -0,0 +1 @@ + diff --git a/repositories.rb b/repositories.rb new file mode 100644 index 000000000..921c48188 --- /dev/null +++ b/repositories.rb @@ -0,0 +1,6 @@ +repositories.remote = ["http://release.intalio.com/m2repo"] + #, "http://www.intalio.org/public/maven2", "http://dist.codehaus.org/mule/dependencies/maven2", "http://repository.jboss.com/maven2", "http://repo1.maven.org/maven2", "http://mirrors.ibiblio.org/pub/mirrors/maven2" ] + +repositories.release_to[:username] ||= "release" +repositories.release_to[:url] ||= "sftp://release.intalio.com/home/release/m2repo" +repositories.release_to[:permissions] ||= 0664