Reviewed-by: Ruiyu Ni <ruiyu...@intel.com>

On 2016-04-06 23:14, Jordan Justen wrote:
Build tested with GCC 5.3 with both IA32 and X64. Unfortunately both
seemed to hang very early when boot tested on QEMU.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.jus...@intel.com>
Cc: Ruiyu Ni <ruiyu...@intel.com>
---
  DuetPkg/PostBuild.sh |  8 ++++----
  DuetPkg/build32.sh   | 24 ++++++++++++++++++++++--
  DuetPkg/build64.sh   | 24 ++++++++++++++++++++++--
  3 files changed, 48 insertions(+), 8 deletions(-)

diff --git a/DuetPkg/PostBuild.sh b/DuetPkg/PostBuild.sh
index c77c0f3..f032de3 100755
--- a/DuetPkg/PostBuild.sh
+++ b/DuetPkg/PostBuild.sh
@@ -6,7 +6,7 @@
  #  and platform building, so just use a sh file to do post build commands.
  #  Originally, following post building command is for EfiLoader module.
  #
-#  Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
+#  Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
  #
  #  This program and the accompanying materials
  #  are licensed and made available under the terms and conditions of the BSD 
License
@@ -53,11 +53,11 @@ case "$2" in
     UNIXGCC)
       export TOOLTAG=UNIXGCC
       ;;
-   GCC44)
-     export TOOLTAG=GCC44
+   GCC4*)
+     export TOOLTAG=$2
       ;;
     *)
-     echo Invalid tool tag, should be only UNIXGCC or GCC44
+     echo Invalid tool tag, should be only UNIXGCC or GCC4\*
       return 1
  esac
diff --git a/DuetPkg/build32.sh b/DuetPkg/build32.sh
index 5e99aba..c15c996 100755
--- a/DuetPkg/build32.sh
+++ b/DuetPkg/build32.sh
@@ -1,7 +1,7 @@
  #!/bin/bash
  #
  # Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
-# Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
  #
  # This program and the accompanying materials
  # are licensed and made available under the terms and conditions of the BSD 
License
@@ -57,7 +57,27 @@ case `uname` in
        fi
        ;;
    Linux*)
-    TARGET_TOOLS=GCC44
+    gcc_version=$(gcc -v 2>&1 | tail -1 | awk '{print $3}')
+    case $gcc_version in
+      4.5.*)
+        TARGET_TOOLS=GCC45
+        ;;
+      4.6.*)
+        TARGET_TOOLS=GCC46
+        ;;
+      4.7.*)
+        TARGET_TOOLS=GCC47
+        ;;
+      4.8.*)
+        TARGET_TOOLS=GCC48
+        ;;
+      4.9.*|4.1[0-9].*|5.*.*)
+        TARGET_TOOLS=GCC49
+        ;;
+      *)
+        TARGET_TOOLS=GCC44
+        ;;
+    esac
      ;;
esac
diff --git a/DuetPkg/build64.sh b/DuetPkg/build64.sh
index d215116..0401c56 100755
--- a/DuetPkg/build64.sh
+++ b/DuetPkg/build64.sh
@@ -1,7 +1,7 @@
  #!/bin/bash
  #
  # Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
-# Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
  #
  # This program and the accompanying materials
  # are licensed and made available under the terms and conditions of the BSD 
License
@@ -56,7 +56,27 @@ case `uname` in
        fi
        ;;
    Linux*)
-    TARGET_TOOLS=GCC44
+    gcc_version=$(gcc -v 2>&1 | tail -1 | awk '{print $3}')
+    case $gcc_version in
+      4.5.*)
+        TARGET_TOOLS=GCC45
+        ;;
+      4.6.*)
+        TARGET_TOOLS=GCC46
+        ;;
+      4.7.*)
+        TARGET_TOOLS=GCC47
+        ;;
+      4.8.*)
+        TARGET_TOOLS=GCC48
+        ;;
+      4.9.*|4.1[0-9].*|5.*.*)
+        TARGET_TOOLS=GCC49
+        ;;
+      *)
+        TARGET_TOOLS=GCC44
+        ;;
+    esac
      ;;
esac

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to