mirror of
https://github.com/ziglang/zig.git
synced 2025-12-06 06:13:07 +00:00
update to llvm 7.0.0
This commit is contained in:
parent
53588f4f12
commit
62668e3e6b
10
README.md
10
README.md
@ -125,14 +125,14 @@ libc. Create demo games using Zig.
|
|||||||
|
|
||||||
* cmake >= 2.8.5
|
* cmake >= 2.8.5
|
||||||
* gcc >= 5.0.0 or clang >= 3.6.0
|
* gcc >= 5.0.0 or clang >= 3.6.0
|
||||||
* LLVM, Clang, LLD development libraries == 6.x, compiled with the same gcc or clang version above
|
* LLVM, Clang, LLD development libraries == 7.x, compiled with the same gcc or clang version above
|
||||||
- These depend on zlib and libxml2.
|
- These depend on zlib and libxml2.
|
||||||
|
|
||||||
##### Windows
|
##### Windows
|
||||||
|
|
||||||
* cmake >= 2.8.5
|
* cmake >= 2.8.5
|
||||||
* Microsoft Visual Studio 2015
|
* Microsoft Visual Studio 2015
|
||||||
* LLVM, Clang, LLD development libraries == 6.x, compiled with the same MSVC version above
|
* LLVM, Clang, LLD development libraries == 7.x, compiled with the same MSVC version above
|
||||||
|
|
||||||
#### Instructions
|
#### Instructions
|
||||||
|
|
||||||
@ -156,11 +156,11 @@ make install
|
|||||||
`ZIG_LIBC_LIB_DIR` and `ZIG_LIBC_STATIC_LIB_DIR` are unused.
|
`ZIG_LIBC_LIB_DIR` and `ZIG_LIBC_STATIC_LIB_DIR` are unused.
|
||||||
|
|
||||||
```
|
```
|
||||||
brew install cmake llvm@6
|
brew install cmake llvm@7
|
||||||
brew outdated llvm@6 || brew upgrade llvm@6
|
brew outdated llvm@7 || brew upgrade llvm@7
|
||||||
mkdir build
|
mkdir build
|
||||||
cd build
|
cd build
|
||||||
cmake .. -DCMAKE_PREFIX_PATH=/usr/local/opt/llvm@6/ -DCMAKE_INSTALL_PREFIX=$(pwd)
|
cmake .. -DCMAKE_PREFIX_PATH=/usr/local/opt/llvm@7/ -DCMAKE_INSTALL_PREFIX=$(pwd)
|
||||||
make install
|
make install
|
||||||
./zig build --build-file ../build.zig test
|
./zig build --build-file ../build.zig test
|
||||||
```
|
```
|
||||||
|
|||||||
@ -6,5 +6,5 @@ build_script:
|
|||||||
after_build:
|
after_build:
|
||||||
- '%APPVEYOR_BUILD_FOLDER%\ci\appveyor\after_build.bat'
|
- '%APPVEYOR_BUILD_FOLDER%\ci\appveyor\after_build.bat'
|
||||||
cache:
|
cache:
|
||||||
- 'llvm+clang-5.0.1-win64-msvc-release.tar.xz'
|
|
||||||
- 'llvm+clang-6.0.0-win64-msvc-release.tar.xz'
|
- 'llvm+clang-6.0.0-win64-msvc-release.tar.xz'
|
||||||
|
- 'llvm+clang-7.0.0-win64-msvc-release.tar.xz'
|
||||||
|
|||||||
@ -7,13 +7,13 @@ SET "PATH=C:\msys64\mingw64\bin;C:\msys64\usr\bin;%PATH%"
|
|||||||
SET "MSYSTEM=MINGW64"
|
SET "MSYSTEM=MINGW64"
|
||||||
SET "APPVEYOR_CACHE_ENTRY_ZIP_ARGS=-m0=Copy"
|
SET "APPVEYOR_CACHE_ENTRY_ZIP_ARGS=-m0=Copy"
|
||||||
|
|
||||||
bash -lc "cd ${APPVEYOR_BUILD_FOLDER} && if [ -s ""llvm+clang-6.0.0-win64-msvc-release.tar.xz"" ]; then echo 'skipping LLVM download'; else wget 'https://s3.amazonaws.com/ziglang.org/deps/llvm%%2bclang-6.0.0-win64-msvc-release.tar.xz'; fi && tar xf llvm+clang-6.0.0-win64-msvc-release.tar.xz" || exit /b
|
bash -lc "cd ${APPVEYOR_BUILD_FOLDER} && if [ -s ""llvm+clang-7.0.0-win64-msvc-release.tar.xz"" ]; then echo 'skipping LLVM download'; else wget 'https://s3.amazonaws.com/ziglang.org/deps/llvm%%2bclang-7.0.0-win64-msvc-release.tar.xz'; fi && tar xf llvm+clang-7.0.0-win64-msvc-release.tar.xz" || exit /b
|
||||||
|
|
||||||
|
|
||||||
SET "PATH=%PREVPATH%"
|
SET "PATH=%PREVPATH%"
|
||||||
SET "MSYSTEM=%PREVMSYSTEM%"
|
SET "MSYSTEM=%PREVMSYSTEM%"
|
||||||
SET "ZIGBUILDDIR=%APPVEYOR_BUILD_FOLDER%\build-msvc-release"
|
SET "ZIGBUILDDIR=%APPVEYOR_BUILD_FOLDER%\build-msvc-release"
|
||||||
SET "ZIGPREFIXPATH=%APPVEYOR_BUILD_FOLDER%\llvm+clang-6.0.0-win64-msvc-release"
|
SET "ZIGPREFIXPATH=%APPVEYOR_BUILD_FOLDER%\llvm+clang-7.0.0-win64-msvc-release"
|
||||||
|
|
||||||
call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64
|
call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64
|
||||||
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64
|
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
sudo sh -c 'echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-6.0 main" >> /etc/apt/sources.list'
|
sudo sh -c 'echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-7.0 main" >> /etc/apt/sources.list'
|
||||||
wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
|
wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
|
||||||
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
||||||
sudo apt-get update -q
|
sudo apt-get update -q
|
||||||
|
|||||||
@ -4,4 +4,4 @@ set -x
|
|||||||
|
|
||||||
sudo apt-get remove -y llvm-*
|
sudo apt-get remove -y llvm-*
|
||||||
sudo rm -rf /usr/local/*
|
sudo rm -rf /usr/local/*
|
||||||
sudo apt-get install -y clang-6.0 libclang-6.0 libclang-6.0-dev llvm-6.0 llvm-6.0-dev liblld-6.0 liblld-6.0-dev cmake wine1.6-amd64
|
sudo apt-get install -y clang-7.0 libclang-7.0 libclang-7.0-dev llvm-7.0 llvm-7.0-dev liblld-7.0 liblld-7.0-dev cmake wine1.6-amd64
|
||||||
|
|||||||
@ -3,8 +3,8 @@
|
|||||||
set -x
|
set -x
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
export CC=clang-6.0
|
export CC=clang-7.0
|
||||||
export CXX=clang++-6.0
|
export CXX=clang++-7.0
|
||||||
echo $PATH
|
echo $PATH
|
||||||
mkdir build
|
mkdir build
|
||||||
cd build
|
cd build
|
||||||
|
|||||||
@ -2,6 +2,6 @@
|
|||||||
|
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
brew install llvm@6
|
brew install llvm@7
|
||||||
brew outdated llvm@6 || brew upgrade llvm@6
|
brew outdated llvm@7 || brew upgrade llvm@7
|
||||||
|
|
||||||
|
|||||||
@ -5,7 +5,7 @@ set -e
|
|||||||
|
|
||||||
mkdir build
|
mkdir build
|
||||||
cd build
|
cd build
|
||||||
cmake .. -DCMAKE_PREFIX_PATH=/usr/local/opt/llvm@6/ -DCMAKE_INSTALL_PREFIX=$(pwd)
|
cmake .. -DCMAKE_PREFIX_PATH=/usr/local/opt/llvm@7/ -DCMAKE_INSTALL_PREFIX=$(pwd)
|
||||||
make VERBOSE=1
|
make VERBOSE=1
|
||||||
make install
|
make install
|
||||||
|
|
||||||
|
|||||||
@ -27,8 +27,8 @@ if(MSVC)
|
|||||||
else()
|
else()
|
||||||
find_path(CLANG_INCLUDE_DIRS NAMES clang/Frontend/ASTUnit.h
|
find_path(CLANG_INCLUDE_DIRS NAMES clang/Frontend/ASTUnit.h
|
||||||
PATHS
|
PATHS
|
||||||
/usr/lib/llvm/6/include
|
/usr/lib/llvm/7/include
|
||||||
/usr/lib/llvm-6.0/include
|
/usr/lib/llvm-7.0/include
|
||||||
/mingw64/include)
|
/mingw64/include)
|
||||||
|
|
||||||
macro(FIND_AND_ADD_CLANG_LIB _libname_)
|
macro(FIND_AND_ADD_CLANG_LIB _libname_)
|
||||||
@ -36,8 +36,8 @@ else()
|
|||||||
find_library(CLANG_${_prettylibname_}_LIB NAMES ${_libname_}
|
find_library(CLANG_${_prettylibname_}_LIB NAMES ${_libname_}
|
||||||
PATHS
|
PATHS
|
||||||
${CLANG_LIBDIRS}
|
${CLANG_LIBDIRS}
|
||||||
/usr/lib/llvm/6/lib
|
/usr/lib/llvm/7/lib
|
||||||
/usr/lib/llvm-6.0/lib
|
/usr/lib/llvm-7.0/lib
|
||||||
/mingw64/lib
|
/mingw64/lib
|
||||||
/c/msys64/mingw64/lib
|
/c/msys64/mingw64/lib
|
||||||
c:\\msys64\\mingw64\\lib)
|
c:\\msys64\\mingw64\\lib)
|
||||||
|
|||||||
@ -8,12 +8,12 @@
|
|||||||
# LLVM_LIBDIRS
|
# LLVM_LIBDIRS
|
||||||
|
|
||||||
find_program(LLVM_CONFIG_EXE
|
find_program(LLVM_CONFIG_EXE
|
||||||
NAMES llvm-config-6.0 llvm-config
|
NAMES llvm-config-7.0 llvm-config
|
||||||
PATHS
|
PATHS
|
||||||
"/mingw64/bin"
|
"/mingw64/bin"
|
||||||
"/c/msys64/mingw64/bin"
|
"/c/msys64/mingw64/bin"
|
||||||
"c:/msys64/mingw64/bin"
|
"c:/msys64/mingw64/bin"
|
||||||
"C:/Libraries/llvm-6.0.0/bin")
|
"C:/Libraries/llvm-7.0.0/bin")
|
||||||
|
|
||||||
if(NOT(CMAKE_BUILD_TYPE STREQUAL "Debug"))
|
if(NOT(CMAKE_BUILD_TYPE STREQUAL "Debug"))
|
||||||
execute_process(
|
execute_process(
|
||||||
@ -62,7 +62,7 @@ execute_process(
|
|||||||
set(LLVM_LIBRARIES ${LLVM_LIBRARIES} ${LLVM_SYSTEM_LIBS})
|
set(LLVM_LIBRARIES ${LLVM_LIBRARIES} ${LLVM_SYSTEM_LIBS})
|
||||||
|
|
||||||
if(NOT LLVM_LIBRARIES)
|
if(NOT LLVM_LIBRARIES)
|
||||||
find_library(LLVM_LIBRARIES NAMES LLVM LLVM-6.0 LLVM-6)
|
find_library(LLVM_LIBRARIES NAMES LLVM LLVM-7.0 LLVM-7)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
link_directories("${CMAKE_PREFIX_PATH}/lib")
|
link_directories("${CMAKE_PREFIX_PATH}/lib")
|
||||||
|
|||||||
@ -148,7 +148,6 @@ static const Os os_list[] = {
|
|||||||
OsRTEMS,
|
OsRTEMS,
|
||||||
OsNaCl, // Native Client
|
OsNaCl, // Native Client
|
||||||
OsCNK, // BG/P Compute-Node Kernel
|
OsCNK, // BG/P Compute-Node Kernel
|
||||||
OsBitrig,
|
|
||||||
OsAIX,
|
OsAIX,
|
||||||
OsCUDA, // NVIDIA CUDA
|
OsCUDA, // NVIDIA CUDA
|
||||||
OsNVCL, // NVIDIA OpenCL
|
OsNVCL, // NVIDIA OpenCL
|
||||||
@ -159,6 +158,7 @@ static const Os os_list[] = {
|
|||||||
OsWatchOS, // Apple watchOS
|
OsWatchOS, // Apple watchOS
|
||||||
OsMesa3D,
|
OsMesa3D,
|
||||||
OsContiki,
|
OsContiki,
|
||||||
|
OsAMDPAL,
|
||||||
OsZen,
|
OsZen,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -181,7 +181,6 @@ static const ZigLLVM_EnvironmentType environ_list[] = {
|
|||||||
ZigLLVM_MSVC,
|
ZigLLVM_MSVC,
|
||||||
ZigLLVM_Itanium,
|
ZigLLVM_Itanium,
|
||||||
ZigLLVM_Cygnus,
|
ZigLLVM_Cygnus,
|
||||||
ZigLLVM_AMDOpenCL,
|
|
||||||
ZigLLVM_CoreCLR,
|
ZigLLVM_CoreCLR,
|
||||||
ZigLLVM_OpenCL,
|
ZigLLVM_OpenCL,
|
||||||
ZigLLVM_Simulator,
|
ZigLLVM_Simulator,
|
||||||
@ -280,8 +279,6 @@ static ZigLLVM_OSType get_llvm_os_type(Os os_type) {
|
|||||||
return ZigLLVM_NaCl;
|
return ZigLLVM_NaCl;
|
||||||
case OsCNK:
|
case OsCNK:
|
||||||
return ZigLLVM_CNK;
|
return ZigLLVM_CNK;
|
||||||
case OsBitrig:
|
|
||||||
return ZigLLVM_Bitrig;
|
|
||||||
case OsAIX:
|
case OsAIX:
|
||||||
return ZigLLVM_AIX;
|
return ZigLLVM_AIX;
|
||||||
case OsCUDA:
|
case OsCUDA:
|
||||||
@ -302,6 +299,8 @@ static ZigLLVM_OSType get_llvm_os_type(Os os_type) {
|
|||||||
return ZigLLVM_Mesa3D;
|
return ZigLLVM_Mesa3D;
|
||||||
case OsContiki:
|
case OsContiki:
|
||||||
return ZigLLVM_Contiki;
|
return ZigLLVM_Contiki;
|
||||||
|
case OsAMDPAL:
|
||||||
|
return ZigLLVM_AMDPAL;
|
||||||
}
|
}
|
||||||
zig_unreachable();
|
zig_unreachable();
|
||||||
}
|
}
|
||||||
@ -349,8 +348,6 @@ static Os get_zig_os_type(ZigLLVM_OSType os_type) {
|
|||||||
return OsNaCl;
|
return OsNaCl;
|
||||||
case ZigLLVM_CNK:
|
case ZigLLVM_CNK:
|
||||||
return OsCNK;
|
return OsCNK;
|
||||||
case ZigLLVM_Bitrig:
|
|
||||||
return OsBitrig;
|
|
||||||
case ZigLLVM_AIX:
|
case ZigLLVM_AIX:
|
||||||
return OsAIX;
|
return OsAIX;
|
||||||
case ZigLLVM_CUDA:
|
case ZigLLVM_CUDA:
|
||||||
@ -371,6 +368,8 @@ static Os get_zig_os_type(ZigLLVM_OSType os_type) {
|
|||||||
return OsMesa3D;
|
return OsMesa3D;
|
||||||
case ZigLLVM_Contiki:
|
case ZigLLVM_Contiki:
|
||||||
return OsContiki;
|
return OsContiki;
|
||||||
|
case ZigLLVM_AMDPAL:
|
||||||
|
return OsAMDPAL;
|
||||||
}
|
}
|
||||||
zig_unreachable();
|
zig_unreachable();
|
||||||
}
|
}
|
||||||
@ -400,7 +399,6 @@ const char *get_target_os_name(Os os_type) {
|
|||||||
case OsRTEMS:
|
case OsRTEMS:
|
||||||
case OsNaCl: // Native Client
|
case OsNaCl: // Native Client
|
||||||
case OsCNK: // BG/P Compute-Node Kernel
|
case OsCNK: // BG/P Compute-Node Kernel
|
||||||
case OsBitrig:
|
|
||||||
case OsAIX:
|
case OsAIX:
|
||||||
case OsCUDA: // NVIDIA CUDA
|
case OsCUDA: // NVIDIA CUDA
|
||||||
case OsNVCL: // NVIDIA OpenCL
|
case OsNVCL: // NVIDIA OpenCL
|
||||||
@ -411,6 +409,7 @@ const char *get_target_os_name(Os os_type) {
|
|||||||
case OsWatchOS: // Apple watchOS
|
case OsWatchOS: // Apple watchOS
|
||||||
case OsMesa3D:
|
case OsMesa3D:
|
||||||
case OsContiki:
|
case OsContiki:
|
||||||
|
case OsAMDPAL:
|
||||||
return ZigLLVMGetOSTypeName(get_llvm_os_type(os_type));
|
return ZigLLVMGetOSTypeName(get_llvm_os_type(os_type));
|
||||||
}
|
}
|
||||||
zig_unreachable();
|
zig_unreachable();
|
||||||
@ -749,7 +748,6 @@ uint32_t target_c_type_size_in_bits(const ZigTarget *target, CIntType id) {
|
|||||||
case OsRTEMS:
|
case OsRTEMS:
|
||||||
case OsNaCl:
|
case OsNaCl:
|
||||||
case OsCNK:
|
case OsCNK:
|
||||||
case OsBitrig:
|
|
||||||
case OsAIX:
|
case OsAIX:
|
||||||
case OsCUDA:
|
case OsCUDA:
|
||||||
case OsNVCL:
|
case OsNVCL:
|
||||||
@ -761,6 +759,7 @@ uint32_t target_c_type_size_in_bits(const ZigTarget *target, CIntType id) {
|
|||||||
case OsMesa3D:
|
case OsMesa3D:
|
||||||
case OsFuchsia:
|
case OsFuchsia:
|
||||||
case OsContiki:
|
case OsContiki:
|
||||||
|
case OsAMDPAL:
|
||||||
zig_panic("TODO c type size in bits for this target");
|
zig_panic("TODO c type size in bits for this target");
|
||||||
}
|
}
|
||||||
zig_unreachable();
|
zig_unreachable();
|
||||||
|
|||||||
@ -17,6 +17,7 @@ struct ArchType {
|
|||||||
ZigLLVM_SubArchType sub_arch;
|
ZigLLVM_SubArchType sub_arch;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Synchronize with target.cpp::os_list
|
||||||
enum Os {
|
enum Os {
|
||||||
OsFreestanding,
|
OsFreestanding,
|
||||||
OsAnanas,
|
OsAnanas,
|
||||||
@ -38,7 +39,6 @@ enum Os {
|
|||||||
OsRTEMS,
|
OsRTEMS,
|
||||||
OsNaCl, // Native Client
|
OsNaCl, // Native Client
|
||||||
OsCNK, // BG/P Compute-Node Kernel
|
OsCNK, // BG/P Compute-Node Kernel
|
||||||
OsBitrig,
|
|
||||||
OsAIX,
|
OsAIX,
|
||||||
OsCUDA, // NVIDIA CUDA
|
OsCUDA, // NVIDIA CUDA
|
||||||
OsNVCL, // NVIDIA OpenCL
|
OsNVCL, // NVIDIA OpenCL
|
||||||
@ -49,6 +49,7 @@ enum Os {
|
|||||||
OsWatchOS, // Apple watchOS
|
OsWatchOS, // Apple watchOS
|
||||||
OsMesa3D,
|
OsMesa3D,
|
||||||
OsContiki,
|
OsContiki,
|
||||||
|
OsAMDPAL,
|
||||||
OsZen,
|
OsZen,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -333,7 +333,6 @@ enum ZigLLVM_OSType {
|
|||||||
ZigLLVM_RTEMS,
|
ZigLLVM_RTEMS,
|
||||||
ZigLLVM_NaCl, // Native Client
|
ZigLLVM_NaCl, // Native Client
|
||||||
ZigLLVM_CNK, // BG/P Compute-Node Kernel
|
ZigLLVM_CNK, // BG/P Compute-Node Kernel
|
||||||
ZigLLVM_Bitrig,
|
|
||||||
ZigLLVM_AIX,
|
ZigLLVM_AIX,
|
||||||
ZigLLVM_CUDA, // NVIDIA CUDA
|
ZigLLVM_CUDA, // NVIDIA CUDA
|
||||||
ZigLLVM_NVCL, // NVIDIA OpenCL
|
ZigLLVM_NVCL, // NVIDIA OpenCL
|
||||||
@ -344,10 +343,12 @@ enum ZigLLVM_OSType {
|
|||||||
ZigLLVM_WatchOS, // Apple watchOS
|
ZigLLVM_WatchOS, // Apple watchOS
|
||||||
ZigLLVM_Mesa3D,
|
ZigLLVM_Mesa3D,
|
||||||
ZigLLVM_Contiki,
|
ZigLLVM_Contiki,
|
||||||
|
ZigLLVM_AMDPAL, // AMD PAL Runtime
|
||||||
|
|
||||||
ZigLLVM_LastOSType = ZigLLVM_Contiki
|
ZigLLVM_LastOSType = ZigLLVM_AMDPAL
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Synchronize with target.cpp::environ_list
|
||||||
enum ZigLLVM_EnvironmentType {
|
enum ZigLLVM_EnvironmentType {
|
||||||
ZigLLVM_UnknownEnvironment,
|
ZigLLVM_UnknownEnvironment,
|
||||||
|
|
||||||
@ -368,7 +369,6 @@ enum ZigLLVM_EnvironmentType {
|
|||||||
ZigLLVM_MSVC,
|
ZigLLVM_MSVC,
|
||||||
ZigLLVM_Itanium,
|
ZigLLVM_Itanium,
|
||||||
ZigLLVM_Cygnus,
|
ZigLLVM_Cygnus,
|
||||||
ZigLLVM_AMDOpenCL,
|
|
||||||
ZigLLVM_CoreCLR,
|
ZigLLVM_CoreCLR,
|
||||||
ZigLLVM_OpenCL,
|
ZigLLVM_OpenCL,
|
||||||
ZigLLVM_Simulator,
|
ZigLLVM_Simulator,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user