summaryrefslogtreecommitdiff
path: root/build.sh
AgeCommit message (Collapse)AuthorFilesLines
2016-03-08Merge pull request #3577 from gkhanna79/FixUbuntu15Gaurav Khanna1-1/+4
Fix Ubuntu 15.10 Build break
2016-03-07Fix Ubuntu 15.10 Build breakGaurav Khanna1-1/+4
2016-03-08ARM: skip generating native image for mscorlib in case of cross buildGeunsik Lim1-8/+10
We need to skip generating native image for mscorlib in build_mscorlib() of ./coreclr/build.sh when we do cross build for Linux/ARM on Ubuntu 14.04 x86 64bit PC. Signed-off-by: Geunsik Lim geunsik.lim@samsung.com Signed-off-by: Prajwal A N an.prajwal@samsung.com Signed-off-by: MyungJoo Ham myungjoo.ham@samsung.com
2016-03-07ARM: Remove Distro/OS that have not been testedGeunsik Lim1-6/+0
Let's remove rest Distro/OSes to keep only the Distro/OS that have been tested until someone actually start using/testing CoreCLR on RHEL, Debian, OSX, and so on. Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
2016-03-05Add arm[64] to isMSBuildOnNETCoreSupported()Geunsik Lim1-0/+13
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
2016-02-25Remove need for mono resgenMatt Ellis1-3/+1
The last remaining dependency on mono was to use the resgen implementation since cross platform we don't have a version of ResGen.exe. While MSBuild and dotnet-resgen can both convert txt files into resources, neither of them understand the #if syntax we use in mscorlib.txt to allow us to remove resources if features of the runtime are not enabled. Since we already have a dependency on Python, I've added a dead simple script that understands the limited preprocessor features we support and pre-processes the text file. We can then pass that preprocessed file to MSBuild which will handle converting it to a .resources file. [tfs-changeset: 1579180]
2016-02-19Fixes to build CentOS CoreCLR Nuget PackageGaurav Khanna (CLR)1-5/+6
2016-02-10Add new parameter with settable option: cmakeargsKamil Rytarowski1-7/+24
This will allow to pass user-defined CMake arguments. One of the users is pkgsrc, which defines it to following example string: -DPYVERSSUFFIX:STRING=2.7 -DCMAKE_INSTALL_PREFIX:PATH=/usr/pkg \ -DCMAKE_MODULE_PATH:PATH=/tmp/pkgsrc-tmp/wip/coreclr-git/work/.buildlink/cmake-Modules \ -DCMAKE_SKIP_RPATH:BOOL=TRUE -DCMAKE_INSTALL_LIBDIR:PATH=lib \ -DCMAKE_INSTALL_MANDIR:PATH=man Without these values unmodified build.sh won't integrate with pkgsrc as expected. Solution suggested by Jan Vorli (Microsoft) While there, there was need to alter loop type to handle options passed to arguments. As a bonus, new loop should be POSIX confirming.
2016-02-08Check for Mono presence until CoreCLR 3090 is fixed.Gaurav Khanna1-0/+2
2016-02-08Update CI to no longer request mscorlib build for osx/ubuntu on Windows.Gaurav Khanna (CLR)1-18/+20
2016-02-07Change to support Microsoft.NetCore.Runtime.CoreCLR nuget package generation.Gaurav Khanna (CLR)1-36/+108
2016-01-24Updates based on review commentsJohn Chen1-17/+3
2016-01-23Build mscorlib with CoreCLR MSBuild on LinuxJohn Chen1-5/+13
2016-01-23[xplat] uname -p reports unknown on some arch -- fall back to uname -mGeoff Norton1-0/+5
2016-01-21Merge pull request #2772 from ramarag/fixincrementabuildJan Kotas1-10/+23
Fix incremental build
2016-01-21Merge pull request #2781 from krytarowski/netbsd-support-3Jan Kotas1-0/+2
NetBSD: Add support for retrieving the number of available CPUs
2016-01-21Generating Event Logging Headers From CMake for LinuxDDCloud1-10/+23
Conflicts: build.sh
2016-01-21NetBSD: Add support for retrieving the number of available CPUsKamil Rytarowski1-0/+2
$ uname NetBSD $ getconf NPROCESSORS_ONLN 2 $ getconf _NPROCESSORS_ONLN getconf: _NPROCESSORS_ONLN: unknown variable
2016-01-21NetBSD: Add PYTHON env variable for build.sh to specify python exec nameKamil Rytarowski1-3/+5
This allows to overload the default 'python' executable name and is used on NetBSD with pkgsrc, where python is either python2.7 or python3.x.
2016-01-13Add configureonly and skipconfigure to builds.Pat Gavlin1-100/+124
These options allow the developer to either: 1. Run build configuration without actually running the build, or 2. Skip build configuration when running the build. CMake already adds the various CMakeLists.txt files as build dependencies s.t. it will be automatically re-run when necessary.
2016-01-12Clean up build.shBruce Forstall1-80/+103
Fix some typos. Make it more readable.
2016-01-06Improve and clean-up build.cmdBruce Forstall1-2/+7
1. Change logging verbosity so there is much, much less noise on the screen. All the build output is still logged to a .log file. 2. Add separate .wrn and .err log files to capture warning and error output. 3. Add "skipmscorlib" option to skip the mscorlib build steps. 4. Add "skipnative" option to skip the native components build steps. 5. Change the "skiptestbuild" option to "skiptests" to match build.sh. Continue accepting "skiptestbuild" for backwards compatibility. 6. Change the "skipcoreclr" option in build.sh to "skipnative" to match build.cmd. Continue accepting "skipcoreclr" for backwards compatibility. 7. Add "msbuildargs" option to pass all remaining arguments directly to msbuild. 8. Add "sequential" option to build sequentially (disable parallel builds). One use: this simplifies reading the build logs. 9. Update the Usage output to be correct, and easier to understand. 10. Regularize script output; most lines now have a "BUILD:" prefix, so you know where they are coming from. 11. Restructure and simplified the script to be more readable and easier to modify in the future. 12. Added support for setting __echo=1 to see what the script is doing, line-by-line. 13. Added additional ways to view the usage screen (-? /h -h /help -help)
2015-12-31 Enable Incremental build For Generated FilesRama Krishnan Raghupathy1-10/+21
2015-12-28Automating Event Logging Infrastructure: With this change the infrastructure ↵Rama1-0/+19
required for Event Logging will be generated as part of build
2015-12-21Merge pull request #2425 from erozenfeld/CheckedBuildJan Kotas1-2/+5
Enable checked builds of CoreCLR.
2015-12-21Enable checked builds of CoreCLR.Eugene Rozenfeld1-2/+5
In checked builds coreclr, mscorlib, and the test are built optimized but assertion checking is on. This adds additional coverage (the jit is optimizing and assertion checking is on), speeds up testing compared to debug, and allows testing JIT stress modes. This doesn't affect CoreFX. Several tests are currently failing in checked configuration due to newly discovered bugs (JIT asserts). We didn't see these asserts in debug mode because by default JIT is in minopt mode; we didn't see these bugs in release mode because assertion checking is off. I will file the bugs once checked build changes are in.
2015-12-19Initial support for building on SmartOStaylorjonl1-0/+4
2015-11-24Merge pull request #2148 from manu-silicon/buildJan Kotas1-7/+34
Build script now use current platform to compile
2015-11-24Build script now use current platform to compileManu1-7/+34
No need to specify the architecture to compile on Linux, we use "uname -p" to infer it. Removed __MSBuildBuildArch which was not really used, we can use __BuildArch instead. Added warning for x86.
2015-11-24Consistency fix for shell variablesManu1-6/+6
Use 0 instead of false since later we compare it with 1.
2015-11-09Add support for ninja to the CoreCLR build.Pat Gavlin1-4/+18
Just what it says on the tin.
2015-10-16Pass __IntermediatesDir to msbuild in build.shNate Amundson1-2/+12
Currently, building coreclr x-plat fails if not running as root due to the build trying to copy files to "/ToolRuntime". The issue is that $(IntermediatesOutputRootPath) is not set when running from build.sh, and testruntime.targets in buildtools defines ToolRuntimePath as "$(IntermediateOutputRootPath)ToolRuntime\". The fix is to pass __IntermediatesDir to msbuild in build_mscorlib, which results in $(IntermediatesOutputRootPath) being properly set. This change also adds a skipcoreclr flag to allow the user to skip the CoreCLR part of the build, similar to the existing skipmscorlib flag.
2015-10-13Using DotNetCore version of BclRewriter in mscorlib buildJose Perez Rodriguez1-1/+17
2015-10-02On builds outside Windows, build native test components by defaultKoundinya Veluri1-4/+6
2015-09-15Enable building coreclr tests on LinuxAditya Mandaleeka1-5/+10
2015-09-04Build Code Coverage instrumented binaries for native bianries in Linux and OSX.Sridhar Periyasamy1-5/+8
Add an option in build.sh called 'coverage' to produce gcov-style instrumented builds. Example usage - ./build.sh debug coverage clean This will generate the '.gcno' notes files for each object file in the same directory along with the instrumented native binaries. These .gcno files contain some of the coverage data like source line mappings, basic block graphs info etc. Each time these instrumented binaries are run, a separate .gcda file is created for each object file in the same directory. These .gcda files contain arc transition counts, and some summary information. Code Coverage reports can be generated from the .gcno and .gcda files using a tool like gcovr or lcov. *But this commit is only for generated the .gcno files while compiling with the 'coverage' option.* The next steps - Add option in run-test.sh to generate code-coverage reports using the instrumented native binaries. - Integrate with Jenkins CI to do code-coverage runs.
2015-09-01Fix release build of mscorlib from build.shMatt Ellis1-1/+6
The mscorlib build in build.sh was not correctly flowing __BuildType into MSBuild, which caused us to always build a Debug mscorlib. While I was in the area, I removed the defines for OSGroup (which are unused, as we use __BuildOS instead) and cleaned up some of the property switches so we always pass prefixed properties (the bare names are the computed ones from our targets in msbuild).
2015-08-27Fix build regression for ARM.Ben Pye1-1/+1
Allow mscorlib.dll to be built for non x64 platforms on Linux.
2015-08-17Build mscolrib.dll on UnixMatt Ellis1-13/+70
Initial work to get mscorlib.dll building via Roslyn + MSBuild running on top of Mono on Linux. - Use a newer version of BclRewriter.exe which works cross-platform, the major difference here is that now we need to specify the input assembly as a named argument instead (since fully qualified paths on Unix look like flags on Windows). - The ResGen we use comes from Mono, which does not support the -d flag, so we need to stop passing defines to ResGen. I know the mono folks recently did some work to address this, but long term we need to move towards getting our ResGen.exe running on CoreCLR and use that instead. - Don't require that mono is installed in order to build coreclr. If mono is not on the path, skip the build step to enable folks to do development without Mono. In this case, they will need to continue to build mscorlib.dll on Windows, targeting Unix. - Mono stability has been an issue for folks that have buddy tested this. I've found that recent mono 4.2 builds, when run with the Boehm GC work well for me. Other folks have other builds they like instead. The `skipmscorlib` flag can be passed to build.sh if you want to skip building mscorlib.dll locally.
2015-08-13Add skipmscorlib option to build.shMatt Ellis1-0/+2
In perperation for supporting mscorlib.dll builds on *NIX, provide a switch for the CI system to disable building mscorlib as part of the build, since we pick up the cross compiled Linux version and our mono seems to crash often in CI. Once this is checked in we can start having the CI jobs pass this switch without causing an error, then have a future commit which enables mscorlib building key off it.
2015-08-04Add cross compilation support for ARM and ARM64.Ben Pye1-2/+16
2015-07-27[aarch64] Initial aarch64/linux bring upGeoff Norton1-0/+4
2015-07-24Add ARM target for CoreCLR on Linux.Ben Pye1-2/+6
c_runtime/vprintf/test1 is disabled as casting NULL to va_list is against the C specification. Fix SetFilePointer tests on 32 bit platforms. Define _FILE_OFFSET_BITS=64 so that we have long file support on 32 bit platforms. Implement context capture/restore for ARM. Link libgcc_s before libunwind on ARM so C++ exceptions work. Translate armasm to gas syntax. Specify Thumb, VFPv3, ARMv7 for the ARM target. Add ARM configuration to mscorlib build Implement GetLogicalProcessorCacheSizeFromOS in PAL. Set UNWIND_CONTEXT_IS_UCONTEXT_T from configure check.
2015-05-01Only clean previous output for the selected configuration.Tanner Gooding1-2/+9
This modifies the `build.cmd`, `build.sh`, and `buildtest.cmd` to only remove previous output (binaries, intermediates, and logs) for the selected configuration when the `clean` argument is specified. This also modifies `runtest.cmd` to output log files in the same format as `build.cmd`, `build.sh`, and `buildtest.cmd` do currently.
2015-04-24basic NetBSD platform supportJustin Cormack1-0/+4
2015-04-22Add optional arguments for choosing clang version and verbose build outputJan Henke1-3/+28
This commit adds two optional arguments to build.sh. The "verbose" option enables verbose build output. This can be useful to debug build failures by seeing the complete command line used to invoke the build. The other option is "clangx.y", which allows to specify the clang version used for the build. This makes it easy to test different clang versions and aid future migration to newer clang releases and other platforms. Closes #740
2015-04-15Use "x64" and not "amd64" in build.shMatt Ellis1-2/+2
The help text for build.sh said that you should pass "x64" as a paramter for the build architecture. However, the script was looking for amd64. Update the script to look for x64 since that's what we use everywhere else (and the behavior you got if you didn't pass an argument to this script.) Fixes #689
2015-03-31Change paths and os names to match corefxMatt Mitchell1-12/+12
* binaries is now bin, intermediates is now obj * modifying unixmscorlib build to instead be linuxmscorlib + osxmscorlib. * Change OS=Unix to OS=Linux/OS=OSX and modified properties to mimic corefx's TargetsUnix.
2015-03-25build.sh: Fix CPU-count detection on FreeBSD.Jostein Kjonigsen1-1/+5
2015-03-16fix build on OpenBSDAaron Bieber1-0/+4
fix indent more indent fix indenting