mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 22:58:20 +00:00
better initial workflow, thanks to Jon Siwek
This commit is contained in:
parent
4a1d5adcf4
commit
c116b2b8ad
3 changed files with 11 additions and 11 deletions
|
@ -220,6 +220,10 @@ add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/DebugCmdConstants.h
|
||||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
set(_gen_zeek_script_cpp ${CMAKE_CURRENT_BINARY_DIR}/../CPP-gen.cc)
|
||||||
|
add_custom_command(OUTPUT ${_gen_zeek_script_cpp}
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E touch ${_gen_zeek_script_cpp})
|
||||||
|
|
||||||
set_source_files_properties(nb_dns.c PROPERTIES COMPILE_FLAGS
|
set_source_files_properties(nb_dns.c PROPERTIES COMPILE_FLAGS
|
||||||
-fno-strict-aliasing)
|
-fno-strict-aliasing)
|
||||||
|
|
||||||
|
@ -349,7 +353,7 @@ set(MAIN_SRCS
|
||||||
script_opt/CPP/Util.cc
|
script_opt/CPP/Util.cc
|
||||||
script_opt/CPP/Vars.cc
|
script_opt/CPP/Vars.cc
|
||||||
|
|
||||||
script_opt/CPP/CPP-gen.cc
|
${_gen_zeek_script_cpp}
|
||||||
|
|
||||||
script_opt/DefItem.cc
|
script_opt/DefItem.cc
|
||||||
script_opt/DefSetsMgr.cc
|
script_opt/DefSetsMgr.cc
|
||||||
|
|
|
@ -313,7 +313,7 @@ void CPPCompile::GenEpilog()
|
||||||
if ( addl_tag > 0 )
|
if ( addl_tag > 0 )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
Emit("#include \"zeek/script_opt/CPP/CPP-gen-addl.h\"\n");
|
Emit("#include \"CPP-gen-addl.h\"\n");
|
||||||
Emit("} // zeek::detail");
|
Emit("} // zeek::detail");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -54,13 +54,9 @@ at the beginning of `Compile.h`.
|
||||||
Workflows
|
Workflows
|
||||||
---------
|
---------
|
||||||
|
|
||||||
The main code generated by the compiler resides in
|
The main code generated by the compiler is taken from
|
||||||
`src/script_opt/CPP/CPP-gen.cc`. That file does not initially exist, but
|
`build/CPP-gen.cc`. An empty version of this is generated when
|
||||||
`src/CMakeLists.txt` specifies it, so in order for `./configure` to
|
first building Zeek.
|
||||||
succeed to start building Zeek, you need to first issue `touch
|
|
||||||
src/script_opt/CPP/CPP-gen.cc`. (The branch does not include an empty
|
|
||||||
version in `git` to prevent the common error of checking in a non-empty
|
|
||||||
version after using the compiler.)
|
|
||||||
|
|
||||||
As a user, the most common workflow is to build a version of Zeek that
|
As a user, the most common workflow is to build a version of Zeek that
|
||||||
has a given target script (`target.zeek`) compiled into it. This means
|
has a given target script (`target.zeek`) compiled into it. This means
|
||||||
|
@ -73,8 +69,8 @@ The generated code is written to
|
||||||
`CPP-gen-addl.h`. (This name is a reflection of some more complicated
|
`CPP-gen-addl.h`. (This name is a reflection of some more complicated
|
||||||
features and probably should be changed.) The compiler will also produce
|
features and probably should be changed.) The compiler will also produce
|
||||||
a file `CPP-hashes.dat`, for use by an advanced feature.
|
a file `CPP-hashes.dat`, for use by an advanced feature.
|
||||||
2. `mv CPP-gen-addl.h ../src/script_opt/CPP/CPP-gen.cc`
|
2. `mv CPP-gen-addl.h CPP-gen.cc`
|
||||||
3. `touch ../src/script_opt/CPP/CPP-gen-addl.h`
|
3. `touch CPP-gen-addl.h`
|
||||||
(Needed because `CPP-gen.cc`
|
(Needed because `CPP-gen.cc`
|
||||||
expects the file to exist, again in support of more complicated features.)
|
expects the file to exist, again in support of more complicated features.)
|
||||||
4. `ninja` or `make` to recompile Zeek
|
4. `ninja` or `make` to recompile Zeek
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue