xref: /aosp_15_r20/external/bcc/src/lua/CMakeLists.txt (revision 387f9dfdfa2baef462e92476d413c7bc2470293e)
1*387f9dfdSAndroid Build Coastguard Workerfind_package(LuaJIT)
2*387f9dfdSAndroid Build Coastguard Workerfind_program(LUAJIT luajit)
3*387f9dfdSAndroid Build Coastguard Worker
4*387f9dfdSAndroid Build Coastguard Workerif (LUAJIT_LIBRARIES AND LUAJIT)
5*387f9dfdSAndroid Build Coastguard Worker	FILE(GLOB_RECURSE SRC_LUA
6*387f9dfdSAndroid Build Coastguard Worker		${CMAKE_CURRENT_SOURCE_DIR}/bcc/*.lua
7*387f9dfdSAndroid Build Coastguard Worker		${CMAKE_CURRENT_SOURCE_DIR}/bcc/vendor/*.lua
8*387f9dfdSAndroid Build Coastguard Worker		${CMAKE_CURRENT_SOURCE_DIR}/bpf/*.lua)
9*387f9dfdSAndroid Build Coastguard Worker
10*387f9dfdSAndroid Build Coastguard Worker	ADD_CUSTOM_COMMAND(
11*387f9dfdSAndroid Build Coastguard Worker		OUTPUT bcc.lua
12*387f9dfdSAndroid Build Coastguard Worker		COMMAND ${LUAJIT} ${CMAKE_CURRENT_SOURCE_DIR}/src/squish.lua ${CMAKE_CURRENT_SOURCE_DIR}
13*387f9dfdSAndroid Build Coastguard Worker		DEPENDS ${SRC_LUA} ${CMAKE_CURRENT_SOURCE_DIR}/squishy
14*387f9dfdSAndroid Build Coastguard Worker	)
15*387f9dfdSAndroid Build Coastguard Worker
16*387f9dfdSAndroid Build Coastguard Worker	ADD_CUSTOM_COMMAND(
17*387f9dfdSAndroid Build Coastguard Worker		OUTPUT bcc.o
18*387f9dfdSAndroid Build Coastguard Worker		COMMAND ${LUAJIT} -bg bcc.lua bcc.o
19*387f9dfdSAndroid Build Coastguard Worker		DEPENDS bcc.lua
20*387f9dfdSAndroid Build Coastguard Worker	)
21*387f9dfdSAndroid Build Coastguard Worker
22*387f9dfdSAndroid Build Coastguard Worker	include_directories(${LUAJIT_INCLUDE_DIR})
23*387f9dfdSAndroid Build Coastguard Worker	add_executable(bcc-lua src/main.c bcc.o)
24*387f9dfdSAndroid Build Coastguard Worker	set_target_properties(bcc-lua PROPERTIES LINKER_LANGUAGE C)
25*387f9dfdSAndroid Build Coastguard Worker	target_link_libraries(bcc-lua ${LUAJIT_LIBRARIES})
26*387f9dfdSAndroid Build Coastguard Worker	target_link_libraries(bcc-lua ${bcc-lua-static})
27*387f9dfdSAndroid Build Coastguard Worker	if (NOT COMPILER_NOPIE_FLAG EQUAL "")
28*387f9dfdSAndroid Build Coastguard Worker		target_link_libraries(bcc-lua ${COMPILER_NOPIE_FLAG})
29*387f9dfdSAndroid Build Coastguard Worker	endif()
30*387f9dfdSAndroid Build Coastguard Worker
31*387f9dfdSAndroid Build Coastguard Worker	install(TARGETS bcc-lua RUNTIME DESTINATION bin)
32*387f9dfdSAndroid Build Coastguard Workerendif()
33