[SM-Commit] GIT changes to master sorcery by Jaka Kranjc (34e4b1747d1e01ce262ada71dc4c867790355dfd)

Jaka Kranjc scm at sourcemage.org
Mon Feb 23 15:40:57 EST 2009


GIT changes to master sorcery by Jaka Kranjc <lynxlynxlynx at sourcemage.org>:

 ChangeLog                          |    4 ++++
 var/lib/sorcery/modules/libcast    |    4 ++--
 var/lib/sorcery/modules/libsorcery |   34 +++++++++++++++++++++-------------
 var/lib/sorcery/modules/libtrack   |    2 +-
 4 files changed, 28 insertions(+), 16 deletions(-)

New commits:
commit 34e4b1747d1e01ce262ada71dc4c867790355dfd
Author: Jaka Kranjc <lynxlynxlynx at sourcemage.org>
Commit: Jaka Kranjc <lynxlynxlynx at sourcemage.org>

    libsorcery: small simplification of set_compression_type

commit d3ec7b1b568d293b2e4b6a2b9d8de680ad21464e
Author: Jaka Kranjc <lynxlynxlynx at sourcemage.org>
Commit: Jaka Kranjc <lynxlynxlynx at sourcemage.org>

    libsorcery, libtrack: added pbzip2 support #15072
        * libcast: pass the file directly instead of using stdin when
          compressing, so pbzip2 can be used without modifications

diff --git a/ChangeLog b/ChangeLog
index 81b5daf..68d9c26 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,10 @@
 	* gaze, gaze.1: use extended regular expressions in all search modes,
 	  not just in some and mixed with basic REs #15080
 	* gaze: removed a few avoidable forks when searching
+	* libsorcery, libtrack: added pbzip2 support #15072
+	* libcast: pass the file directly instead of using stdin when
+	  compressing, so pbzip2 can be used without modifications
+	* libsorcery: small simplification of set_compression_type
 
 2009-01-09 Jaka Kranjc <lynxlynxlynx at sourcemage.org>
 	* config: allow for an empty EXTENSION and COMPRESSBIN
diff --git a/var/lib/sorcery/modules/libcast b/var/lib/sorcery/modules/libcast
index 1b99b66..09747f3 100755
--- a/var/lib/sorcery/modules/libcast
+++ b/var/lib/sorcery/modules/libcast
@@ -683,7 +683,7 @@ function create_compile_log()  {
   if [  -z  "$EXTENSION"  ];  then
     cp  $C_LOG  $COMPILE_LOGS/$SPELL-$VERSION
   else
-    $COMPRESSBIN  -f  <  $C_LOG  >  $COMPILE_LOGS/$SPELL-$VERSION$EXTENSION
+    $COMPRESSBIN -c $C_LOG > "$COMPILE_LOGS/$SPELL-$VERSION$EXTENSION"
   fi
 
   # install the castfs log
@@ -695,7 +695,7 @@ function create_compile_log()  {
     then
       cp $CASTFS_DBGLOG $COMPILE_LOGS/$SPELL-$VERSION.castfs.dbglog
     else
-      $COMPRESSBIN -f < $CASTFS_DBGLOG > $COMPILE_LOGS/$SPELL-$VERSION.castfs.dbglog$EXTENSION
+      $COMPRESSBIN -c $CASTFS_DBGLOG > "$COMPILE_LOGS/$SPELL-$VERSION.castfs.dbglog$EXTENSION"
     fi
     rm -f $CASTFS_DBGLOG
   fi
diff --git a/var/lib/sorcery/modules/libsorcery b/var/lib/sorcery/modules/libsorcery
index cbb6ca5..850953a 100755
--- a/var/lib/sorcery/modules/libsorcery
+++ b/var/lib/sorcery/modules/libsorcery
@@ -1190,6 +1190,7 @@ function verify_sources()  {
 function set_compression_type() {
 
   local B_HELP="bzip2 compression (slow, small files)"
+  local P_HELP="parallel bzip2 compression (slow unless on SMP, small files)"
   local G_HELP="gzip compression (fast, larger files)"
   local T_HELP="no compression/tar (fastest, largest files)"
 
@@ -1203,31 +1204,38 @@ function set_compression_type() {
                              ""                                         \
                              0 0 0                                      \
                              "B"  "bzip2 compression"        "$B_HELP"  \
+                             "P"  "pbzip2 compression (parallel bzip2)" "$P_HELP"  \
                              "G"  "gzip compression"         "$G_HELP"  \
                              "T"  "no compression/tar"       "$T_HELP"'`
 
   do
+    ARCHIVEBIN="tar"
+    modify_local_config "ARCHIVEBIN" "tar"
 
     case  $COMMAND in
-
-      B)  modify_local_config "COMPRESSBIN" "bzip2"  &&
+      B)
+          modify_local_config "COMPRESSBIN" "bzip2" &&
           COMPRESSBIN="bzip2"                        &&
-          modify_local_config "EXTENSION" ".bz2"     &&
-          ARCHIVEBIN="tar"                           &&
-          modify_local_config "ARCHIVEBIN" "tar"     ;;
-      G)  modify_local_config "COMPRESSBIN" "gzip"   &&
+          modify_local_config "EXTENSION" ".bz2" ;;
+      P)
+          if ! spell_ok pbzip2; then
+            clear_line
+            message "pbzip2 is not installed on this system! Running cast ...\n"
+            sleep 2
+            cast pbzip2
+          fi &&
+          modify_local_config "COMPRESSBIN" "pbzip2"  &&
+          COMPRESSBIN="pbzip2"                        &&
+          modify_local_config "EXTENSION" ".bz2" ;;
+      G)
+          modify_local_config "COMPRESSBIN" "gzip" &&
           COMPRESSBIN="gzip"                         &&
-          modify_local_config "EXTENSION" ".gz"      &&
-          ARCHIVEBIN="tar"                           &&
-          modify_local_config "ARCHIVEBIN" "tar"     ;;
-      T)  modify_local_config "ARCHIVEBIN" "tar"     &&
-          ARCHIVEBIN="tar"                           &&
+          modify_local_config "EXTENSION" ".gz" ;;
+      T)
           modify_local_config "COMPRESSBIN" ""       &&
           COMPRESSBIN=""                             &&
           modify_local_config "EXTENSION" ""         ;;
-
     esac
-
   done
 
 }
diff --git a/var/lib/sorcery/modules/libtrack b/var/lib/sorcery/modules/libtrack
index 0e6f796..e26d1d0 100755
--- a/var/lib/sorcery/modules/libtrack
+++ b/var/lib/sorcery/modules/libtrack
@@ -430,7 +430,7 @@ function create_cache_archive()  {
   rm $TMP_DATA $TMP_MDATA
 
   case "$COMPRESSBIN" in
-    gzip|bzip2)
+    gzip|bzip2|pbzip2)
       $COMPRESSBIN -c $CACHE > $CACHE_COMP
       rm $CACHE
       ;;



More information about the SM-Commit mailing list