aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula
diff options
context:
space:
mode:
authorAnders F Bjorklund2013-05-10 14:25:50 +0100
committerMike McQuaid2013-05-10 14:33:52 +0100
commitf44ae84e29da822f0edea31a5d48a507ce2b3479 (patch)
tree71e2789256db1b3693740aa660f778aa587f5180 /Library/Formula
parent2d9329f14eaac22dd0e2411e31295dd9acf6d1c5 (diff)
downloadhomebrew-f44ae84e29da822f0edea31a5d48a507ce2b3479.tar.bz2
rpm 5.4 (new formula)
Requires a patch to build with clang (no nested functions). The ltmain.sh was broken due to a faulty Mandriva libtoolize. Make sure that the OpenMP setting matches what beecrypt has. Also ensure that all "mandatory" features are enabled. Closes #12618. Closes #12635. Closes #19559. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Diffstat (limited to 'Library/Formula')
-rw-r--r--Library/Formula/rpm.rb67
1 files changed, 67 insertions, 0 deletions
diff --git a/Library/Formula/rpm.rb b/Library/Formula/rpm.rb
new file mode 100644
index 000000000..e98965f26
--- /dev/null
+++ b/Library/Formula/rpm.rb
@@ -0,0 +1,67 @@
+require 'formula'
+
+class RpmDownloadStrategy < CurlDownloadStrategy
+ attr_reader :tarball_name
+ def initialize name, package
+ super
+ package_name = @spec == :name ? @ref : name
+ @tarball_name="#{package_name}-#{package.version}.tar.gz"
+ end
+ def stage
+ safe_system "rpm2cpio.pl <#{@tarball_path} | cpio -vi #{@tarball_name}"
+ safe_system "/usr/bin/tar -xzf #{@tarball_name} && rm #{@tarball_name}"
+ chdir
+ end
+
+ def ext
+ ".src.rpm"
+ end
+end
+
+class Rpm < Formula
+ homepage 'http://www.rpm5.org/'
+ url 'http://rpm5.org/files/rpm/rpm-5.4/rpm-5.4.10-0.20120706.src.rpm',
+ :using => RpmDownloadStrategy, :name => 'rpm'
+ version '5.4.10'
+ sha1 'ce43b5871c4f884bea679f6c37d5cb9df7f2e520'
+
+ depends_on 'db'
+ depends_on 'libmagic'
+ depends_on 'popt'
+ depends_on 'beecrypt'
+ depends_on 'libtasn1'
+ depends_on 'neon'
+ depends_on 'gettext'
+ depends_on 'xz'
+ depends_on 'ossp-uuid'
+ depends_on 'pcre'
+ depends_on 'rpm2cpio' => :build
+ depends_on 'libtool' => :build
+
+ # nested functions are not std C
+ def patches
+ 'http://rpm5.org/cvs/patchset?cn=16840'
+ end
+
+ def install
+ args = %W[
+ --prefix=#{prefix}
+ --with-path-cfg=#{etc}/rpm
+ --disable-openmp
+ --disable-nls
+ --disable-dependency-tracking
+ --with-libtasn1
+ --with-neon
+ --with-uuid
+ --with-pcre
+ --with-lua
+ --with-syck
+ --without-apidocs
+ ]
+
+ system 'glibtoolize -if' # needs updated ltmain.sh
+ system "./configure", *args
+ system "make"
+ system "make install"
+ end
+end