Adding a new processor configuration for ARM v8
This commit is contained in:
parent
2cde606cce
commit
cd724f586f
12 changed files with 77 additions and 0 deletions
13
etc/bashrc
13
etc/bashrc
|
@ -317,6 +317,19 @@ Linux)
|
|||
export WM_LDFLAGS='-mfloat-abi=hard'
|
||||
;;
|
||||
|
||||
aarch64)
|
||||
# https://gcc.gnu.org/onlinedocs/gcc/AArch64-Options.html
|
||||
# This command will provide more details for your specific processor
|
||||
# gcc -c -Q -march=native -mtune=native --help=target
|
||||
WM_ARCH=linuxARM8
|
||||
export WM_COMPILER_LIB_ARCH=64
|
||||
export WM_CC='gcc'
|
||||
export WM_CXX='g++'
|
||||
export WM_CFLAGS='-fPIC -march=native -mtune=native'
|
||||
export WM_CXXFLAGS='-fPIC -march=native -mtune=native'
|
||||
export WM_LDFLAGS=''
|
||||
;;
|
||||
|
||||
*)
|
||||
echo Unknown processor type `uname -m` for Linux
|
||||
;;
|
||||
|
|
16
wmake/rules/linuxARM8Gcc/c
Normal file
16
wmake/rules/linuxARM8Gcc/c
Normal file
|
@ -0,0 +1,16 @@
|
|||
.SUFFIXES: .c .h
|
||||
|
||||
cWARN = -Wall
|
||||
|
||||
cc = gcc
|
||||
|
||||
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
|
21
wmake/rules/linuxARM8Gcc/c++
Normal file
21
wmake/rules/linuxARM8Gcc/c++
Normal file
|
@ -0,0 +1,21 @@
|
|||
.SUFFIXES: .C .cxx .cc .cpp
|
||||
|
||||
c++WARN = -Wall -Wextra -Wno-unused-parameter -Wold-style-cast
|
||||
|
||||
CC = g++
|
||||
|
||||
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 -Xlinker --add-needed -Xlinker --no-as-needed
|
||||
LINKEXE = $(CC) $(c++FLAGS) -Xlinker --add-needed -Xlinker --no-as-needed
|
2
wmake/rules/linuxARM8Gcc/c++Debug
Normal file
2
wmake/rules/linuxARM8Gcc/c++Debug
Normal file
|
@ -0,0 +1,2 @@
|
|||
c++DBUG = -ggdb3 -DFULLDEBUG
|
||||
c++OPT = -O0 -fdefault-inline
|
2
wmake/rules/linuxARM8Gcc/c++Opt
Normal file
2
wmake/rules/linuxARM8Gcc/c++Opt
Normal file
|
@ -0,0 +1,2 @@
|
|||
c++DBUG =
|
||||
c++OPT = -O3 -floop-optimize -falign-loops -falign-labels -falign-functions -falign-jumps -fprefetch-loop-arrays -march=native -mtune=native
|
2
wmake/rules/linuxARM8Gcc/c++Prof
Normal file
2
wmake/rules/linuxARM8Gcc/c++Prof
Normal file
|
@ -0,0 +1,2 @@
|
|||
c++DBUG = -pg
|
||||
c++OPT = -O2
|
2
wmake/rules/linuxARM8Gcc/cDebug
Normal file
2
wmake/rules/linuxARM8Gcc/cDebug
Normal file
|
@ -0,0 +1,2 @@
|
|||
cDBUG = -ggdb -DFULLDEBUG
|
||||
cOPT = -O1 -fdefault-inline -finline-functions
|
2
wmake/rules/linuxARM8Gcc/cOpt
Normal file
2
wmake/rules/linuxARM8Gcc/cOpt
Normal file
|
@ -0,0 +1,2 @@
|
|||
cDBUG =
|
||||
cOPT = -O3 -floop-optimize -falign-loops -falign-labels -falign-functions -falign-jumps -fprefetch-loop-arrays -march=native -mtune=native
|
2
wmake/rules/linuxARM8Gcc/cProf
Normal file
2
wmake/rules/linuxARM8Gcc/cProf
Normal file
|
@ -0,0 +1,2 @@
|
|||
cDBUG = -pg
|
||||
cOPT = -O2
|
9
wmake/rules/linuxARM8Gcc/general
Normal file
9
wmake/rules/linuxARM8Gcc/general
Normal file
|
@ -0,0 +1,9 @@
|
|||
CPP = cpp -traditional-cpp $(GFLAGS)
|
||||
LD = ld
|
||||
|
||||
PROJECT_LIBS = -l$(WM_PROJECT) -ldl
|
||||
|
||||
include $(GENERAL_RULES)/standard
|
||||
|
||||
include $(RULES)/c
|
||||
include $(RULES)/c++
|
3
wmake/rules/linuxARM8Gcc/mplibOPENMPI
Normal file
3
wmake/rules/linuxARM8Gcc/mplibOPENMPI
Normal file
|
@ -0,0 +1,3 @@
|
|||
PFLAGS = -DOMPI_SKIP_MPICXX
|
||||
PINC = -I$(MPI_ARCH_PATH)/include
|
||||
PLIBS = -L$(MPI_ARCH_PATH)/lib -lmpi
|
3
wmake/rules/linuxARM8Gcc/mplibSYSTEMOPENMPI
Normal file
3
wmake/rules/linuxARM8Gcc/mplibSYSTEMOPENMPI
Normal file
|
@ -0,0 +1,3 @@
|
|||
PFLAGS = -DOMPI_SKIP_MPICXX
|
||||
PINC = $(OPENMPI_COMPILE_FLAGS)
|
||||
PLIBS = -L$(MPI_ARCH_PATH)/lib/openmpi -lmpi
|
Reference in a new issue