34 lines
828 B
CMake
34 lines
828 B
CMake
# The UI and graphics library for Luna.
|
|
|
|
file(GLOB HEADERS include/ui/*.h)
|
|
|
|
set(SOURCES
|
|
${HEADERS}
|
|
include/ui/ipc/Server.h
|
|
include/ui/ipc/Client.h
|
|
src/Canvas.cpp
|
|
src/Rect.cpp
|
|
src/Font.cpp
|
|
src/Image.cpp
|
|
src/App.cpp
|
|
src/Window.cpp
|
|
src/Layout.cpp
|
|
src/Alignment.cpp
|
|
src/Container.cpp
|
|
src/Button.cpp
|
|
src/Label.cpp
|
|
src/InputField.cpp
|
|
src/TextInput.cpp
|
|
)
|
|
|
|
add_library(ui ${SOURCES})
|
|
target_compile_options(ui PRIVATE ${COMMON_FLAGS} -fno-threadsafe-statics)
|
|
target_include_directories(ui PUBLIC ${CMAKE_CURRENT_LIST_DIR}/include/)
|
|
target_include_directories(ui PUBLIC ${LUNA_BASE}/usr/include)
|
|
target_link_libraries(ui PUBLIC os)
|
|
|
|
add_custom_command(
|
|
TARGET ui
|
|
COMMAND "${CMAKE_COMMAND}" -E copy ${CMAKE_CURRENT_BINARY_DIR}/libui.a ${LUNA_BASE}/usr/lib/libui.a
|
|
)
|