Filled meson.build a bit more, so I can ask questions about it.
This commit is contained in:
parent
f8543fc641
commit
355b5d05d3
46
meson.build
46
meson.build
|
@ -42,13 +42,15 @@ if libui_OS == 'windows' and libui_mode == 'shared' and not libui_MSVC
|
|||
endif
|
||||
|
||||
libui_deps = []
|
||||
libui_libversion = ''
|
||||
libui_soversion = ''
|
||||
libui_rpath = ''
|
||||
if libui_OS == 'windows'
|
||||
# TODO c_winlibs and cpp_winlibs are the windows libraries
|
||||
# user32 kernel32 gdi32 comctl32 uxtheme msimg32 comdlg32 d2d1 dwrite ole32 oleaut32 oleacc uuid windowscodecs
|
||||
elif libui_OS == 'darwin'
|
||||
# TODO libraries
|
||||
libui_libversion = 'A'
|
||||
# "-framework Foundation" "-framework AppKit"
|
||||
libui_soversion = 'A'
|
||||
# the / is required by some older versions of OS X
|
||||
libui_rpath = '@executable_path/'
|
||||
# TODO min version 10.8
|
||||
|
@ -57,10 +59,45 @@ else
|
|||
version: '>=3.10.0',
|
||||
required: true)
|
||||
libui_deps += [gtk]
|
||||
libui_libversion = '0'
|
||||
libui_soversion = '0'
|
||||
libui_rpath = '$ORIGIN'
|
||||
endif
|
||||
|
||||
if libui_MSVC
|
||||
# TODO subsystem version
|
||||
|
||||
# TODO -Wno-switch equivalent
|
||||
# TODO /sdl turns C4996 into an ERROR
|
||||
# don't use /analyze; that requires us to write annotations everywhere
|
||||
# TODO undecided flags from qo?
|
||||
# the RTC flags are only supplied in debug builds because they are only supposed to be used by debug builds (see "This is because run-time error checks are not valid in a release (optimized) build." in https://docs.microsoft.com/cpp/build/reference/rtc-run-time-error-checks)
|
||||
# /RTCc is not supplied because it's discouraged as of VS2015; see https://www.reddit.com/r/cpp/comments/46mhne/rtcc_rejects_conformant_code_with_visual_c_2015/d06auq5
|
||||
# /EHsc is to shut the compiler up in some cases
|
||||
# TODO add these compiler flags (assuming meson doesn't provide an alternate method for these, which I know it does for EHsc):
|
||||
# /wd4100 (equivalent of -Wno-unused-parameter)
|
||||
# /bigobj /nologo
|
||||
# $<$<CONFIG:Debug>:/RTC1 /RTCs /RTCu>
|
||||
# /EHsc
|
||||
|
||||
# TODO add these linker flags (for each: maybe? depends on whether meson does this itself)
|
||||
# /LARGEADDRESSAWARE
|
||||
# /NOLOGO
|
||||
# /INCREMENTAL:NO
|
||||
# /MANIFEST:NO
|
||||
else
|
||||
# TODO add these C/C++ compiler options
|
||||
# -Wno-unused-parameter
|
||||
# -Wno-switch
|
||||
|
||||
if libui_OS == 'windows'
|
||||
# don't require shipping the MinGW-w64 DLLs
|
||||
# TODO add these to the linker options
|
||||
# -static
|
||||
# -static-libgcc
|
||||
# -static-libstdc++
|
||||
endif
|
||||
endif
|
||||
|
||||
libui_sources = []
|
||||
libui_extra_libs = []
|
||||
subdir('common')
|
||||
|
@ -79,7 +116,8 @@ libui_libui = library('ui', libui_sources,
|
|||
build_rpath: libui_rpath,
|
||||
install_rpath: libui_rpath,
|
||||
install: true,
|
||||
gnu_symbol_visibility: 'hidden')
|
||||
gnu_symbol_visibility: 'hidden',
|
||||
soversion: libui_soversion)
|
||||
install_headers('ui.h')
|
||||
|
||||
# TODO test
|
||||
|
|
Loading…
Reference in New Issue