Closed GoogleCodeExporter closed 9 years ago
[deleted comment]
This issue was updated by revision 5937a4f7b5b3.
SALVIA:
Add all-in-one build script.
Support boost build.
Original comment by wuye9036
on 18 Sep 2011 at 12:43
This issue was updated by revision 53ab98f88f65.
SALVIA:
Add cmake to build configuration.
Original comment by wuye9036
on 18 Sep 2011 at 12:43
[deleted comment]
[deleted comment]
[deleted comment]
[deleted comment]
[deleted comment]
SALVIA的第三方依赖包括:
LLVM, FreeImage, GDI+(Win32), WTL(Win32), boost, threadpool
需要编译的有LLVM和boost
build_all的需求有:
1. 根据当前平台编译bjam(Done)
2. 根据目标平台编译boost,并记录library和include的路径
3. 调用CMake并使用正确的命令行参数配置LLVM
4. 使用LLVM生成Solution
5. Windows+Visual studio平台下调用devenv编译solution生成binary文件
6.
将生成出的头文件、原有头文件和库文件拷贝到正确的目录��
�。
7. 调用CMake配置SALVIA并生成工程
8. 使用devenv生成binary文件。
Original comment by wuye9036
on 17 Nov 2011 at 7:11
目录说明:
${HOME} SALVIA源代码的根目录。该目录下应该包含README
${BUILD} CMake配置的中间目录。
${BIN} 最终二进制文件的生成目录
${PLATFORM} 目标平台名称。包括win32,x64(win32 64bit)等。
${COMPILER} 编译器名称。格式为短名+版本号。
短名表:
msvc Microsoft Visual C++
mgw MinGW C++
icc Intel C++
gcc GCC c++ compiler
版本号由主版本号,次版本号和修订号构成。
对于MSVC 2005以上仅使用主版本号。
Intel C++不显示修订号。
如果修订号为0,则不显示修订号。
例:
MSVC 2005 --> msvc8
MSVC 2010 --> msvc10
Mingw 4.5.1 --> mgw451
${CONFIG} 配置选项。CMAKE支持DEBUG/RELEASE/RELWITHDEBINFO/RELMINSIZE四��
�。
${HOME}
3rd_party
src : 第三方源代码
llvm : LLVM源码
wtl : WTL源码
threadpool : Thead Pool 源码
llvm : 预编译LLVM库
config : LLVM 配置头文件
${PLATFORM}_{COMPILER}
llvm : 包含LLVM的CMake生成的Config和System文件夹
inlcude : LLVM头文件。直接从LLVM源代码中拷贝即可。
lib
${PLATFORM}_{COMPILER}_${CONFIG} : LLVM编译后生成的library
toolchains
${PLATFORM} : LLVM编译生成的工具链。包括llc,lli等可执行文件
Original comment by wuye9036
on 17 Nov 2011 at 9:19
${HOME}
bin
resource : 资源文件
${PLATFORM}
${CONFIG} : 最终生成的二进制文件。
Original comment by wuye9036
on 17 Nov 2011 at 10:20
编译说明:
Boost的编译:
* 从build_conf中获取boost路径至${BOOST}。
* 根据boost路径编译生成bjam至 ${BOOST}/bjam.exe。
* 使用bjam编译库,并stage至 ${BOOST}/${PLATFORM} 中。
* ${BOOST_LIB_DIRECTORY} = ${BOOST}/${PLATFORM}/lib
LLVM的编译:
* LLVM源代码路径为 ${HOME}/3rd_party/src/llvm。我们称为${LLVM}
* LLVM的安装路径为 ${HOME}/3rd_party/llvm。我们称之为${LLVM_INSTALL}
* LLVM的编译目录为 ${BUILD}/llvm/${PLATFORM}_${COMPILER}。我们称为${LLVM_BUILD}
* 使用CMake配置并生成Solution。设置LLVM_BOOST_STDINT为True,设置LLVM_BOOST_DIR为${BOOST}
* 编译LLVM。
* 拷贝 ${LLVM_BUILD}/include/llvm 下的 Config 和 Support 文件夹至 ${LLVM_INSTALL}/config/${PLATFORM}_{COMPILER}/llvm 文件夹下。
* 拷贝 ${LLVM}/include 至 ${HOME}/3rd_party/llvm下覆盖include文件夹。
* 拷贝 ${LLVM_BUILD}/lib/${CONFIG} 下所有库文件和符号文件至 ${LLVM_INSTALL}/lib/${PLATFORM}_{COMPILER}_${CONFIG}
* 拷贝 ${LLVM_BUILD}/bin/${CONFIG} 下所有可执行程序至 ${LLVM_INSTALL}/toolchains/${PLATFORM}_{COMPILER}_${CONFIG}
SALVIA的编译:
* SALVIA的编译目录为 ${BUILD}/salvia/${PLATFORM}_${COMPILER}
* 使用CMake配置并生成Solution。设置SALVIA_BOOST_DIRECTORY为${BOOST}
* 编译SALVIA
* 拷贝Boost dynamic libraries和LLVM dynamic libraries至bin目录(暂时不需要做)
Original comment by wuye9036
on 17 Nov 2011 at 10:20
Supplement:
LLVM的编译:
* 拷贝 ${LLVM_BUILD}/include/llvm/intrinsics.gen 至 ${LLVM_INSTALL}/config/${PLATFORM}_{COMPILER}/llvm 文件夹下。
Original comment by wuye9036
on 20 Nov 2011 at 9:29
Original comment by wuye9036
on 22 Nov 2011 at 12:41
Original comment by wuye9036
on 11 Dec 2011 at 2:03
Original comment by wuye9036
on 14 Dec 2011 at 9:02
I'll handle this one.
Original comment by wuye9036
on 15 Dec 2011 at 3:18
I'll handle this one.
Original comment by wuye9036
on 15 Dec 2011 at 3:18
Original comment by wuye9036
on 15 Dec 2011 at 3:18
This issue was updated by revision 214abcf7d333.
SALVIA:
Rename build_conf.py to build_conf.tmpl
Add llvm configuration to build_all.py.
Original comment by wuye9036
on 20 Dec 2011 at 1:52
Original comment by wuye9036
on 22 Dec 2011 at 3:29
This issue was updated by revision ffba256b3cd0.
SASL:
Rename build_scripts to blibs(build libs)
Add batch command to generate executable script.
Add code for build llvm generated solution.
Original comment by wuye9036
on 24 Dec 2011 at 1:52
This issue was updated by revision 94c7429a002e.
SALVIA:
Move some utility functions to blibs.
LLVM build and install works.
Start working on SALVIA build and install.
Original comment by wuye9036
on 24 Dec 2011 at 1:52
This issue was updated by revision 2b82c6d940b7.
SALVIA:
SALVIA is built by build script successful!
Original comment by wuye9036
on 24 Dec 2011 at 1:52
This issue was updated by revision 23769a95c1ff.
SALVIA:
Add copy_newer implementation.
Add short_compiler_name and boost_lib_name to toolset.
Finished build_all.py.
Original comment by wuye9036
on 24 Dec 2011 at 1:52
This issue was updated by revision 5e1913b79e2a.
SALVIA:
Add missing dependencies.
Enable seperated tests.
Original comment by wuye9036
on 24 Dec 2011 at 1:52
This issue was updated by revision cb8e48ceb7e2.
SASL:
Move build document from readme to doc.
Original comment by wuye9036
on 26 Dec 2011 at 3:42
This issue was updated by revision f817577419f1.
SALVIA:
Update build document.
Original comment by wuye9036
on 26 Dec 2011 at 3:42
This issue was updated by revision 9df4459da313.
SALVIA:
Remove old llvm install directory.
Original comment by wuye9036
on 26 Dec 2011 at 3:42
This issue was updated by revision 83f854a886b6.
SALVIA:
Move llvm source code from 3rd_party/src to 3rd_party.
Original comment by wuye9036
on 26 Dec 2011 at 3:42
This issue was updated by revision 704d52720c8c.
SASL:
Refactor build script.
Original comment by wuye9036
on 26 Dec 2011 at 3:42
This issue was updated by revision 34c47cf3998c.
SALVIA:
Now SALVIA will use platform-compiler-configuration independent prebuilt LLVM.
Unified platform name used in build script and cmake file.
Original comment by wuye9036
on 26 Dec 2011 at 3:42
This issue was updated by revision ea48b14baf88.
SALVIA:
Fixes bugs of build script.
Original comment by wuye9036
on 26 Dec 2011 at 3:42
Original comment by wuye9036
on 26 Dec 2011 at 4:48
This issue was updated by revision 6124ab2f81bc.
SALVIA:
Add VC Express support to build script.
Original comment by wuye9036
on 26 Dec 2011 at 10:54
Original issue reported on code.google.com by
wuye9036
on 18 Sep 2011 at 2:14