Index: OpenFOAM-2.4.0/etc/config/settings.sh
===================================================================
--- OpenFOAM-2.4.0.orig/etc/config/settings.sh	2015-05-22 05:50:30.000000000 -0400
+++ OpenFOAM-2.4.0/etc/config/settings.sh	2015-06-22 16:05:15.443587651 -0400
@@ -135,6 +135,16 @@
         export WM_LDFLAGS='-m64'
         ;;
 
+    ppc64le)
+        WM_ARCH=linuxPPC64le
+        export WM_COMPILER_LIB_ARCH=64
+        export WM_CC='gcc'
+        export WM_CXX='g++'
+        export WM_CFLAGS='-m64 -fPIC'
+        export WM_CXXFLAGS='-m64 -fPIC'
+        export WM_LDFLAGS='-m64'
+        ;;
+
     *)
         echo Unknown processor type `uname -m` for Linux 1>&2
         ;;
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/X
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/X	2015-06-22 16:11:53.351656785 -0400
@@ -0,0 +1,3 @@
+XFLAGS     =
+XINC       = $(XFLAGS) -I/usr/X11R6/include
+XLIBS      = -L/usr/X11R6/lib64 -lXext -lX11
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c	2015-06-22 16:11:53.771656890 -0400
@@ -0,0 +1,16 @@
+.SUFFIXES: .c .h
+
+cWARN        = -Wall
+
+cc          = gcc -m64 -mcpu=power8
+
+include $(RULES)/c$(WM_COMPILE_OPTION)
+
+cFLAGS      = $(GFLAGS) $(cWARN) $(cOPT) $(cDBUG) $(LIB_HEADER_DIRS) -fPIC
+
+ctoo        = $(WM_SCHEDULER) $(cc) $(cFLAGS) -c $$SOURCE -o $@
+
+LINK_LIBS   = $(cDBUG)
+
+LINKLIBSO   = $(cc) -shared
+LINKEXE     = $(cc) -Xlinker --add-needed -Xlinker -z -Xlinker nodefs
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c++
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c++	2015-06-22 16:11:54.019656952 -0400
@@ -0,0 +1,21 @@
+.SUFFIXES: .C .cxx .cc .cpp
+
+c++WARN     = -Wall -Wextra -Wno-unused-parameter -Wold-style-cast
+
+CC          = g++ -m64 -mcpu=power8
+
+include $(RULES)/c++$(WM_COMPILE_OPTION)
+
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
+
+c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
+
+Ctoo        = $(WM_SCHEDULER) $(CC) $(c++FLAGS) -c $$SOURCE -o $@
+cxxtoo      = $(Ctoo)
+cctoo       = $(Ctoo)
+cpptoo      = $(Ctoo)
+
+LINK_LIBS   = $(c++DBUG)
+
+LINKLIBSO   = $(CC) $(c++FLAGS) -shared
+LINKEXE     = $(CC) $(c++FLAGS) -Xlinker --add-needed
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c++Debug
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c++Debug	2015-06-22 16:11:54.447657059 -0400
@@ -0,0 +1,2 @@
+c++DBUG    = -ggdb3 -DFULLDEBUG
+c++OPT      = -O0 -fdefault-inline
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c++Opt
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c++Opt	2015-06-22 16:11:54.735657131 -0400
@@ -0,0 +1,2 @@
+c++DBUG     =
+c++OPT      = -O3
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c++Prof
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/c++Prof	2015-06-22 16:11:55.123657228 -0400
@@ -0,0 +1,2 @@
+c++DBUG    = -pg
+c++OPT     = -O2
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/cDebug
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/cDebug	2015-06-22 16:11:55.515657326 -0400
@@ -0,0 +1,2 @@
+cDBUG       = -ggdb -DFULLDEBUG
+cOPT        = -O1 -fdefault-inline -finline-functions
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/cOpt
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/cOpt	2015-06-22 16:11:55.871657415 -0400
@@ -0,0 +1,2 @@
+cDBUG       =
+cOPT        = -O3
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/cProf
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/cProf	2015-06-22 16:11:56.207657499 -0400
@@ -0,0 +1,2 @@
+cDBUG       = -pg
+cOPT        = -O2
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/general
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/general	2015-06-22 16:11:56.367657539 -0400
@@ -0,0 +1,10 @@
+CPP        = cpp -traditional-cpp $(GFLAGS)
+LD         = ld -m elf64lppc
+
+PROJECT_LIBS = -l$(WM_PROJECT) -ldl
+
+include $(GENERAL_RULES)/standard
+
+include $(RULES)/X
+include $(RULES)/c
+include $(RULES)/c++
Index: OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/mplibHPMPI
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ OpenFOAM-2.4.0/wmake/rules/linuxPPC64leGcc/mplibHPMPI	2015-06-22 16:11:56.659657612 -0400
@@ -0,0 +1,3 @@
+PFLAGS     =
+PINC       = -I$(MPI_ARCH_PATH)/include -D_MPICC_H
+PLIBS      = -L$(MPI_ARCH_PATH)/lib/linux_amd64 -lmpi
