mirror of
https://github.com/ziglang/zig.git
synced 2024-12-12 14:16:59 +00:00
stage2: .stub files are yet another c++ source file extension
however .cu files are a superset of c++.
This commit is contained in:
parent
f589a66062
commit
0e6d2184ca
@ -3854,7 +3854,7 @@ pub fn addCCArgs(
|
||||
try argv.appendSlice(&[_][]const u8{ "-target", llvm_triple });
|
||||
|
||||
switch (ext) {
|
||||
.c, .cpp, .m, .mm, .h, .cuda => {
|
||||
.c, .cpp, .m, .mm, .h, .cu => {
|
||||
try argv.appendSlice(&[_][]const u8{
|
||||
"-nostdinc",
|
||||
"-fno-spell-checking",
|
||||
@ -4153,7 +4153,7 @@ fn failCObjWithOwnedErrorMsg(
|
||||
pub const FileExt = enum {
|
||||
c,
|
||||
cpp,
|
||||
cuda,
|
||||
cu,
|
||||
h,
|
||||
m,
|
||||
mm,
|
||||
@ -4168,7 +4168,7 @@ pub const FileExt = enum {
|
||||
|
||||
pub fn clangSupportsDepFile(ext: FileExt) bool {
|
||||
return switch (ext) {
|
||||
.c, .cpp, .h, .m, .mm, .cuda => true,
|
||||
.c, .cpp, .h, .m, .mm, .cu => true,
|
||||
|
||||
.ll,
|
||||
.bc,
|
||||
@ -4199,11 +4199,8 @@ pub fn hasCppExt(filename: []const u8) bool {
|
||||
return mem.endsWith(u8, filename, ".C") or
|
||||
mem.endsWith(u8, filename, ".cc") or
|
||||
mem.endsWith(u8, filename, ".cpp") or
|
||||
mem.endsWith(u8, filename, ".cxx");
|
||||
}
|
||||
|
||||
pub fn hasCudaExt(filename: []const u8) bool {
|
||||
return mem.endsWith(u8, filename, ".cu") or mem.endsWith(u8, filename, ".stub");
|
||||
mem.endsWith(u8, filename, ".cxx") or
|
||||
mem.endsWith(u8, filename, ".stub");
|
||||
}
|
||||
|
||||
pub fn hasObjCExt(filename: []const u8) bool {
|
||||
@ -4270,8 +4267,8 @@ pub fn classifyFileExt(filename: []const u8) FileExt {
|
||||
return .static_library;
|
||||
} else if (hasObjectExt(filename)) {
|
||||
return .object;
|
||||
} else if (hasCudaExt(filename)) {
|
||||
return .cuda;
|
||||
} else if (mem.endsWith(u8, filename, ".cu")) {
|
||||
return .cu;
|
||||
} else {
|
||||
return .unknown;
|
||||
}
|
||||
|
@ -294,11 +294,11 @@ const usage_build_generic =
|
||||
\\ .s Target-specific assembly source code
|
||||
\\ .S Assembly with C preprocessor (requires LLVM extensions)
|
||||
\\ .c C source code (requires LLVM extensions)
|
||||
\\ .cxx .cc .C .cpp C++ source code (requires LLVM extensions)
|
||||
\\ .cxx .cc .C .cpp .stub C++ source code (requires LLVM extensions)
|
||||
\\ .m Objective-C source code (requires LLVM extensions)
|
||||
\\ .mm Objective-C++ source code (requires LLVM extensions)
|
||||
\\ .bc LLVM IR Module (requires LLVM extensions)
|
||||
\\ .cu .stub Cuda source code (requires LLVM extensions)
|
||||
\\ .cu Cuda source code (requires LLVM extensions)
|
||||
\\
|
||||
\\General Options:
|
||||
\\ -h, --help Print this help and exit
|
||||
@ -1248,7 +1248,7 @@ fn buildOutputType(
|
||||
.object, .static_library, .shared_library => {
|
||||
try link_objects.append(.{ .path = arg });
|
||||
},
|
||||
.assembly, .c, .cpp, .h, .ll, .bc, .m, .mm, .cuda => {
|
||||
.assembly, .c, .cpp, .h, .ll, .bc, .m, .mm, .cu => {
|
||||
try c_source_files.append(.{
|
||||
.src_path = arg,
|
||||
.extra_flags = try arena.dupe([]const u8, extra_cflags.items),
|
||||
@ -1316,7 +1316,7 @@ fn buildOutputType(
|
||||
.positional => {
|
||||
const file_ext = Compilation.classifyFileExt(mem.sliceTo(it.only_arg, 0));
|
||||
switch (file_ext) {
|
||||
.assembly, .c, .cpp, .ll, .bc, .h, .m, .mm, .cuda => {
|
||||
.assembly, .c, .cpp, .ll, .bc, .h, .m, .mm, .cu => {
|
||||
try c_source_files.append(.{ .src_path = it.only_arg });
|
||||
},
|
||||
.unknown, .shared_library, .object, .static_library => {
|
||||
|
Loading…
Reference in New Issue
Block a user