2 * Copyright (c) 2015, Facebook, Inc.
5 * This source code is licensed under the MIT license found in the
6 * LICENSE file in the "hack" directory of this source tree.
10 begin library "ROOTPROJECT"
14 ccopt = "-I%{ROOTPROJECT_FULL_SRC_DIR}%/../.."
16 begin library "hh-hhi"
17 requires = [ "hh-globals" "hh-utils" "hh-find" "bigarray" ]
20 "src/hhi/hhi_win32res_stubs.c"
21 "src/hhi/hhi_win32res.ml"
24 if (os_type = "Win32") then {
26 hhi_source = "./hhi.rc"
27 hhi_target = "%{hh-hhi_FULL_DST_DIR}%/hhi_res.o"
28 cclib = [ hhi_target ]
31 sources = [ hhi_source ]
34 "--preprocessor=x86_64-w64-mingw32-gcc.exe"
35 "--preprocessor-arg=-E"
36 "--preprocessor-arg=-xc-header"
37 hhi_source hhi_target }
42 } else if (system = "macosx" && os_type = "Unix") then {
44 "-sectcreate" "-__text" "hhi"
45 "%{ROOTPROJECT_FULL_SRC_DIR}%/bin/hhi.tar.gz"
46 "-framework" "CoreServices"
47 "-framework" "CoreFoundation"
53 begin library "hh-server-base"
54 requires = [ "hh-third-party" "hh-utils" "hh-typing" "hh-search"
55 "hh-stubs" "hh-stubs-ai" "hh-socket" "hh-dfind" "hh-hhi" ]
57 "src/server/serverFiles.ml"
58 "src/server/serverArgs.ml"
59 "src/server/serverConfig.ml"
60 "src/server/serverEnv.ml"
61 "src/server/serverUtils.ml"
62 "src/server/argumentInfoService.ml"
63 "src/server/autocompleteService.ml"
64 "src/server/fileOutline.ml"
65 "src/server/serverIdeUtils.ml"
66 "src/server/findRefsService.ml"
67 "src/server/fullFidelityParseService.ml"
68 "src/server/identifySymbolService.ml"
69 "src/server/inferAtPosService.ml"
70 "src/server/methodJumps.ml"
71 "src/server/serverArgumentInfo.ml"
72 "src/server/serverAutoComplete.ml"
73 "src/server/serverBuild.ml"
74 "src/server/serverCheckpoint.ml"
75 "src/server/serverColorFile.ml"
76 "src/server/serverCoverageMetric.ml"
77 "src/server/serverError.ml"
78 "src/server/serverFindRefs.ml"
79 "src/server/serverIdentifyFunction.ml"
80 "src/server/serverInferType.ml"
81 "src/server/serverLocalConfig.ml"
82 "src/server/serverLint.ml"
83 "src/server/serverProcessTools.ml"
84 "src/server/serverRefactor.ml"
85 "src/server/serverSearch.ml"
86 "src/server/symbolUtils.ml"
87 "src/server/symbolFunCallService.ml"
88 "src/server/symbolTypeService.ml"
89 "src/server/symbolInfoService.ml"
90 "src/server/serverIdle.ml"
91 "src/server/serverRpc.ml"
92 "src/server/serverCheckUtils.ml"
93 "src/server/serverTypeCheck.ml"
94 "src/server/serverCommand.ml"
95 "src/server/serverConvert.ml"
96 "src/server/serverStamp.ml"
100 begin library "hh-server"
102 "hh-third-party" "hh-utils" "hh-typing"
103 "hh-search" "hh-stubs" "hh-stubs-ai"
104 "hh-socket" "hh-dfind" "hh-watchman" "hh-server-base"
108 "src/server/serverEnvBuild.ml"
109 "src/server/serverInit.ml"
110 "src/server/serverMain.ml"
111 "src/server/serverMonitor.ml"
115 begin library "hh-client"
117 "hh-deps" "hh-heap" "hh-parsing"
118 "hh-globals" "hh-search" "hh-stubs"
119 "hh-socket" "hh-server-base"
122 "src/client/clientConnectSimple.ml"
123 "src/client/clientStop.ml"
124 "src/client/clientStart.ml"
125 "src/client/clientConnect.ml"
126 "src/client/clientLogCommand.ml"
127 "src/client/clientBuild.ml"
128 "src/client/clientEnv.ml"
129 "src/client/clientCommand.ml"
130 "src/client/clientArgs.ml"
131 "src/client/clientArgumentInfo.ml"
132 "src/client/clientAutocomplete.ml"
133 "src/client/clientCheckStatus.ml"
134 "src/client/colorFile.ml"
135 "src/client/clientColorFile.ml"
136 "src/client/clientCoverageMetric.ml"
137 "src/client/clientFindRefs.ml"
138 "src/client/clientLint.ml"
139 "src/client/clientMethodJumps.ml"
140 "src/client/clientOutline.ml"
141 "src/client/clientRefactor.ml"
142 "src/client/clientSearch.ml"
143 "src/client/clientAiInfo.ml"
144 "src/client/clientSymbolInfo.ml"
145 "src/client/clientFullFidelityParse.ml"
146 "src/client/clientTypeAtPos.ml"
147 "src/client/clientCheck.ml"
148 "src/client/clientRestart.ml"
152 begin program "hh_client"
153 requires = [ "hh-client" ]
154 files = [ "src/hh_client.ml" ]
157 begin program "hh_server"
158 requires = [ "hh-server" ]
159 files = [ "src/hh_server.ml" ]
162 begin library "hh-emitter"
163 requires = [ "hh-naming" "hh-typing" ]
166 "src/emitter/emitter_core.ml"
167 "src/emitter/emitter_consts.ml"
168 "src/emitter/emitter_xhp.ml"
169 "src/emitter/emitter_expr.ml"
170 "src/emitter/emitter_lit.ml"
171 "src/emitter/emitter_stmt.ml"
172 "src/emitter/emitter_types.ml"
173 "src/emitter/emitter.ml"
177 begin library "hh-format"
178 requires = [ "hh-typing-base" ]
180 "src/diff/parse_diff.ml"
181 "src/stubs/formatEventLogger.ml"
182 "src/format/format_hack.ml"
183 "src/format/format_diff.ml"
184 "src/format/format_mode.ml"
188 begin program "hh_format"
189 requires = [ "hh-format" "hh-client" ]
190 files = [ "src/hh_format.ml" ]
193 begin program "hh_single_type_check"
194 requires = [ "hh-client" "hh-emitter" ]
196 "src/hh_single_type_check.ml"
200 begin library "hh-match"
201 requires = [ "hh-parsing" "hh-typing-base" ]
203 "src/hh_matcher/astConstructor.ml"
204 "src/hh_matcher/ast_code_extent.ml"
205 "src/hh_matcher/hh_match_utils.ml"
206 "src/hh_matcher/hh_match_test_utils.ml"
207 "src/hh_matcher/patcher.ml"
208 "src/hh_matcher/matcher.ml"
212 begin program "hh_match"
213 requires = [ "hh-match" "hh-client" ]
214 files = [ "src/hh_match.ml" ]
217 begin program "code_extent_tests"
218 requires = [ "hh-match" "hh-hhi" ]
220 "src/hh_matcher/test/code_extent_tests.ml"
224 begin program "matcher_test"
225 requires = [ "hh-match" "hh-hhi" ]
227 "src/hh_matcher/test/matcher_test.ml"
231 begin program "patcher_module_test"
232 requires = [ "hh-match" "hh-hhi" ]
234 "src/hh_matcher/test/patcher_module_test.ml"
238 begin program "patcher_api_test"
239 requires = [ "hh-match" "hh-hhi" ]
241 "src/hh_matcher/test/patcher_api_test.ml"
245 begin program "patcher_test"
246 requires = [ "hh-match" "hh-hhi" ]
248 "src/hh_matcher/test/patcher_test.ml"