b5b3bd2468
Closes Homebrew/homebrew#22930. Signed-off-by: Jack Nagel <jacknagel@gmail.com>
90 lines
2.2 KiB
Ruby
90 lines
2.2 KiB
Ruby
require 'formula'
|
|
|
|
class RpmDownloadStrategy < CurlDownloadStrategy
|
|
def initialize name, resource
|
|
super
|
|
@tarball_name = "#{name}-#{resource.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.11-0.20130708.src.rpm',
|
|
:using => RpmDownloadStrategy
|
|
version '5.4.11'
|
|
sha1 'a40328cf49f43d33746c503a390e3955f5bd3680'
|
|
|
|
depends_on 'berkeley-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
|
|
|
|
def patches
|
|
{ :p0 => DATA } if MacOS.version >= :mountain_lion
|
|
end
|
|
|
|
def install
|
|
args = %W[
|
|
--prefix=#{prefix}
|
|
--localstatedir=#{var}
|
|
--with-path-cfg=#{etc}/rpm
|
|
--with-path-magic=#{share}/misc/magic
|
|
--with-extra-path-macros=#{lib}/rpm/macros.*
|
|
--disable-openmp
|
|
--disable-nls
|
|
--disable-dependency-tracking
|
|
--with-db=external
|
|
--with-file=external
|
|
--with-popt=external
|
|
--with-beecrypt=external
|
|
--with-libtasn1=external
|
|
--with-neon=external
|
|
--with-uuid=external
|
|
--with-pcre=external
|
|
--with-lua=internal
|
|
--with-syck=internal
|
|
--without-apidocs
|
|
varprefix=#{var}
|
|
]
|
|
|
|
system "./configure", *args
|
|
system "make"
|
|
system "make install"
|
|
end
|
|
end
|
|
|
|
__END__
|
|
diff -u -rrpm-5_4_11-release -rrpm-5_4
|
|
--- system.h 26 Jul 2012 12:56:08 -0000 2.129.2.5
|
|
+++ system.h 9 Aug 2013 10:30:22 -0000 2.129.2.8
|
|
@@ -323,7 +323,13 @@
|
|
#endif
|
|
|
|
#if defined(HAVE_GRP_H)
|
|
+#define uuid_t unistd_uuid_t /* XXX Mac OS X dares to be different. */
|
|
+#define uuid_create unistd_uuid_create
|
|
+#define uuid_compare unistd_uuid_compare
|
|
#include <grp.h>
|
|
+#undef unistd_uuid_t /* XXX Mac OS X dares to be different. */
|
|
+#undef unistd_uuid_create
|
|
+#undef unistd_uuid_compare
|
|
#endif
|
|
|
|
#if defined(HAVE_LIMITS_H)
|