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
|
endif
|
||||||
|
|
||||||
libui_deps = []
|
libui_deps = []
|
||||||
libui_libversion = ''
|
libui_soversion = ''
|
||||||
libui_rpath = ''
|
libui_rpath = ''
|
||||||
if libui_OS == 'windows'
|
if libui_OS == 'windows'
|
||||||
# TODO c_winlibs and cpp_winlibs are the windows libraries
|
# 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'
|
elif libui_OS == 'darwin'
|
||||||
# TODO libraries
|
# TODO libraries
|
||||||
libui_libversion = 'A'
|
# "-framework Foundation" "-framework AppKit"
|
||||||
|
libui_soversion = 'A'
|
||||||
# the / is required by some older versions of OS X
|
# the / is required by some older versions of OS X
|
||||||
libui_rpath = '@executable_path/'
|
libui_rpath = '@executable_path/'
|
||||||
# TODO min version 10.8
|
# TODO min version 10.8
|
||||||
|
@ -57,10 +59,45 @@ else
|
||||||
version: '>=3.10.0',
|
version: '>=3.10.0',
|
||||||
required: true)
|
required: true)
|
||||||
libui_deps += [gtk]
|
libui_deps += [gtk]
|
||||||
libui_libversion = '0'
|
libui_soversion = '0'
|
||||||
libui_rpath = '$ORIGIN'
|
libui_rpath = '$ORIGIN'
|
||||||
endif
|
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_sources = []
|
||||||
libui_extra_libs = []
|
libui_extra_libs = []
|
||||||
subdir('common')
|
subdir('common')
|
||||||
|
@ -79,7 +116,8 @@ libui_libui = library('ui', libui_sources,
|
||||||
build_rpath: libui_rpath,
|
build_rpath: libui_rpath,
|
||||||
install_rpath: libui_rpath,
|
install_rpath: libui_rpath,
|
||||||
install: true,
|
install: true,
|
||||||
gnu_symbol_visibility: 'hidden')
|
gnu_symbol_visibility: 'hidden',
|
||||||
|
soversion: libui_soversion)
|
||||||
install_headers('ui.h')
|
install_headers('ui.h')
|
||||||
|
|
||||||
# TODO test
|
# TODO test
|
||||||
|
|
Loading…
Reference in New Issue