Browse Source

Use apt repo to find latest snapshot

Hamilton Turner 10 years ago
parent
commit
5f772b78d1
1 changed files with 14 additions and 13 deletions
  1. 14 13
      toolset/setup/linux/languages/mono.sh

+ 14 - 13
toolset/setup/linux/languages/mono.sh

@@ -11,11 +11,20 @@ RETCODE=$(fw_exists $IROOT/mono.installed)
   return 0; }
   return 0; }
 
 
 # what do we want? latest mono
 # what do we want? latest mono
-# how do we want it? already compiled from packages but without sudo
+# how do we want it? already compiled from packages but without sudo apt-get
+
+# Add source for prepackaged binaries
+sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
+echo "deb http://jenkins.mono-project.com/repo/debian sid main" | sudo tee /etc/apt/sources.list.d/mono-jenkins.list
+sudo apt-get update
+
+# Find the most recent snapshot
+SNAPSHOT=$(apt-cache search 'mono-snapshot-.*-assemblies' | cut -d'-' -f3 | tail -1)
 
 
 # save environment
 # save environment
-cat > $IROOT/mono.installing <<'END'
-export SNAPDATE=20150202010831
+
+echo "export SNAPDATE=$SNAPSHOT" > $IROOT/mono.installing
+cat >> $IROOT/mono.installing <<'END'
 export MONO_HOME=$IROOT/mono-snapshot-$SNAPDATE
 export MONO_HOME=$IROOT/mono-snapshot-$SNAPDATE
 export MONO_PATH=$MONO_HOME/lib/mono/4.5
 export MONO_PATH=$MONO_HOME/lib/mono/4.5
 export MONO_CFG_DIR=$MONO_HOME/etc
 export MONO_CFG_DIR=$MONO_HOME/etc
@@ -28,22 +37,14 @@ END
 . $IROOT/mono.installing
 . $IROOT/mono.installing
 
 
 # start fresh
 # start fresh
-TEMP=$IROOT/mono-snapshot-${SNAPDATE}-temp
-rm -rf $TEMP && mkdir -p $TEMP
 rm -rf $MONO_HOME && mkdir -p $MONO_HOME
 rm -rf $MONO_HOME && mkdir -p $MONO_HOME
 
 
-# Add apt source
-sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
-echo "deb http://jenkins.mono-project.com/repo/debian sid main" | sudo tee /etc/apt/sources.list.d/mono-jenkins.list
-sudo apt-get update
-
 # Download and extract debs
 # Download and extract debs
-fw_apt_to_iroot mono-snapshot-20150202010831
-fw_apt_to_iroot mono-snapshot-20150202010831-assemblies mono-snapshot-20150202010831
+fw_apt_to_iroot mono-snapshot-$SNAPSHOT
+fw_apt_to_iroot mono-snapshot-${SNAPSHOT}-assemblies mono-snapshot-$SNAPSHOT
 
 
 # Simplify paths
 # Simplify paths
 mv $MONO_HOME/opt/mono-*/* $MONO_HOME
 mv $MONO_HOME/opt/mono-*/* $MONO_HOME
-# replace /opt/mono-$SNAPDATE path
 file $MONO_HOME/bin/* | grep "POSIX shell script" | awk -F: '{print $1}' | xargs sed -i "s|/opt/mono-$SNAPDATE|$MONO_HOME|g"
 file $MONO_HOME/bin/* | grep "POSIX shell script" | awk -F: '{print $1}' | xargs sed -i "s|/opt/mono-$SNAPDATE|$MONO_HOME|g"
 sed -i "s|/opt/mono-$SNAPDATE|$MONO_HOME|g" $MONO_HOME/lib/pkgconfig/*.pc $MONO_HOME/etc/mono/config
 sed -i "s|/opt/mono-$SNAPDATE|$MONO_HOME|g" $MONO_HOME/lib/pkgconfig/*.pc $MONO_HOME/etc/mono/config