[Mono-dev] Updates ikvm.spec: use the GAC
Dirk O. Siebnich
dok at dok-net.net
Sun Apr 16 06:45:38 EDT 2006
Hi!
I have extended the RPM spec file for IKVM to install the two assemblies
that the pkg-config file also references into the GAC. Without the GAC,
running IKVM-based applications always required me to copy the contents
of /usr/lib/ikvm/.
I have stuck to ikvm 0.22 as the prebuilt binary packages still use that
version as well.
Please consider using the new spec file for the official RPM packages.
-Dirk
-------------- next part --------------
# RPM specfile for ikvm module
# Generated Fri Dec 16 03:45:22 2005 GMT by Ximian build system
# $Id: bb_do,v 1.263 2004/11/11 20:32:39 v_thunder Exp $
# from
%define nam ikvm
%define ver 0.22
%define licensedir %{_datadir}/licenses/%{nam}-%{ver}
Name: ikvm
Version: 0.22
Release: 0.novell
Vendor: Novell, Inc.
Distribution: Novell Packages for SuSE Linux 9.3 / i586
Copyright: BSD
BuildRoot: /var/tmp/%{nam}-%{ver}-root
Docdir: /usr/share/doc/packages
BuildArch: noarch
URL: http://www.ikvm.net
Epoch: 1
Source0: ikvm-0.22.tar.gz
Summary: A JVM based on the Mono runtime
Group: Development/Tools
Requires: mono-ikvm
Provides: novell-ikvm = %{?epoch:%{epoch}:}%{version}-%{?ximrev:%{ximrev}}%{!?ximrev:%{release}}
%description
This package provides IKVM.NET, an open source Java
compatibility layer for Mono, which includes a Virtual
Machine, a bytecode compiler, and various class libraries
for Java, as well as tools for Java and Mono
interoperability.
%files
%defattr(-, root, root)
%doc LICENSE
/usr/bin/*
/usr/lib/ikvm
/usr/lib/mono/gac
/usr/lib/pkgconfig/ikvm.pc
# $RPM_COMMAND is an environment variable used by the Ximian build
# system to control the build process with finer granularity than RPM
# normally allows. This specfile will function as expected by RPM if
# $RPM_COMMAND is unset. If you are not the Ximian build system,
# feel free to ignore it.
%prep
case "${RPM_COMMAND:-all}" in
dist)
%setup -q -D -n ikvm-0.22
;;
all)
%setup -q -n ikvm-0.22
;;
esac
%build
MAKE=${MAKE:-make}
RPM_COMMAND=${RPM_COMMAND:-all}
DESTDIR=${DESTDIR:-"$RPM_BUILD_ROOT"}
ARCH=%{_target_platform}
export MAKE RPM_COMMAND DESTDIR ARCH
case "$RPM_COMMAND" in
prepare|all)
./configure --prefix=/usr --libdir=/usr/lib --sysconfdir=/etc --mandir=/usr/share/man --infodir=/usr/share/info --localstatedir=/var
;;
esac
case "$RPM_COMMAND" in
clean|all)
if [ "/" != "$DESTDIR" ]; then
rm -rf "$DESTDIR"
fi
;;
esac
case "$RPM_COMMAND" in
build|all)
${MAKE}
;;
esac
%install
MAKE=${MAKE:-make}
DESTDIR=${DESTDIR:-"$RPM_BUILD_ROOT"}
# export DESTDIR
case "${RPM_COMMAND:-all}" in
install|all)
${MAKE} install prefix=${DESTDIR}/usr libdir=${DESTDIR}/usr/lib sysconfdir=${DESTDIR}/etc mandir=${DESTDIR}/usr/share/man infodir=${DESTDIR}/usr/share/info localstatedir=${DESTDIR}/var
# workaround until ikvm makefiles provide GAC installation
gacutil /i ${DESTDIR}/usr/lib/ikvm/IKVM.Runtime.dll /f /gacdir ${DESTDIR}/usr/lib
gacutil /i ${DESTDIR}/usr/lib/ikvm/IKVM.GNU.Classpath.dll /f /gacdir ${DESTDIR}/usr/lib
;;
esac
%clean
DESTDIR=${DESTDIR:-"$RPM_BUILD_ROOT"}
export DESTDIR
case "${RPM_COMMAND:-all}" in
clean|all)
if [ "/" != "$DESTDIR" ]; then
rm -rf "$DESTDIR"
fi
;;
esac
%changelog
* Fri Dec 16 2005 Novell, Inc.
- Version: 1:0.22-0.novell
- Summary: New build.
- New automated build.
More information about the Mono-devel-list
mailing list