Commit Graph

2328 Commits

Author SHA1 Message Date
kai
2addbd2b71 More changes to the build system.
- Relax version checking because we intend to have only a single branch
- Exclude ldfpu.asm from build with MSVC-32 (reported by huynh van sen)
- Fix FindLLVM.cmake to work on Windows again
2012-07-28 22:41:34 +02:00
kai
41bf3ea5c8 Fix warning about casting away constness by using const_cast<>. 2012-07-25 18:20:42 +02:00
Kai Nacke
ff7b4a78fd Merge pull request #146 from redstar/simplify2
Simplify CMakeLists.txt.
2012-07-25 09:13:46 -07:00
kai
508dd9ff70 Simplify CMakeLists.txt.
This version works with LLVM 3.0 and 3.1.
2012-07-24 23:33:15 +02:00
David Nadlinger
1c1c6894e0 Only link CURL when building Phobos as shared library. 2012-07-24 19:17:24 +02:00
David Nadlinger
61e4d9044a Fix build on Linux.
Sorry for that, seems to work on OS X, even on case-sensitive file systems.
2012-07-24 19:13:31 +02:00
David Nadlinger
cb94195439 Merge pull request #144 from dansanduleac/master
Fix missing curl dependency from phobos
2012-07-21 13:05:37 -07:00
Dan Sanduleac
5ed0ee96da Fix missing curl dependency from phobos 2012-07-21 15:57:58 -04:00
kai
54d054b00c Fix #142. 2012-07-20 18:43:32 +02:00
kai
a69c90ee6a Change error message for -mtriple argument. Should finally fix #130. 2012-07-20 17:29:56 +02:00
kai
b71429fc2a Differentiate between Win32 and MinGW.
Removes also serach for OS name windows because this is unsupported by LLVM.
2012-07-20 06:48:29 +02:00
kai
55366bc319 Add std.net to list of phobos modules. Fixes #139. 2012-07-18 12:51:20 +02:00
kai
d986d08f37 Add info about registered targets (mimic LLVM tools). 2012-07-16 23:32:57 +02:00
kai
2ae6b3962a Update to druntime (ldc.memory). 2012-07-15 11:33:28 +02:00
kai
d78fee1b7f Add version identifier for Win64. 2012-07-14 21:46:39 +02:00
kai
32a2fff634 Add more compiler flags for MSVC. 2012-07-14 21:45:24 +02:00
kai
cb77cca0d3 Fix bug in ComplexExp::toChars(). Also fixed in dmd 2.060. 2012-07-14 19:55:52 +02:00
kai
0b45147aee Updated druntime (ldc.memory). 2012-07-14 18:59:29 +02:00
kai
fcd3ac6a11 Do not add a second underscore to naked functions on Windows.
This leads to missing symbols during linking on Windows x64. If
this changes breaks other Windows platforms then we have to analyze
the triple instead of global.params.os.
2012-07-14 18:25:27 +02:00
David Nadlinger
f7e5245e03 Fix #138 – in precondition of methods broken in D1.
Not sure why the code was special-cased for D2 in the first place –
are there any cases where we expect a »full« context struct in the
contracts for D1. At least, they don't occur in DStress/Tango/….

As a general note, this is one of many bugs which would have not gone
unnoticed if we didn't use so many bitcasts.
2012-07-13 11:38:56 +02:00
David Nadlinger
67fd824543 Merged alexrp's initial ARM patches.
The Phobos changes have, as far as I can tell, already landed in
upstream master as well. But since 2.060 will probably take some time
to arrive, I figured it makes sense to merge them right now, so that
collaboration on ARM support can continue.
2012-07-11 23:03:26 +02:00
David Nadlinger
8a27c94ce8 Merge pull request #137 from alexrp/master
Define ARM even in Thumb mode.
2012-07-09 05:25:54 -07:00
alexrp
b12784aa4e Define ARM even in Thumb mode. 2012-07-08 03:25:49 +02:00
David Nadlinger
c630ab56ff Fix #136 - return static arrays as sret parameters on non-x86.
This should eventually be done on x86 and x86_64 as well, but as
discussed in GitHub issue #110/pull request #120, the ABI there needs a
closer look: at least on x86_64, we need to treat static arrays exactly
like if they were a struct containing T.length members of the same type
to be compatible with DMD (as soon as the ABI is correctly implemented
there, that is).

While for this reason I want to avoid a ABI change which could silently
break some code only to change the x86 ABI again shortly after, this
commit only touches the "default" ABI for unknown targets and thus
should be safe (as we give absoultely no ABI guarantees there anyway).
2012-07-07 23:53:46 +02:00
David Nadlinger
279f64a08d Merged druntime. 2012-07-07 21:33:00 +02:00
David Nadlinger
f6d07ba0b3 Fix #135 – -o- broken with LDMD. 2012-07-06 21:55:19 +02:00
kai
0d7c0869a5 Replace find-alt-triple.sh with CMake regular expressions.
This has the advantage that it works on Windows, too.
2012-06-25 23:42:58 +02:00
David Nadlinger
cef19fb225 Fix #125 – Nested class context pointer invalid (D1).
Patch originally by Alexey Prokhin, thanks.
2012-06-24 16:18:47 +02:00
David Nadlinger
67f12fe8b5 Fixed DSource #330 – Many-at-a-time nested context crash (D1). 2012-06-24 11:30:32 +02:00
David Nadlinger
1480501f43 Just use -lib now that we have it. 2012-06-24 11:29:26 +02:00
David Nadlinger
05bf3dbaec Updated druntime (cas for classes). 2012-06-24 00:09:10 +02:00
David Nadlinger
c84ce8044e Merged druntime. 2012-06-23 23:38:54 +02:00
David Nadlinger
fa6af6341a Fix #121 - merged druntime fix. 2012-06-23 18:43:33 +02:00
David Nadlinger
70384cc05f Fix #125 - merged druntime fix. 2012-06-23 17:29:38 +02:00
David Nadlinger
61e61e47f0 Fix #125 - fix generation of nested context chains.
Just declaring the type of the parent is obviously not enoguh, we need to have run this very code for determining level and context type (if the parent is also nested, that is).
2012-06-23 17:05:59 +02:00
kai
0c6fcc12ec Revert "Fix some parameter lists." because it breaks Linux build.
This reverts commit 0c5bd04aab.
2012-06-22 06:59:12 +02:00
kai
0c5bd04aab Fix some parameter lists.
With this commit it is possible to build LDC/LDC2 with MSVC via CMake.
2012-06-21 06:44:52 +02:00
David Nadlinger
6f236518b5 Fixes #123 – Linking of pre/post-condition in interface fails when interface implemented in separate module. 2012-06-19 22:37:46 +02:00
David Nadlinger
e7afd77313 Merge pull request #128 from redstar/cmake_libconfig
New CMake module to locate libconfig++
2012-06-19 12:31:05 -07:00
kai
79c02f2a79 Remove some old variables which are unused now. 2012-06-19 18:08:42 +02:00
kai
eb008fac44 Fixed wrong default value for LIBCONFIG++_FOUND 2012-06-19 06:52:46 +02:00
kai
51256b8c82 Fixed a wrong variable reference. 2012-06-19 06:44:36 +02:00
kai
6dd643608a Fix for review comments. 2012-06-18 21:26:18 +02:00
kai
c5eba4a98b New CMake module to locate libconfig++
The current code to locate libconfig++ has some trouble:
- It is located in the main CMakeList file but should be a module of its own
- It depends on pkg-config which is not available on Windows
- The returned values are not really useful therefore the library name is hard coded

This commit tries to solve these problems. For a Unix-like system there should be no difference.
Additionally, you can override the variables on the command line which is useful for builds on Windows.
2012-06-18 19:50:11 +02:00
kai
920c563c7e More MSVC related changes to CMakeLists.txt.
- Added new variable for MSVC specific compiler flags
- Added custom target for MASM support
2012-06-18 19:21:58 +02:00
kai
93b2334803 Add more MSVC stuff to CMake files. 2012-06-15 12:20:02 +02:00
kai
9824a3a1f8 2nd attempt to compile ldmd with MSVC.
This reverts the previous commits and reduces MSVC odditites to a single place.
2012-06-15 12:13:27 +02:00
kai
3eef7b7d55 First attempt to create build files for MSVC. 2012-06-13 18:23:39 +02:00
kai
15ed853402 Add code to compile ldmd with MSVC. 2012-06-13 18:23:07 +02:00
kai
95cb8af435 No need to exclude non-existing file root/win32.c from build. 2012-06-13 07:14:29 +02:00