zig/test/standalone
Stephen Gutekanst 9836f1b2f9
add support for compiling Objective-C++ code (#10096)
* add support for compiling Objective-C++ code

Prior to this change, calling `step.addCSourceFiles` with Obj-C++ file extensions
(`.mm`) would result in an error due to Zig not being aware of that extension.
Clang supports an `-ObjC++` compilation mode flag, but it was only possible to use
if you violated standards and renamed your `.mm` Obj-C++ files to `.m` (Obj-C) to
workaround Zig being unaware of the extension.

This change makes Zig aware of `.mm` files so they can be compiled, enabling compilation
of projects such as [Google's Dawn WebGPU](https://dawn.googlesource.com/dawn/) using
a `build.zig` file only.

Helps hexops/mach#21

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>

* test/standalone: add ObjC++ compilation/linking test

Based on the existing objc example, just tweaked for ObjC++.

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2021-11-22 08:44:49 +01:00
..
brace_expansion std: fix regressions from this branch 2021-09-01 17:54:07 -07:00
c_compiler tests: disable LTO for windows until issues can be resolved 2021-11-16 12:44:44 -07:00
cat require specifier for arrayish types 2021-02-09 22:25:52 -08:00
empty_env update usage of std.testing in behavior and standalone tests 2021-05-08 15:15:30 +03:00
global_linkage update usage of std.testing in behavior and standalone tests 2021-05-08 15:15:30 +03:00
guess_number update guess number standalone test 2020-12-18 12:22:46 -07:00
hello_world fix code broken from previous commit 2021-06-21 17:03:03 -07:00
install_raw_hex migrate from std.Target.current to @import("builtin").target 2021-10-04 23:48:55 -07:00
issue_339 fix code broken from previous commit 2021-06-21 17:03:03 -07:00
issue_794 update usage of std.testing in behavior and standalone tests 2021-05-08 15:15:30 +03:00
issue_5825 fix deadlock with build-exe on an object for windows 2020-12-11 18:34:34 -05:00
issue_7030 Add minimal standalone test case 2020-12-04 12:43:58 +01:00
issue_8550 cleanups related to unused params 2021-06-21 17:03:04 -07:00
issue_9402 Added implementation for _fseeki64 and _ftelli64 from mingw-w64 9.0.0 (#9402). (#9766) 2021-09-15 13:38:00 -04:00
issue_9693 add standalone test for issue #9693 2021-09-06 15:16:30 -04:00
issue_9812 macho: fix incorrect segment/section growth calculation 2021-09-21 20:22:52 +02:00
link_common_symbols macho: remove unresolved ref in the correct place 2021-10-24 21:01:04 +02:00
link_frameworks macho: fix linking of dylibs and frameworks 2021-08-10 08:13:07 +02:00
link_interdependent_static_c_libs update usage of std.testing in behavior and standalone tests 2021-05-08 15:15:30 +03:00
link_static_lib_as_system_lib zld: permit system static libs 2021-05-22 16:12:45 +02:00
load_dynamic_library Promoted "leak_count_allocator" to the main testing.allocator 2020-01-29 22:22:00 -06:00
main_pkg_path compile error for import outside package path 2019-03-02 10:38:27 -05:00
main_return_error zig fmt 2020-05-05 05:55:25 -06:00
mix_c_files pre-merge cleanups 2021-11-15 16:32:15 -07:00
mix_o_files Remove the base64 unsafe decoder 2021-03-28 14:32:34 +02:00
objc Add -Denable-macos-sdk explicit flag to build.zig 2021-08-02 13:41:58 -04:00
objcpp add support for compiling Objective-C++ code (#10096) 2021-11-22 08:44:49 +01:00
pie std: Fix PIE startup sequence 2021-06-19 18:02:51 +02:00
pkg_import breaking changes to zig build API and improved caching 2019-03-08 23:23:11 -05:00
shared_library stage2: fix not detecting all dynamic libraries 2020-11-30 20:25:28 -07:00
static_c_lib update usage of std.testing in behavior and standalone tests 2021-05-08 15:15:30 +03:00
use_alias update usage of std.testing in behavior and standalone tests 2021-05-08 15:15:30 +03:00