2016-06-01 11:48:26 -05:00
|
|
|
# 31 may 2016
|
|
|
|
|
|
|
|
include_directories(.. . ../common)
|
|
|
|
|
|
|
|
add_library(libui-darwin OBJECT
|
|
|
|
alloc.m
|
|
|
|
area.m
|
|
|
|
areaevents.m
|
|
|
|
autolayout.m
|
|
|
|
box.m
|
|
|
|
button.m
|
|
|
|
checkbox.m
|
|
|
|
colorbutton.m
|
|
|
|
combobox.m
|
|
|
|
control.m
|
|
|
|
datetimepicker.m
|
|
|
|
debug.m
|
|
|
|
draw.m
|
|
|
|
drawtext.m
|
|
|
|
editablecombo.m
|
|
|
|
entry.m
|
|
|
|
fontbutton.m
|
|
|
|
group.m
|
|
|
|
label.m
|
|
|
|
main.m
|
|
|
|
map.m
|
|
|
|
menu.m
|
|
|
|
multilineentry.m
|
|
|
|
progressbar.m
|
|
|
|
radiobuttons.m
|
|
|
|
scrollview.m
|
|
|
|
separator.m
|
|
|
|
slider.m
|
|
|
|
spinbox.m
|
|
|
|
stddialogs.m
|
|
|
|
tab.m
|
|
|
|
text.m
|
|
|
|
util.m
|
|
|
|
window.m
|
|
|
|
)
|
|
|
|
set_target_properties(libui-darwin PROPERTIES
|
|
|
|
COMPILE_FLAGS "${_LIBUI_CFLAGS}"
|
|
|
|
)
|
|
|
|
|
2016-06-01 19:21:10 -05:00
|
|
|
# thanks to Mr-Hide in irc.freenode.net/#cmake
|
2016-06-01 11:48:26 -05:00
|
|
|
macro(_add_static _name)
|
2016-06-01 19:21:10 -05:00
|
|
|
add_library(${_name}-temporary STATIC "${ARGN}")
|
|
|
|
set_target_properties(${_name}-temporary PROPERTIES
|
|
|
|
ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}")
|
|
|
|
set(_aname $<TARGET_FILE:${_name}-temporary>)
|
|
|
|
set(_lname ${_name}-combined.list)
|
|
|
|
set(_oname ${_name}-combined.o)
|
2016-06-01 11:48:26 -05:00
|
|
|
add_custom_command(
|
2016-06-01 19:21:10 -05:00
|
|
|
OUTPUT ${_oname}
|
2016-06-01 11:48:26 -05:00
|
|
|
COMMAND
|
2016-06-01 19:21:10 -05:00
|
|
|
nm -m ${_aname} | sed -E -n "'s/^[0-9a-f]* \\([A-Z_]+,[a-z_]+\\) external //p'" > ${_lname}
|
2016-06-01 11:48:26 -05:00
|
|
|
COMMAND
|
2016-06-01 19:21:10 -05:00
|
|
|
ld -exported_symbols_list ${_lname} -r -all_load ${_aname} -o ${_oname}
|
2016-06-01 11:48:26 -05:00
|
|
|
COMMENT "Removing hidden symbols")
|
2016-06-01 19:21:10 -05:00
|
|
|
add_library(${_name} STATIC ${_oname})
|
|
|
|
# otherwise cmake won't know which linker to use
|
|
|
|
set_target_properties(${_name} PROPERTIES
|
|
|
|
LINKER_LANGUAGE C)
|
|
|
|
set(_aname)
|
|
|
|
set(_lname)
|
|
|
|
set(_oname)
|
2016-06-01 11:48:26 -05:00
|
|
|
endmacro()
|