Add functions to extract package version with underscore
[hvlinux.git] / functions / main
index 038b99d..35ec62c 100644 (file)
@@ -62,6 +62,9 @@ fi
 
 CLFS=${LFS}
 
+CROSS_TOOLS_DIR=${CLFS}/cross-tools
+TOOLS_DIR=${CLFS}/tools
+
 # Load functions
 source ../functions/fpkg
 source ../functions/lpkg
@@ -199,6 +202,40 @@ get_pkg_ver_underscore()
     echo ${1} | sed "s!.*_\([0-9].*\)!\1!g"
 }
 
+# Extracting the version number from a complete package name
+# when the package name uses the underscore as the separator.
+# Arg. #1: Complete package name with version (ex: icu4c-54_1 will output 54.1)
+get_pkg_ver_underscore2()
+{
+    # Checking for correct number of arguments
+    if [ $# -ne 1 ]; then
+       echo "${FUNCNAME}(), wrong number of arguments: ${*}"
+       return 1
+    fi
+
+    local v=$(get_pkg_ver ${1})
+
+    # Replace underscore by dot
+    echo ${v} | sed "s!_!\.!g"
+}
+
+# Convert package version dots to uderscore.
+# Ex: gcc-3.4.6 will output 3_4_6
+# Arg. #1: Complete package name with version
+ver_dots_to_underscore()
+{
+    # Checking for correct number of arguments
+    if [ $# -ne 1 ]; then
+       echo "${FUNCNAME}(), wrong number of arguments: ${*}"
+       return 1
+    fi
+
+    local v=$(get_pkg_ver ${1})
+
+    # Replace dots by underscores
+    echo ${v} | sed "s!\.!_!g"
+}
+
 # Extracting the first digit version number from a complete package name.
 # Arg. #1: Complete package name with version (ex: gcc-3.4.4 will output 3)
 get_pkg_ver1()
@@ -212,6 +249,20 @@ get_pkg_ver1()
     echo ${1} | sed "s!^.*-\([0-9]*\)\..*!\1!g"
 }
 
+# Extracting the first digit version number from a complete package name,
+# when the package name uses the underscore as the separator.
+# Arg. #1: Complete package name with version (ex: icu4c-54_1 will output 54)
+get_pkg_ver1_underscore()
+{
+    # Checking for correct number of arguments
+    if [ $# -ne 1 ]; then
+       echo "${FUNCNAME}(), wrong number of arguments: ${*}"
+       return 1
+    fi
+
+    echo ${1} | sed "s!^.*-\([0-9]*\)_.*!\1!g"
+}
+
 # Extracting the first 2 digits version number from a complete package name.
 # Arg. #1: Complete package name with version (ex: gcc-3.4.4 will output 3.4)
 get_pkg_ver2()