BUILD.gn (1987B)
1 # TODO(cbracken): remove personal include, lib dirs. 2 config("gout_config") { 3 include_dirs = [ "//" ] + system_include_dirs 4 lib_dirs = [] + system_lib_dirs 5 defines = [ 6 "_XOPEN_SOURCE=700", 7 "_DEFAULT_SOURCE", 8 "_BSD_SOURCE", 9 ] 10 libs = [ "git2" ] 11 public_configs = [ 12 "//build:compiler_std", 13 "//build:compiler_warnings", 14 "//build:strict_prototypes", 15 ] 16 if (is_debug) { 17 public_configs += [ 18 "//build:debug", 19 "//build:no_optimize", 20 "//build:symbols", 21 ] 22 } else { 23 public_configs += [ 24 "//build:release", 25 "//build:optimize_size", 26 "//build:lto", 27 ] 28 } 29 } 30 31 group("default") { 32 testonly = true 33 deps = [ 34 ":gout", 35 ":gout_index", 36 ":gout_tests", 37 ] 38 } 39 executable("gout") { 40 sources = [ "gout_main.c" ] 41 configs += [ ":gout_config" ] 42 deps = [ 43 ":format", 44 ":gout_srcs", 45 ":utils", 46 ] 47 } 48 49 executable("gout_index") { 50 sources = [ "gout_index_main.c" ] 51 configs += [ ":gout_config" ] 52 deps = [ ":gout_index_srcs" ] 53 } 54 55 executable("gout_tests") { 56 testonly = true 57 58 sources = [ 59 "format_tests.c", 60 "gout_tests.c", 61 "gout_tests_main.c", 62 "utils_tests.c", 63 ] 64 deps = [ 65 ":gout_srcs", 66 "//third_party/utest:utest_headers", 67 ] 68 } 69 70 source_set("format") { 71 sources = [ 72 "format.c", 73 "format.h", 74 ] 75 configs += [ ":gout_config" ] 76 } 77 78 source_set("gout_index_srcs") { 79 sources = [ 80 "gout_index.c", 81 "gout_index.h", 82 ] 83 configs += [ ":gout_config" ] 84 deps = [ 85 ":security", 86 "//git", 87 "//writer:index_writer", 88 ] 89 } 90 91 source_set("gout_srcs") { 92 sources = [ 93 "gout.c", 94 "gout.h", 95 ] 96 configs += [ ":gout_config" ] 97 deps = [ 98 ":security", 99 "//git", 100 "//writer:repo_writer", 101 ] 102 } 103 104 source_set("security") { 105 sources = [ 106 "security.c", 107 "security.h", 108 ] 109 configs += [ ":gout_config" ] 110 } 111 112 source_set("utils") { 113 sources = [ 114 "utils.c", 115 "utils.h", 116 ] 117 configs += [ ":gout_config" ] 118 deps = [ "//third_party/openbsd" ] 119 }