Author: wade
Date: 2007-02-23 19:11:35 -0500 (Fri, 23 Feb 2007)
New Revision: 73380

Modified:
   trunk/release/conf/mono-basic/ximian-build.conf
   trunk/release/packaging/defs/mono-basic
   trunk/release/pyutils/build.py
Log:
defs/mono-basic:
-add flag for package to not be noarch on monobuild webview
-don't run gnu make tests on win32

mono-basic/ximian-build.conf:
-be able to run on linux without failing
-fail on linux if it's a RELEASE build and the windows binaries can't be found
 continue on linux for HEAD so tests can be run

pyutils/build.py:
-implement web_ingnore_noarch to use with mono-basic change above



Modified: trunk/release/conf/mono-basic/ximian-build.conf
===================================================================
--- trunk/release/conf/mono-basic/ximian-build.conf     2007-02-23 23:26:39 UTC 
(rev 73379)
+++ trunk/release/conf/mono-basic/ximian-build.conf     2007-02-24 00:11:35 UTC 
(rev 73380)
@@ -18,40 +18,46 @@
     </source>
         
     <build id="default">
-      <prepare><![CDATA[
-       # Get both, one will fail, one won't
-       f="mono-basic-[[version]]-0.win4.novell.x86.zip"
-       p="win-4-i386/mono-basic/[[version]]/$f"
-       wget http://monobuild1.boston.ximian.com/~wberrier/zip_packages/$p || 
true
-       wget 
http://monobuild1.boston.ximian.com/~wberrier/snapshot_zip_packages/$p || true
-       if [ ! -e "$f" ] ; then 
-               false
-       fi
+      <prepare>./configure --prefix=[[usrprefix]]</prepare>
 
-       unzip mono-basic-[[version]]-0.win4.novell.x86.zip
-
-       ./configure --prefix=[[usrprefix]]
-]]>
-      </prepare>
-
       <!-- profile probably provides some locale setting -->
       <compile>. /etc/profile; make</compile>
       <install><![CDATA[
 
        make install DESTDIR=${DESTDIR}
 
-       # Remove vbnc built runtime
-       rm -Rf ${DESTDIR}/[[usrprefix]]/lib/mono/gac/Microsoft.VisualBasic
-       rm -Rf ${DESTDIR}/[[usrprefix]]/lib/mono/2.0/Microsoft.VisualBasic.dll
+       # Check for binaries built on windows
+       f="mono-basic-[[version]]-0.win4.novell.x86.zip"
+       p="win-4-i386/mono-basic/[[version]]/$f"
+       wget http://monobuild1.boston.ximian.com/~wberrier/zip_packages/$p || 
true
+       wget 
http://monobuild1.boston.ximian.com/~wberrier/snapshot_zip_packages/$p || true
 
-       # Fix permissions on files so they are readible
-       chmod 755 lib/mono/1.0/Microsoft.VisualBasic.dll 
lib/mono/2.0/Microsoft.VisualBasic.dll
+       # If we have windows built binaries, inject them into the package (to 
provide the 1.0 runtime)
+       if [ -e "$f" ] ; then 
+               unzip mono-basic-[[version]]-0.win4.novell.x86.zip
+               # Remove vbnc built runtime
+               rm -Rf 
${DESTDIR}/[[usrprefix]]/lib/mono/gac/Microsoft.VisualBasic
+               rm -Rf 
${DESTDIR}/[[usrprefix]]/lib/mono/2.0/Microsoft.VisualBasic.dll
 
-       ## Install into new gac
+               # Fix permissions on files so they are readable
+               chmod 755 lib/mono/1.0/Microsoft.VisualBasic.dll 
lib/mono/2.0/Microsoft.VisualBasic.dll
 
-       gacutil -package 1.0 -root ${DESTDIR}/usr/lib -i 
lib/mono/1.0/Microsoft.VisualBasic.dll
-       gacutil -package 2.0 -root ${DESTDIR}/usr/lib -i 
lib/mono/2.0/Microsoft.VisualBasic.dll
+               ## Install into new gac
 
+               gacutil -package 1.0 -root ${DESTDIR}/usr/lib -i 
lib/mono/1.0/Microsoft.VisualBasic.dll
+               gacutil -package 2.0 -root ${DESTDIR}/usr/lib -i 
lib/mono/2.0/Microsoft.VisualBasic.dll
+       else
+               # If we're building from HEAD, print warning (HEAD doesn't have 
a version with periods)
+               if test `echo "[[version]]" | sed -e 's/\.//g'` == 
"[[version]]" ; then
+                       echo ""
+                       echo "*** vbnc DEBUG BUILD!  Don't ship this RPM! ***"
+                       echo ""
+               # Otherwise RELEASE, fail build, because we don't want to ship 
an rpm without the 1.0 runtime
+               else
+                       false
+               fi
+       fi
+
 ]]>
       </install>
 
@@ -73,8 +79,8 @@
           <i>[[usrprefix]]/lib/mono/2.0/vbnc*</i>
 
           <i>[[usrprefix]]/lib/mono/gac/Microsoft.VisualBasic</i>
-          <i>[[usrprefix]]/lib/mono/1.0/Microsoft.VisualBasic.dll</i>
-          <i>[[usrprefix]]/lib/mono/2.0/Microsoft.VisualBasic.dll</i>
+          <!-- when building on linux we won't have the 1.0, glob what we can 
-->
+          <i>[[usrprefix]]/lib/mono/*.0/Microsoft.VisualBasic.dll</i>
 
         </files>
 

Modified: trunk/release/packaging/defs/mono-basic
===================================================================
--- trunk/release/packaging/defs/mono-basic     2007-02-23 23:26:39 UTC (rev 
73379)
+++ trunk/release/packaging/defs/mono-basic     2007-02-24 00:11:35 UTC (rev 
73380)
@@ -1,6 +1,11 @@
-web_index=0
-
+web_index=8
+web_ignore_noarch=1
+ 
 version_selection_reg="1\.\d+"
+ 
+# Note: this noarch package builds on two platforms
+#  BE SURE to build on windows first before building the rpm, otherwise the
+#  1.0 vb runtime won't be included
 
 BUILD_HOSTS=(
        win-4-i386
@@ -102,6 +107,10 @@
 POSTBUILD_STEP_NAME1="test"
 POSTBUILD_STEP1 () {
        # This is for linux... what about win?
-        $make_path test
+        if [ $DISTRO == "win-4-i386" ] ; then
+                true
+        else
+               $make_path test
+       fi
 }
 

Modified: trunk/release/pyutils/build.py
===================================================================
--- trunk/release/pyutils/build.py      2007-02-23 23:26:39 UTC (rev 73379)
+++ trunk/release/pyutils/build.py      2007-02-24 00:11:35 UTC (rev 73380)
@@ -98,7 +98,8 @@
                 pack_obj = packaging.package("", package, 
create_dirs_links=False)
 
                # Handle normal package
-               if pack_obj.info['get_destroot'].find('noarch') == -1:
+               # Add workaround for packages that build on multiple platforms, 
but are noarch (currently mono-basic)
+               if pack_obj.info['get_destroot'].find('noarch') == -1 or 
pack_obj.get_info_var('web_ignore_noarch'):
                        pack_objs.append(pack_obj)
                # It's noarch
                else:

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to