Merge
authorRichard W.M. Jones <rjones@redhat.com>
Thu, 11 Sep 2008 12:53:34 +0000 (13:53 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Thu, 11 Sep 2008 12:53:34 +0000 (13:53 +0100)
fontconfig/mingw-fontconfig.spec
gnutls/mingw-gnutls.spec
jasper/mingw-jasper.spec
libgcrypt/mingw-libgcrypt.spec
smock/README [new file with mode: 0644]
smock/smock.httpd.conf [new file with mode: 0644]
smock/smock.mock.cfg [new file with mode: 0644]
smock/smock.sh [new file with mode: 0755]

index 02fccb9..350c458 100644 (file)
@@ -6,7 +6,7 @@
 
 Name:           mingw-fontconfig
 Version:        2.6.0
-Release:        2%{?dist}
+Release:        3%{?dist}
 Summary:        MinGW Windows Fontconfig library
 
 License:        MIT
@@ -22,6 +22,7 @@ BuildRequires:  mingw-gcc
 BuildRequires:  mingw-binutils
 BuildRequires:  mingw-freetype
 BuildRequires:  mingw-libxml2
+BuildRequires:  pkgconfig
 
 %description
 MinGW Windows Fontconfig library.
@@ -31,6 +32,7 @@ MinGW Windows Fontconfig library.
 %setup -q -n fontconfig-%{version}
 
 %build
+PATH="%{_mingw_bindir}:$PATH" \
 %{_mingw_configure} --with-arch=i686
 make
 
@@ -71,6 +73,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_mingw_datadir}/doc/fontconfig
 
 %changelog
+* Thu Sep 11 2008 Daniel P. Berrange <berrange@redhat.com> - 2.6.0-3
+- Add mingw_bindir to $PATH for freetype-config script
+
 * Wed Sep 10 2008 Richard W.M. Jones <rjones@redhat.com> - 2.6.0-2
 - Remove static library.
 - +BR mingw-libxml2.
index b478cdb..74544c8 100644 (file)
@@ -6,7 +6,7 @@
 
 Name:           mingw-gnutls
 Version:        2.4.1
-Release:        6%{?dist}
+Release:        7%{?dist}
 Summary:        MinGW Windows GnuTLS TLS/SSL encryption library
 
 License:        LGPLv2+
@@ -27,7 +27,7 @@ BuildRequires:  mingw-libgcrypt
 BuildRequires:  mingw-iconv
 BuildRequires:  mingw-gettext
 BuildRequires:  mingw-zlib
-
+BuildRequires:  autoconf automake libtool
 
 %description
 MinGW Windows GnuTLS TLS/SSL encryption library.
@@ -40,6 +40,7 @@ MinGW Windows GnuTLS TLS/SSL encryption library.
 
 %build
 autoreconf
+PATH="%{_mingw_bindir}:$PATH" \
 %{_mingw_configure} --with-included-libtasn1 --disable-cxx
 make
 
@@ -99,6 +100,9 @@ rm -rf $RPM_BUILD_ROOT
 
 
 %changelog
+* Thu Sep 11 2008 Daniel P. Berrange <berrange@redhat.com> - 2.4.1-7
+- Add BR on autoconf, automake and libtool
+
 * Wed Sep 10 2008 Richard W.M. Jones <rjones@redhat.com> - 2.4.1-6
 - Need to run autoreconf after patching src/Makefile.am.
 - Remove static libs.
index 30e67b3..ba8ca38 100644 (file)
@@ -6,7 +6,7 @@
 
 Name:           mingw-jasper
 Version:        1.900.1
-Release:        2%{?dist}
+Release:        3%{?dist}
 Summary:        MinGW Windows Jasper library
 
 License:        JasPer
@@ -24,6 +24,7 @@ BuildRequires:  mingw-filesystem >= 23
 BuildRequires:  mingw-gcc
 BuildRequires:  mingw-binutils
 BuildRequires:  mingw-libjpeg
+BuildRequires:  autoconf automake libtool
 
 %description
 MinGW Windows Jasper library.
@@ -37,6 +38,7 @@ MinGW Windows Jasper library.
 
 
 %build
+autoreconf
 %{_mingw_configure} --disable-opengl --enable-libjpeg
 make
 
@@ -69,6 +71,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_mingw_mandir}/man1/i686-pc-mingw32-jiv.1*
 
 %changelog
+* Thu Sep 11 2008 Daniel P. Berrange <berrange@redhat.com> - 1.900.1-3
+- Run autoreconf after changing configure.ac script and add BRs for autotools
+
 * Wed Sep 10 2008 Richard W.M. Jones <rjones@redhat.com> - 1.900.1-2
 - Enable DLLs.
 - Remove static libraries.
index 924dd9b..eab76c7 100644 (file)
@@ -6,7 +6,7 @@
 
 Name:           mingw-libgcrypt
 Version:        1.4.1
-Release:        4%{?dist}
+Release:        5%{?dist}
 Summary:        MinGW Windows gcrypt encryption library
 
 License:        LGPLv2+
@@ -32,6 +32,7 @@ MinGW Windows gcrypt encryption library.
 
 
 %build
+PATH="%{_mingw_bindir}:$PATH" \
 %{_mingw_configure}
 make
 
@@ -64,6 +65,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_mingw_datadir}/info/gcrypt.info
 
 %changelog
+* Thu Sep 11 2008 Daniel P. Berrange <berrange@redhat.com> - 1.4.1-5
+- Set PATH so it finds gpg-error-config
+
 * Wed Sep 10 2008 Richard W.M. Jones <rjones@redhat.com> - 1.4.1-4
 - Remove static library.
 
diff --git a/smock/README b/smock/README
new file mode 100644 (file)
index 0000000..b670973
--- /dev/null
@@ -0,0 +1,25 @@
+ SMOCK - Simpler Mock
+ ====================
+
+Smock is a thin wrapper around mock to let you build up a whole
+set of dependant RPMs against an external distro.
+
+ - Copy smock.httpd.conf to /etc/httpd/conf.d/smock.conf, changing the
+   /home/[USERNAME]/ to your user
+ - Start httpd
+ - Add  smock.mock.conf to all your repos in /etc/mock/ changing the
+   arch and distro name to match
+ - Create  $HOME/smock
+
+ - Edit smock.sh to set which arch(es) you want to build on
+
+Now you can run
+
+    ./smock.sh fedora-9 /path/to/srpm
+
+And it'll build  the RPM against the fedora-9-XXX distro for each 'XXX' 
+arch you listed.
+
+The resulting src RPMs, binary RPMs and build logs wil be put into
+$HOME/smock, and a YUM repo created. Further RPMs you build using
+smock will resolve the BuildRequires against this local repo
diff --git a/smock/smock.httpd.conf b/smock/smock.httpd.conf
new file mode 100644 (file)
index 0000000..e14f71e
--- /dev/null
@@ -0,0 +1,8 @@
+
+
+Alias /smock /home/USERNAME/smock
+
+<Directory /home/USERNAME/smock>
+   Allow from all
+  Options +Indexes
+</Directory>
diff --git a/smock/smock.mock.cfg b/smock/smock.mock.cfg
new file mode 100644 (file)
index 0000000..0fa4316
--- /dev/null
@@ -0,0 +1,5 @@
+[smock]
+name=smock
+baseurl=http://127.0.0.1/smock/yum/fedora-9/i386
+enabled=1
+
diff --git a/smock/smock.sh b/smock/smock.sh
new file mode 100755 (executable)
index 0000000..72b5e17
--- /dev/null
@@ -0,0 +1,68 @@
+#!/bin/sh
+
+
+LOCALREPO=$HOME/smock/yum
+#ARCHES="i386 x86_64"
+ARCHES=i386
+
+help() {
+    echo "syntax: $0 DIST SRPM"
+}
+
+if [ -z "$1" ]; then
+    help
+    exit
+fi
+
+
+if [ -z "$2" ]; then
+    help
+    exit
+fi
+
+DIST=$1
+SRPM=$2
+
+createrepos() {
+
+  (
+    mkdir -p $LOCALREPO/$DIST/src/SRPMS
+    cd $LOCALREPO/$DIST/src
+    rm -rf repodata
+    createrepo .
+  )
+
+  for ARCH in $ARCHES
+  do
+    (
+      mkdir -p $LOCALREPO/$DIST/$ARCH/RPMS
+      mkdir -p $LOCALREPO/$DIST/$ARCH/logs
+      cd $LOCALREPO/$DIST/$ARCH
+      rm -rf repodata
+      createrepo --exclude "logs/*rpm" .
+    )
+  done
+}
+
+createrepos
+
+mkdir -p $LOCALREPO/scratch
+rm -f $LOCALREPO/scratch/*
+
+for ARCH in $ARCHES
+do
+    mkdir -p $LOCALREPO/$DIST/$ARCH/logs/$SRPM
+
+    mock -r $DIST-$ARCH --resultdir $LOCALREPO/scratch $SRPM
+
+    if [ $? != 0 ]; then
+       echo "Build failed, leaving logs in $LOCALREPO/scratch"
+       exit $?
+    fi
+    mv $LOCALREPO/scratch/*.src.rpm $LOCALREPO/$DIST/src/SRPMS
+    mv $LOCALREPO/scratch/*.rpm $LOCALREPO/$DIST/$ARCH/RPMS
+    mv $LOCALREPO/scratch/*.log $LOCALREPO/$DIST/$ARCH/logs/$SRPM/
+done
+
+createrepos
+