]> Pileus Git - ~andy/sunrise/commitdiff
dev-util/eclim: New ebuild for bug 218776
authorEric Smith (gentooer) <eric225125@gmail.com>
Thu, 28 Jan 2010 01:36:44 +0000 (01:36 +0000)
committerEric Smith (gentooer) <eric225125@gmail.com>
Thu, 28 Jan 2010 01:36:44 +0000 (01:36 +0000)
svn path=/sunrise/; revision=9919

dev-util/eclim/ChangeLog [new file with mode: 0644]
dev-util/eclim/Manifest [new file with mode: 0644]
dev-util/eclim/eclim-1.5.4.ebuild [new file with mode: 0644]
dev-util/eclim/files/eclim-1.5.4_fix_build_gant.patch [new file with mode: 0644]
dev-util/eclim/metadata.xml [new file with mode: 0644]

diff --git a/dev-util/eclim/ChangeLog b/dev-util/eclim/ChangeLog
new file mode 100644 (file)
index 0000000..19b9517
--- /dev/null
@@ -0,0 +1,9 @@
+# ChangeLog for dev-util/eclim
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+  28 Jan 2010; Eric Smith (gentooer) <eric225125@gmail.com>
+  +eclim-1.5.4.ebuild, +files/eclim-1.5.4_fix_build_gant.patch,
+  +metadata.xml:
+  New ebuild for bug 218776
+
diff --git a/dev-util/eclim/Manifest b/dev-util/eclim/Manifest
new file mode 100644 (file)
index 0000000..93ed04e
--- /dev/null
@@ -0,0 +1,5 @@
+AUX eclim-1.5.4_fix_build_gant.patch 1725 RMD160 65587475a20f5820fb755250d24de12163593bfc SHA1 a8bb62b3d4c597bf1d730eb2c8c8b7564b9d9d17 SHA256 d3d547c404f888cfb0ae255f5e906e6dd35fe2b26037e50b6bc838ad86604966
+DIST eclim_1.5.4.tar.gz 17709936 RMD160 1fbcd5d07a83d0a0cce778f6a24591c5fc9de52f SHA1 0c2d2f02349aaf8007c65d37f95bdff2fae7c24e SHA256 7e9c920a6af5a770934006d01a221c68ba92ec2ba1acd589f398a1a9e63cb638
+EBUILD eclim-1.5.4.ebuild 2248 RMD160 94eb55e6a44453be48b9d3a4e31bd2463fc7cfb7 SHA1 948adb7a55db1d9ad79704aa7a5a54514d1bc3e1 SHA256 f198ed70ee6403da0840b469a2a6c1f0b7e6091dbd8f2afbd973c2e956e8f756
+MISC ChangeLog 285 RMD160 70ac1f046648dc8ee05a5b4624c2a433636079f1 SHA1 cca6918715749b7783aef85838cbbda96803c87a SHA256 be6bf43ca60349dff05643cd5d34dae8b5aef0aaf3fa4b929220809a8edf865c
+MISC metadata.xml 242 RMD160 80aa71ffe30e9b716835ac5f7e5a003a205715f9 SHA1 2e243a0aafcf5b40f127ec947dcc7de239c24e3d SHA256 f2e3319efa5e524d4c31180ae7cc3e87108ab182418bb5c590b80f3e4bdc7a65
diff --git a/dev-util/eclim/eclim-1.5.4.ebuild b/dev-util/eclim/eclim-1.5.4.ebuild
new file mode 100644 (file)
index 0000000..be225e1
--- /dev/null
@@ -0,0 +1,81 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="2"
+
+inherit eutils java-pkg-2 java-ant-2 multilib
+
+MY_P=${P/-/_}
+
+DESCRIPTION="An integration of Eclipse and Vim"
+HOMEPAGE="http://eclim.org/"
+SRC_URI="mirror://sourceforge/eclim/${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cdt +java php ruby"
+
+COMMON_DEPEND="dev-util/eclipse-sdk:3.5"
+DEPEND="${COMMON_DEPEND}
+       >=virtual/jdk-1.5"
+RDEPEND="${COMMON_DEPEND}
+       || ( app-editors/vim app-editors/gvim )
+       >=virtual/jre-1.5"
+
+S=${WORKDIR}/${MY_P}
+eclipse_home="${ROOT}/usr/$(get_libdir)/eclipse-3.5"
+
+pkg_setup() {
+       if use java ; then
+               mypkg_plugins="jdt,ant,maven"
+       fi
+       if use cdt ; then
+               mypkg_plugins="${mypkg_plugins},cdt"
+               ewarn "You have enabled the 'cdt' USE flag."
+               ewarn "The cdt plugin requires that you have the Eclipse CDT installed."
+       fi
+       if use php ; then
+               mypkg_plugins="${mypkg_plugins},wst,dltk,pdt"
+               ewarn "You have enabled the 'php' USE flag."
+               ewarn "The php plugin requires that you have the Eclipse PDT installed."
+       fi
+       if use ruby ; then
+               mypkg_plugins="${mypkg_plugins},dltk,dltkruby"
+               ewarn "You have enabled the 'ruby' USE flag."
+               ewarn "The ruby plugin requires that you have the Eclipse DLTK Ruby installed."
+       fi
+
+       # Remove leading comma
+       mypkg_plugins=${mypkg_plugins#,}
+
+       EANT_BUILD_TARGET="build"
+       EANT_EXTRA_ARGS="-Declipse.home=${eclipse_home} \
+               -Dplugins=${mypkg_plugins}"
+       EANT_EXTRA_ARGS_INSTALL="-Declipse.home=${D}${eclipse_home} \
+               -Dplugins=${mypkg_plugins} \
+               -Dvim.files=${D}/usr/share/vim/vimfiles"
+}
+
+src_prepare() {
+       # Fix a bug caused by incorrect version detection
+       sed -i "s/execute('git', 'describe')/'${PV}'/" \
+               "${S}"/src/ant/build.gant || die "sed failed"
+
+       # Fix up the installation process
+       epatch "${FILESDIR}"/${P}_fix_build_gant.patch
+}
+
+src_install() {
+       eant ${EANT_EXTRA_ARGS_INSTALL} deploy
+
+       # Fix path to eclim script
+       sed -i "s:${D}::" "${D}"/usr/share/vim/vimfiles/eclim/plugin/eclim.vim \
+               || die "sed failed"
+
+       dosym "${eclipse_home}"/plugins/org.${MY_P}/bin/eclimd \
+               /usr/bin/eclimd || die "symlink failed"
+       dosym "${eclipse_home}"/plugins/org.${MY_P}/bin/eclim \
+               "${eclipse_home}"/eclim || die "symlink failed"
+}
diff --git a/dev-util/eclim/files/eclim-1.5.4_fix_build_gant.patch b/dev-util/eclim/files/eclim-1.5.4_fix_build_gant.patch
new file mode 100644 (file)
index 0000000..250da40
--- /dev/null
@@ -0,0 +1,44 @@
+--- src/ant/build.gant 2010-01-27 17:39:20.612426014 +0100
++++ src/ant/build.gant.new     2010-01-27 17:37:33.816426014 +0100
+@@ -210,26 +210,6 @@
+   mkdir(dir: '${eclim.plugins}')
+-  // if the eclim version has changed, stop eclimd before deploying
+-  pluginsDir = new File(binding.getVariable('eclim.plugins'))
+-  existing = null
+-  pluginsDir.eachDirMatch(~/org\.eclim_.*/){
+-    file -> existing = file
+-  }
+-
+-  if (existing != null && existing.getName() != "org.eclim_${version}"){
+-    echo('###\n# New eclim version, shutting down old version...\n###')
+-    execute("${existing.path}/bin/eclim", '-command shutdown', failonerror=false)
+-    execute("${existing.path}/bin/eclim",
+-        '-f ${basedir}/src/test/resources/eclimrc.test -command shutdown',
+-        failonerror=false)
+-  }
+-
+-  delete(includeemptydirs: true){
+-    fileset(dir: '${eclim.plugins}', includes: 'org.eclim*/**/*')
+-    dirset(dir: '${eclim.plugins}', includes: 'org.eclim*')
+-  }
+-
+   copy(todir: '${eclim.plugins}'){
+     fileset(dir: '${build.plugins}', includes: '**/*')
+   }
+@@ -242,14 +222,6 @@
+   }else{
+     chmod(dir: '${eclim.plugins}/org.eclim_${eclim.version}/bin',
+         includes: '**/*', excludes: '*.sed', perm: 'ugo+x')
+-    // java symlink support sucks, especially if the link is broken
+-    exec(executable: 'rm'){
+-      arg(line: '${eclipse.home}/eclim ${eclipse.home}/eclimd')
+-    }
+-    symlink(link: '${eclipse.home}/eclim',
+-        resource: '${eclim.plugins}/org.eclim_${eclim.version}/bin/eclim')
+-    symlink(link: '${eclipse.home}/eclimd',
+-        resource: '${eclim.plugins}/org.eclim_${eclim.version}/bin/eclimd')
+   }
+   replace(file: '${eclim.plugins}/org.eclim_${eclim.version}/plugin.properties',
diff --git a/dev-util/eclim/metadata.xml b/dev-util/eclim/metadata.xml
new file mode 100644 (file)
index 0000000..9c8551a
--- /dev/null
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>maintainer-wanted</herd>
+<use>
+       <flag name='cdt'>Enables C/C++ development support</flag>
+</use>
+</pkgmetadata>