| author | |
| committer | |
| log | 2ce32e44978428c367551c5c150d1ab12c0b73d7 |
| tree | 3e50de776009cef0312299831410c7909911500d |
| parent | 8a0429e885489eac497aa97fdfcaaa1befb2b6d4 |
14 files changed, 448 insertions(+), 303 deletions(-)
test/standalone/cmakedefine/build.zig+67-13| ... | ... | @@ -4,7 +4,8 @@ const ConfigHeader = std.Build.Step.ConfigHeader; |
| 4 | 4 | pub fn build(b: *std.Build) void { |
| 5 | 5 | const config_header = b.addConfigHeader( |
| 6 | 6 | .{ |
| 7 | .style = .{ .cmake = .{ .path = "config.h.cmake" } }, | |
| 7 | .style = .{ .cmake = .{ .path = "config.h.in" } }, | |
| 8 | .include_path = "config.h", | |
| 8 | 9 | }, |
| 9 | 10 | .{ |
| 10 | 11 | .noval = null, |
| ... | ... | @@ -25,32 +26,85 @@ pub fn build(b: *std.Build) void { |
| 25 | 26 | }, |
| 26 | 27 | ); |
| 27 | 28 | |
| 29 | const pwd_sh = b.addConfigHeader( | |
| 30 | .{ | |
| 31 | .style = .{ .cmake = .{ .path = "pwd.sh.in" } }, | |
| 32 | .include_path = "pwd.sh", | |
| 33 | }, | |
| 34 | .{ .DIR = "${PWD}" }, | |
| 35 | ); | |
| 36 | ||
| 37 | const sigil_header = b.addConfigHeader( | |
| 38 | .{ | |
| 39 | .style = .{ .cmake = .{ .path = "sigil.h.in" } }, | |
| 40 | .include_path = "sigil.h", | |
| 41 | }, | |
| 42 | .{}, | |
| 43 | ); | |
| 44 | ||
| 45 | const stack_header = b.addConfigHeader( | |
| 46 | .{ | |
| 47 | .style = .{ .cmake = .{ .path = "stack.h.in" } }, | |
| 48 | .include_path = "stack.h", | |
| 49 | }, | |
| 50 | .{ | |
| 51 | .AT = "@", | |
| 52 | .UNDERSCORE = "_", | |
| 53 | .NEST_UNDERSCORE_PROXY = "UNDERSCORE", | |
| 54 | .NEST_PROXY = "NEST_UNDERSCORE_PROXY", | |
| 55 | }, | |
| 56 | ); | |
| 57 | ||
| 58 | const wrapper_header = b.addConfigHeader( | |
| 59 | .{ | |
| 60 | .style = .{ .cmake = .{ .path = "wrapper.h.in" } }, | |
| 61 | .include_path = "wrapper.h", | |
| 62 | }, | |
| 63 | .{ | |
| 64 | .DOLLAR = "$", | |
| 65 | .TEXT = "TRAP", | |
| 66 | ||
| 67 | .STRING = "TEXT", | |
| 68 | .STRING_AT = "@STRING@", | |
| 69 | .STRING_CURLY = "{STRING}", | |
| 70 | .STRING_VAR = "${STRING}", | |
| 71 | }, | |
| 72 | ); | |
| 73 | ||
| 28 | 74 | const test_step = b.step("test", "Test it"); |
| 29 | 75 | test_step.makeFn = compare_headers; |
| 30 | 76 | test_step.dependOn(&config_header.step); |
| 77 | test_step.dependOn(&pwd_sh.step); | |
| 78 | test_step.dependOn(&sigil_header.step); | |
| 79 | test_step.dependOn(&stack_header.step); | |
| 80 | test_step.dependOn(&wrapper_header.step); | |
| 31 | 81 | } |
| 32 | 82 | |
| 33 | 83 | fn compare_headers(step: *std.Build.Step, prog_node: *std.Progress.Node) !void { |
| 34 | 84 | _ = prog_node; |
| 35 | 85 | const allocator = step.owner.allocator; |
| 36 | const cmake_header_path = "expected.h"; | |
| 86 | const expected_fmt = "expected_{s}"; | |
| 87 | ||
| 88 | for (step.dependencies.items) |config_header_step| { | |
| 89 | const config_header = @fieldParentPtr(ConfigHeader, "step", config_header_step); | |
| 37 | 90 | |
| 38 | const config_header_step = step.dependencies.getLast(); | |
| 39 | const config_header = @fieldParentPtr(ConfigHeader, "step", config_header_step); | |
| 91 | const zig_header_path = config_header.output_file.path orelse @panic("Could not locate header file"); | |
| 40 | 92 | |
| 41 | const zig_header_path = config_header.output_file.path orelse @panic("Could not locate header file"); | |
| 93 | const cwd = std.fs.cwd(); | |
| 42 | 94 | |
| 43 | const cwd = std.fs.cwd(); | |
| 95 | const cmake_header_path = try std.fmt.allocPrint(allocator, expected_fmt, .{std.fs.path.basename(zig_header_path)}); | |
| 96 | defer allocator.free(cmake_header_path); | |
| 44 | 97 | |
| 45 | const cmake_header = try cwd.readFileAlloc(allocator, cmake_header_path, config_header.max_bytes); | |
| 46 | defer allocator.free(cmake_header); | |
| 98 | const cmake_header = try cwd.readFileAlloc(allocator, cmake_header_path, config_header.max_bytes); | |
| 99 | defer allocator.free(cmake_header); | |
| 47 | 100 | |
| 48 | const zig_header = try cwd.readFileAlloc(allocator, zig_header_path, config_header.max_bytes); | |
| 49 | defer allocator.free(zig_header); | |
| 101 | const zig_header = try cwd.readFileAlloc(allocator, zig_header_path, config_header.max_bytes); | |
| 102 | defer allocator.free(zig_header); | |
| 50 | 103 | |
| 51 | const header_text_index = std.mem.indexOf(u8, zig_header, "\n") orelse @panic("Could not find comment in header filer"); | |
| 104 | const header_text_index = std.mem.indexOf(u8, zig_header, "\n") orelse @panic("Could not find comment in header filer"); | |
| 52 | 105 | |
| 53 | if (!std.mem.eql(u8, zig_header[header_text_index + 1 ..], cmake_header)) { | |
| 54 | @panic("processed cmakedefine header does not match expected output"); | |
| 106 | if (!std.mem.eql(u8, zig_header[header_text_index + 1 ..], cmake_header)) { | |
| 107 | @panic("processed cmakedefine header does not match expected output"); | |
| 108 | } | |
| 55 | 109 | } |
| 56 | 110 | } |
test/standalone/cmakedefine/config.h.cmake deleted-145| ... | ... | @@ -1,145 +0,0 @@ |
| 1 | // cmakedefine | |
| 2 | // undefined | |
| 3 | #cmakedefine noval unreachable | |
| 4 | ||
| 5 | // 1 | |
| 6 | #cmakedefine trueval 1 | |
| 7 | ||
| 8 | // undefined | |
| 9 | #cmakedefine falseval unreachable | |
| 10 | ||
| 11 | // undefined | |
| 12 | #cmakedefine zeroval unreachable | |
| 13 | ||
| 14 | // 1 | |
| 15 | #cmakedefine oneval 1 | |
| 16 | ||
| 17 | // 1 | |
| 18 | #cmakedefine tenval 1 | |
| 19 | ||
| 20 | // 1 | |
| 21 | #cmakedefine stringval 1 | |
| 22 | ||
| 23 | ||
| 24 | // cmakedefine01 | |
| 25 | // 0 | |
| 26 | #cmakedefine01 boolnoval | |
| 27 | ||
| 28 | // 1 | |
| 29 | #cmakedefine01 booltrueval | |
| 30 | ||
| 31 | // 0 | |
| 32 | #cmakedefine01 boolfalseval | |
| 33 | ||
| 34 | // 0 | |
| 35 | #cmakedefine01 boolzeroval | |
| 36 | ||
| 37 | // 1 | |
| 38 | #cmakedefine01 booloneval | |
| 39 | ||
| 40 | // 1 | |
| 41 | #cmakedefine01 booltenval | |
| 42 | ||
| 43 | // 1 | |
| 44 | #cmakedefine01 boolstringval | |
| 45 | ||
| 46 | ||
| 47 | // @ substition | |
| 48 | ||
| 49 | // no substition | |
| 50 | // @noval@ | |
| 51 | ||
| 52 | // no substition | |
| 53 | // @noval@@noval@ | |
| 54 | ||
| 55 | // no substition | |
| 56 | // @noval@.@noval@ | |
| 57 | ||
| 58 | // 1 | |
| 59 | // @trueval@ | |
| 60 | ||
| 61 | // 0 | |
| 62 | // @falseval@ | |
| 63 | ||
| 64 | // 10 | |
| 65 | // @trueval@@falseval@ | |
| 66 | ||
| 67 | // 0.1 | |
| 68 | // @falseval@.@trueval@ | |
| 69 | ||
| 70 | // 0 | |
| 71 | // @zeroval@ | |
| 72 | ||
| 73 | // 1 | |
| 74 | // @oneval@ | |
| 75 | ||
| 76 | // 10 | |
| 77 | // @tenval@ | |
| 78 | ||
| 79 | // 01 | |
| 80 | // @zeroval@@oneval@ | |
| 81 | ||
| 82 | // 0.10 | |
| 83 | // @zeroval@.@tenval@ | |
| 84 | ||
| 85 | // test | |
| 86 | // @stringval@ | |
| 87 | ||
| 88 | // testtest | |
| 89 | // @stringval@@stringval@ | |
| 90 | ||
| 91 | // test.test | |
| 92 | // @stringval@.@stringval@ | |
| 93 | ||
| 94 | // test10 | |
| 95 | // @noval@@stringval@@trueval@@zeroval@ | |
| 96 | ||
| 97 | // ${} substition | |
| 98 | ||
| 99 | // no substition | |
| 100 | // ${noval} | |
| 101 | ||
| 102 | // no substition | |
| 103 | // ${noval}${noval} | |
| 104 | ||
| 105 | // no substition | |
| 106 | // ${noval}.${noval} | |
| 107 | ||
| 108 | // 1 | |
| 109 | // ${trueval} | |
| 110 | ||
| 111 | // 0 | |
| 112 | // ${falseval} | |
| 113 | ||
| 114 | // 10 | |
| 115 | // ${trueval}${falseval} | |
| 116 | ||
| 117 | // 0.1 | |
| 118 | // ${falseval}.${trueval} | |
| 119 | ||
| 120 | // 0 | |
| 121 | // ${zeroval} | |
| 122 | ||
| 123 | // 1 | |
| 124 | // ${oneval} | |
| 125 | ||
| 126 | // 10 | |
| 127 | // ${tenval} | |
| 128 | ||
| 129 | // 01 | |
| 130 | // ${zeroval}${oneval} | |
| 131 | ||
| 132 | // 0.10 | |
| 133 | // ${zeroval}.${tenval} | |
| 134 | ||
| 135 | // test | |
| 136 | // ${stringval} | |
| 137 | ||
| 138 | // testtest | |
| 139 | // ${stringval}${stringval} | |
| 140 | ||
| 141 | // test.test | |
| 142 | // ${stringval}.${stringval} | |
| 143 | ||
| 144 | // test10 | |
| 145 | // ${noval}${stringval}${trueval}${zeroval} |
test/standalone/cmakedefine/config.h.in created+145| ... | ... | @@ -0,0 +1,145 @@ |
| 1 | // cmakedefine | |
| 2 | // undefined | |
| 3 | #cmakedefine noval unreachable | |
| 4 | ||
| 5 | // 1 | |
| 6 | #cmakedefine trueval 1 | |
| 7 | ||
| 8 | // undefined | |
| 9 | #cmakedefine falseval unreachable | |
| 10 | ||
| 11 | // undefined | |
| 12 | #cmakedefine zeroval unreachable | |
| 13 | ||
| 14 | // 1 | |
| 15 | #cmakedefine oneval 1 | |
| 16 | ||
| 17 | // 1 | |
| 18 | #cmakedefine tenval 1 | |
| 19 | ||
| 20 | // 1 | |
| 21 | #cmakedefine stringval 1 | |
| 22 | ||
| 23 | ||
| 24 | // cmakedefine01 | |
| 25 | // 0 | |
| 26 | #cmakedefine01 boolnoval | |
| 27 | ||
| 28 | // 1 | |
| 29 | #cmakedefine01 booltrueval | |
| 30 | ||
| 31 | // 0 | |
| 32 | #cmakedefine01 boolfalseval | |
| 33 | ||
| 34 | // 0 | |
| 35 | #cmakedefine01 boolzeroval | |
| 36 | ||
| 37 | // 1 | |
| 38 | #cmakedefine01 booloneval | |
| 39 | ||
| 40 | // 1 | |
| 41 | #cmakedefine01 booltenval | |
| 42 | ||
| 43 | // 1 | |
| 44 | #cmakedefine01 boolstringval | |
| 45 | ||
| 46 | ||
| 47 | // @ substition | |
| 48 | ||
| 49 | // no substition | |
| 50 | // @noval@ | |
| 51 | ||
| 52 | // no substition | |
| 53 | // @noval@@noval@ | |
| 54 | ||
| 55 | // no substition | |
| 56 | // @noval@.@noval@ | |
| 57 | ||
| 58 | // 1 | |
| 59 | // @trueval@ | |
| 60 | ||
| 61 | // 0 | |
| 62 | // @falseval@ | |
| 63 | ||
| 64 | // 10 | |
| 65 | // @trueval@@falseval@ | |
| 66 | ||
| 67 | // 0.1 | |
| 68 | // @falseval@.@trueval@ | |
| 69 | ||
| 70 | // 0 | |
| 71 | // @zeroval@ | |
| 72 | ||
| 73 | // 1 | |
| 74 | // @oneval@ | |
| 75 | ||
| 76 | // 10 | |
| 77 | // @tenval@ | |
| 78 | ||
| 79 | // 01 | |
| 80 | // @zeroval@@oneval@ | |
| 81 | ||
| 82 | // 0.10 | |
| 83 | // @zeroval@.@tenval@ | |
| 84 | ||
| 85 | // test | |
| 86 | // @stringval@ | |
| 87 | ||
| 88 | // testtest | |
| 89 | // @stringval@@stringval@ | |
| 90 | ||
| 91 | // test.test | |
| 92 | // @stringval@.@stringval@ | |
| 93 | ||
| 94 | // test10 | |
| 95 | // @noval@@stringval@@trueval@@zeroval@ | |
| 96 | ||
| 97 | // ${} substition | |
| 98 | ||
| 99 | // no substition | |
| 100 | // ${noval} | |
| 101 | ||
| 102 | // no substition | |
| 103 | // ${noval}${noval} | |
| 104 | ||
| 105 | // no substition | |
| 106 | // ${noval}.${noval} | |
| 107 | ||
| 108 | // 1 | |
| 109 | // ${trueval} | |
| 110 | ||
| 111 | // 0 | |
| 112 | // ${falseval} | |
| 113 | ||
| 114 | // 10 | |
| 115 | // ${trueval}${falseval} | |
| 116 | ||
| 117 | // 0.1 | |
| 118 | // ${falseval}.${trueval} | |
| 119 | ||
| 120 | // 0 | |
| 121 | // ${zeroval} | |
| 122 | ||
| 123 | // 1 | |
| 124 | // ${oneval} | |
| 125 | ||
| 126 | // 10 | |
| 127 | // ${tenval} | |
| 128 | ||
| 129 | // 01 | |
| 130 | // ${zeroval}${oneval} | |
| 131 | ||
| 132 | // 0.10 | |
| 133 | // ${zeroval}.${tenval} | |
| 134 | ||
| 135 | // test | |
| 136 | // ${stringval} | |
| 137 | ||
| 138 | // testtest | |
| 139 | // ${stringval}${stringval} | |
| 140 | ||
| 141 | // test.test | |
| 142 | // ${stringval}.${stringval} | |
| 143 | ||
| 144 | // test10 | |
| 145 | // ${noval}${stringval}${trueval}${zeroval} |
test/standalone/cmakedefine/expected.h deleted-145| ... | ... | @@ -1,145 +0,0 @@ |
| 1 | // cmakedefine | |
| 2 | // undefined | |
| 3 | /* #undef noval */ | |
| 4 | ||
| 5 | // 1 | |
| 6 | #define trueval 1 | |
| 7 | ||
| 8 | // undefined | |
| 9 | /* #undef falseval */ | |
| 10 | ||
| 11 | // undefined | |
| 12 | /* #undef zeroval */ | |
| 13 | ||
| 14 | // 1 | |
| 15 | #define oneval 1 | |
| 16 | ||
| 17 | // 1 | |
| 18 | #define tenval 1 | |
| 19 | ||
| 20 | // 1 | |
| 21 | #define stringval 1 | |
| 22 | ||
| 23 | ||
| 24 | // cmakedefine01 | |
| 25 | // 0 | |
| 26 | #define boolnoval 0 | |
| 27 | ||
| 28 | // 1 | |
| 29 | #define booltrueval 1 | |
| 30 | ||
| 31 | // 0 | |
| 32 | #define boolfalseval 0 | |
| 33 | ||
| 34 | // 0 | |
| 35 | #define boolzeroval 0 | |
| 36 | ||
| 37 | // 1 | |
| 38 | #define booloneval 1 | |
| 39 | ||
| 40 | // 1 | |
| 41 | #define booltenval 1 | |
| 42 | ||
| 43 | // 1 | |
| 44 | #define boolstringval 1 | |
| 45 | ||
| 46 | ||
| 47 | // @ substition | |
| 48 | ||
| 49 | // no substition | |
| 50 | // | |
| 51 | ||
| 52 | // no substition | |
| 53 | // | |
| 54 | ||
| 55 | // no substition | |
| 56 | // . | |
| 57 | ||
| 58 | // 1 | |
| 59 | // 1 | |
| 60 | ||
| 61 | // 0 | |
| 62 | // 0 | |
| 63 | ||
| 64 | // 10 | |
| 65 | // 10 | |
| 66 | ||
| 67 | // 0.1 | |
| 68 | // 0.1 | |
| 69 | ||
| 70 | // 0 | |
| 71 | // 0 | |
| 72 | ||
| 73 | // 1 | |
| 74 | // 1 | |
| 75 | ||
| 76 | // 10 | |
| 77 | // 10 | |
| 78 | ||
| 79 | // 01 | |
| 80 | // 01 | |
| 81 | ||
| 82 | // 0.10 | |
| 83 | // 0.10 | |
| 84 | ||
| 85 | // test | |
| 86 | // test | |
| 87 | ||
| 88 | // testtest | |
| 89 | // testtest | |
| 90 | ||
| 91 | // test.test | |
| 92 | // test.test | |
| 93 | ||
| 94 | // test10 | |
| 95 | // test10 | |
| 96 | ||
| 97 | // substition | |
| 98 | ||
| 99 | // no substition | |
| 100 | // | |
| 101 | ||
| 102 | // no substition | |
| 103 | // | |
| 104 | ||
| 105 | // no substition | |
| 106 | // . | |
| 107 | ||
| 108 | // 1 | |
| 109 | // 1 | |
| 110 | ||
| 111 | // 0 | |
| 112 | // 0 | |
| 113 | ||
| 114 | // 10 | |
| 115 | // 10 | |
| 116 | ||
| 117 | // 0.1 | |
| 118 | // 0.1 | |
| 119 | ||
| 120 | // 0 | |
| 121 | // 0 | |
| 122 | ||
| 123 | // 1 | |
| 124 | // 1 | |
| 125 | ||
| 126 | // 10 | |
| 127 | // 10 | |
| 128 | ||
| 129 | // 01 | |
| 130 | // 01 | |
| 131 | ||
| 132 | // 0.10 | |
| 133 | // 0.10 | |
| 134 | ||
| 135 | // test | |
| 136 | // test | |
| 137 | ||
| 138 | // testtest | |
| 139 | // testtest | |
| 140 | ||
| 141 | // test.test | |
| 142 | // test.test | |
| 143 | ||
| 144 | // test10 | |
| 145 | // test10 |
test/standalone/cmakedefine/expected_config.h created+145| ... | ... | @@ -0,0 +1,145 @@ |
| 1 | // cmakedefine | |
| 2 | // undefined | |
| 3 | /* #undef noval */ | |
| 4 | ||
| 5 | // 1 | |
| 6 | #define trueval 1 | |
| 7 | ||
| 8 | // undefined | |
| 9 | /* #undef falseval */ | |
| 10 | ||
| 11 | // undefined | |
| 12 | /* #undef zeroval */ | |
| 13 | ||
| 14 | // 1 | |
| 15 | #define oneval 1 | |
| 16 | ||
| 17 | // 1 | |
| 18 | #define tenval 1 | |
| 19 | ||
| 20 | // 1 | |
| 21 | #define stringval 1 | |
| 22 | ||
| 23 | ||
| 24 | // cmakedefine01 | |
| 25 | // 0 | |
| 26 | #define boolnoval 0 | |
| 27 | ||
| 28 | // 1 | |
| 29 | #define booltrueval 1 | |
| 30 | ||
| 31 | // 0 | |
| 32 | #define boolfalseval 0 | |
| 33 | ||
| 34 | // 0 | |
| 35 | #define boolzeroval 0 | |
| 36 | ||
| 37 | // 1 | |
| 38 | #define booloneval 1 | |
| 39 | ||
| 40 | // 1 | |
| 41 | #define booltenval 1 | |
| 42 | ||
| 43 | // 1 | |
| 44 | #define boolstringval 1 | |
| 45 | ||
| 46 | ||
| 47 | // @ substition | |
| 48 | ||
| 49 | // no substition | |
| 50 | // | |
| 51 | ||
| 52 | // no substition | |
| 53 | // | |
| 54 | ||
| 55 | // no substition | |
| 56 | // . | |
| 57 | ||
| 58 | // 1 | |
| 59 | // 1 | |
| 60 | ||
| 61 | // 0 | |
| 62 | // 0 | |
| 63 | ||
| 64 | // 10 | |
| 65 | // 10 | |
| 66 | ||
| 67 | // 0.1 | |
| 68 | // 0.1 | |
| 69 | ||
| 70 | // 0 | |
| 71 | // 0 | |
| 72 | ||
| 73 | // 1 | |
| 74 | // 1 | |
| 75 | ||
| 76 | // 10 | |
| 77 | // 10 | |
| 78 | ||
| 79 | // 01 | |
| 80 | // 01 | |
| 81 | ||
| 82 | // 0.10 | |
| 83 | // 0.10 | |
| 84 | ||
| 85 | // test | |
| 86 | // test | |
| 87 | ||
| 88 | // testtest | |
| 89 | // testtest | |
| 90 | ||
| 91 | // test.test | |
| 92 | // test.test | |
| 93 | ||
| 94 | // test10 | |
| 95 | // test10 | |
| 96 | ||
| 97 | // substition | |
| 98 | ||
| 99 | // no substition | |
| 100 | // | |
| 101 | ||
| 102 | // no substition | |
| 103 | // | |
| 104 | ||
| 105 | // no substition | |
| 106 | // . | |
| 107 | ||
| 108 | // 1 | |
| 109 | // 1 | |
| 110 | ||
| 111 | // 0 | |
| 112 | // 0 | |
| 113 | ||
| 114 | // 10 | |
| 115 | // 10 | |
| 116 | ||
| 117 | // 0.1 | |
| 118 | // 0.1 | |
| 119 | ||
| 120 | // 0 | |
| 121 | // 0 | |
| 122 | ||
| 123 | // 1 | |
| 124 | // 1 | |
| 125 | ||
| 126 | // 10 | |
| 127 | // 10 | |
| 128 | ||
| 129 | // 01 | |
| 130 | // 01 | |
| 131 | ||
| 132 | // 0.10 | |
| 133 | // 0.10 | |
| 134 | ||
| 135 | // test | |
| 136 | // test | |
| 137 | ||
| 138 | // testtest | |
| 139 | // testtest | |
| 140 | ||
| 141 | // test.test | |
| 142 | // test.test | |
| 143 | ||
| 144 | // test10 | |
| 145 | // test10 |
test/standalone/cmakedefine/expected_error.h created+5| ... | ... | @@ -0,0 +1,5 @@ |
| 1 | // bad interleave | |
| 2 | #define @STRV${AL_AT@TEXT} | |
| 3 | ||
| 4 | // bad interleave | |
| 5 | #define ${STRV@AL_AT}TEXT@ |
test/standalone/cmakedefine/expected_pwd.sh created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | echo ${PWD} |
test/standalone/cmakedefine/expected_sigil.h created+5| ... | ... | @@ -0,0 +1,5 @@ |
| 1 | #define VAR | |
| 2 | #define AT @ | |
| 3 | #define ATAT @@ | |
| 4 | #define ATATAT @@@ | |
| 5 | #define ATATATAT @@@@ |
test/standalone/cmakedefine/expected_stack.h created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | #define NEST_UNDERSCORE_PROXY NEST_UNDERSCORE_PROXY | |
| 2 | #define UNDERSCORE UNDERSCORE | |
| 3 | ||
| 4 | #define NEST_UNDERSCORE_PROXY NEST_UNDERSCORE_PROXY | |
| 5 | #define UNDERSCORE UNDERSCORE | |
| 6 | ||
| 7 | #define (empty) |
test/standalone/cmakedefine/expected_wrapper.h created+30| ... | ... | @@ -0,0 +1,30 @@ |
| 1 | // becomes TEXT | |
| 2 | #define TEXT | |
| 3 | #define TEXT | |
| 4 | ||
| 5 | // becomes `at`TEXT`at` | |
| 6 | #define @TEXT@ | |
| 7 | #define @TEXT@ | |
| 8 | ||
| 9 | // becomes TRAP | |
| 10 | #define TRAP | |
| 11 | ||
| 12 | // becomes `dollar sign`{STRING} | |
| 13 | #define ${STRING} | |
| 14 | #define ${STRING} | |
| 15 | ||
| 16 | // becomes `dollar sign`{STRING} | |
| 17 | #define ${STRING} | |
| 18 | #define ${STRING} | |
| 19 | ||
| 20 | // becomes `dollar sign`{TEXT} | |
| 21 | #define ${TEXT} | |
| 22 | #define ${TEXT} | |
| 23 | ||
| 24 | // becomes `at`STRING`at` | |
| 25 | #define @STRING@ | |
| 26 | #define @STRING@ | |
| 27 | ||
| 28 | // becomes `empty` | |
| 29 | #define | |
| 30 | #define |
test/standalone/cmakedefine/pwd.sh.in created+1| ... | ... | @@ -0,0 +1 @@ |
| 1 | echo @DIR@ |
test/standalone/cmakedefine/sigil.h.in created+5| ... | ... | @@ -0,0 +1,5 @@ |
| 1 | #define VAR ${} | |
| 2 | #define AT @ | |
| 3 | #define ATAT @@ | |
| 4 | #define ATATAT @@@ | |
| 5 | #define ATATATAT @@@@ |
test/standalone/cmakedefine/stack.h.in created+7| ... | ... | @@ -0,0 +1,7 @@ |
| 1 | #define NEST_UNDERSCORE_PROXY ${NEST${UNDERSCORE}PROXY} | |
| 2 | #define UNDERSCORE @NEST@UNDERSCORE@PROXY@ | |
| 3 | ||
| 4 | #define NEST_UNDERSCORE_PROXY ${NEST${${NEST_UNDERSCORE${UNDERSCORE}PROXY}}PROXY} | |
| 5 | #define UNDERSCORE @NEST@@NEST_UNDERSCORE@UNDERSCORE@PROXY@@PROXY@ | |
| 6 | ||
| 7 | #define (empty) ${NEST${${AT}UNDERSCORE${AT}}PROXY} |
test/standalone/cmakedefine/wrapper.h.in created+30| ... | ... | @@ -0,0 +1,30 @@ |
| 1 | // becomes TEXT | |
| 2 | #define @STRING@ | |
| 3 | #define ${STRING} | |
| 4 | ||
| 5 | // becomes `at`TEXT`at` | |
| 6 | #define @${STRING}@ | |
| 7 | #define @@STRING@@ | |
| 8 | ||
| 9 | // becomes TRAP | |
| 10 | #define ${@STRING@} | |
| 11 | ||
| 12 | // becomes `dollar sign`{STRING} | |
| 13 | #define $@STRING_CURLY@ | |
| 14 | #define $${STRING_CURLY} | |
| 15 | ||
| 16 | // becomes `dollar sign`{STRING} | |
| 17 | #define @STRING_VAR@ | |
| 18 | #define ${STRING_VAR} | |
| 19 | ||
| 20 | // becomes `dollar sign`{TEXT} | |
| 21 | #define ${DOLLAR}{${STRING}} | |
| 22 | #define @DOLLAR@{${STRING}} | |
| 23 | ||
| 24 | // becomes `at`STRING`at` | |
| 25 | #define ${STRING_AT} | |
| 26 | #define @STRING_AT@ | |
| 27 | ||
| 28 | // becomes `empty` | |
| 29 | #define ${${STRING_VAR}} | |
| 30 | #define ${@STRING_VAR@} |