Commit 193b75db authored by Adam Jackson's avatar Adam Jackson 🎧
Browse files

meson: Spread the install rules into their subdirs



Mostly this is is so the generated Xpoll.h can be emitted into a usable
directory when we build as a subproject.
Signed-off-by: Adam Jackson's avatarAdam Jackson <ajax@redhat.com>
parent 0d433001
install_headers('glcore.h', subdir : 'GL/internal')
install_headers(
'glxint.h',
'glxmd.h',
'glxproto.h',
'glxtokens.h',
subdir : 'GL')
subdir('internal')
install_headers(
'PM.h',
'PMproto.h',
subdir : 'X11/PM'
)
install_headers(
'xf86dri.h',
'xf86driproto.h',
'xf86dristr.h',
subdir : 'X11/dri'
)
install_headers(
'ag.h',
'agproto.h',
'applewmconst.h',
'applewmproto.h',
'bigreqsproto.h',
'bigreqstr.h',
'composite.h',
'compositeproto.h',
'cup.h',
'cupproto.h',
'damageproto.h',
'damagewire.h',
'dbe.h',
'dbeproto.h',
'dmx.h',
'dmxproto.h',
'dpmsconst.h',
'dpmsproto.h',
'dri2proto.h',
'dri2tokens.h',
'dri3proto.h',
'EVI.h',
'EVIproto.h',
'ge.h',
'geproto.h',
'lbx.h',
'lbxproto.h',
'mitmiscconst.h',
'mitmiscproto.h',
'multibufconst.h',
'multibufproto.h',
'panoramiXproto.h',
'presentproto.h',
'presenttokens.h',
'randr.h',
'randrproto.h',
'recordconst.h',
'recordproto.h',
'recordstr.h',
'render.h',
'renderproto.h',
'saver.h',
'saverproto.h',
'secur.h',
'securproto.h',
'shapeconst.h',
'shapeproto.h',
'shapestr.h',
'shm.h',
'shmproto.h',
'shmstr.h',
'syncconst.h',
'syncproto.h',
'syncstr.h',
'vldXvMC.h',
'windowswm.h',
'windowswmstr.h',
'xcmiscproto.h',
'xcmiscstr.h',
'xf86bigfont.h',
'xf86bigfproto.h',
'xf86bigfstr.h',
'xf86dga1const.h',
'xf86dga1proto.h',
'xf86dga1str.h',
'xf86dgaconst.h',
'xf86dga.h',
'xf86dgaproto.h',
'xf86dgastr.h',
'xf86misc.h',
'xf86mscstr.h',
'xf86vm.h',
'xf86vmproto.h',
'xf86vmstr.h',
'xfixesproto.h',
'xfixeswire.h',
'XI2.h',
'XI2proto.h',
'XI.h',
'XIproto.h',
'XKBgeom.h',
'XKB.h',
'XKBproto.h',
'XKBsrv.h',
'XKBstr.h',
'XResproto.h',
'xtestconst.h',
'xtestext1const.h',
'xtestext1proto.h',
'xtestproto.h',
'xtrapbits.h',
'xtrapddmi.h',
'xtrapdi.h',
'xtrapemacros.h',
'xtraplib.h',
'xtraplibp.h',
'xtrapproto.h',
'Xv.h',
'XvMC.h',
'XvMCproto.h',
'Xvproto.h',
subdir : 'X11/extensions'
)
if get_option('legacy') == true
install_headers(
'evieproto.h',
'fontcache.h',
'fontcacheP.h',
'fontcachstr.h',
'lgewire.h',
'Print.h',
'Printstr.h',
'xcalibrateproto.h',
'xcalibratewire.h',
'Xeviestr.h',
'xf86rush.h',
'xf86rushstr.h',
subdir : 'X11/extensions'
)
endif
install_headers(
'font.h',
'fontproto.h',
'fontstruct.h',
'FS.h',
'fsmasks.h',
'FSproto.h',
subdir : 'X11/fonts'
)
fd_set_maybe_headers = [ 'sys/param.h',
'sys/types.h',
'sys/time.h',
'sys/select.h'
]
fd_set_headers = ''
foreach h : fd_set_maybe_headers
if cc.has_header(h)
fd_set_headers += '#include <' + h + '>\n'
endif
endforeach
# generated headers. try not to make more of these, please.
if cc.has_member('fd_set', 'fds_bits', prefix: fd_set_headers)
fds_bits = 'fds_bits'
elif cc.has_member('fd_set', '__fds_bits', prefix: fd_set_headers)
fds_bits = '__fds_bits'
else
error('Your fd_set is too weird.')
endif
custom_target('Xpoll.h',
capture : true,
install : true,
install_dir : get_option('includedir') + '/X11',
input : 'Xpoll.h.in',
output : 'Xpoll.h',
command : [ sed,
's/@USE_FDS_BITS@/' + fds_bits + '/g',
'@INPUT@'])
install_headers(
'ap_keysym.h',
'DECkeysym.h',
'HPkeysym.h',
'keysymdef.h',
'keysym.h',
'Sunkeysym.h',
'Xalloca.h',
'Xarch.h',
'Xatom.h',
'Xdefs.h',
'XF86keysym.h',
'Xfuncs.h',
'Xfuncproto.h',
'X.h',
'Xmd.h',
'Xosdefs.h',
'Xos.h',
'Xos_r.h',
'Xproto.h',
'Xprotostr.h',
'Xthreads.h',
'Xw32defs.h',
'XWDFile.h',
'Xwindows.h',
'Xwinsock.h',
subdir : 'X11')
subdir('dri')
subdir('extensions')
subdir('fonts')
subdir('PM')
subdir('GL')
subdir('X11')
......@@ -18,177 +18,10 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
project('xorgproto', license : 'MIT', version : '2018.0')
project('xorgproto', 'c', license : 'MIT', version : '2018.0')
pkg = import('pkgconfig')
# core
install_headers(
'include/X11/ap_keysym.h',
'include/X11/DECkeysym.h',
'include/X11/HPkeysym.h',
'include/X11/keysymdef.h',
'include/X11/keysym.h',
'include/X11/Sunkeysym.h',
'include/X11/Xalloca.h',
'include/X11/Xarch.h',
'include/X11/Xatom.h',
'include/X11/Xdefs.h',
'include/X11/XF86keysym.h',
'include/X11/Xfuncs.h',
'include/X11/X.h',
'include/X11/Xmd.h',
'include/X11/Xosdefs.h',
'include/X11/Xos.h',
'include/X11/Xos_r.h',
'include/X11/Xproto.h',
'include/X11/Xprotostr.h',
'include/X11/Xthreads.h',
'include/X11/Xw32defs.h',
'include/X11/XWDFile.h',
'include/X11/Xwindows.h',
'include/X11/Xwinsock.h',
subdir : 'X11')
# proxy manager
install_headers(
'include/X11/PM/PM.h',
'include/X11/PM/PMproto.h',
subdir : 'X11/PM'
)
# fonts
install_headers(
'include/X11/fonts/font.h',
'include/X11/fonts/fontproto.h',
'include/X11/fonts/fontstruct.h',
'include/X11/fonts/FS.h',
'include/X11/fonts/fsmasks.h',
'include/X11/fonts/FSproto.h',
subdir : 'X11/fonts'
)
# dri1
install_headers(
'include/X11/dri/xf86dri.h',
'include/X11/dri/xf86driproto.h',
'include/X11/dri/xf86dristr.h',
subdir : 'X11/dri'
)
# GL
install_headers(
'include/GL/glxint.h',
'include/GL/glxmd.h',
'include/GL/glxproto.h',
'include/GL/glxtokens.h',
subdir : 'GL')
install_headers('include/GL/internal/glcore.h', subdir : 'GL/internal')
# all other extensions
install_headers(
'include/X11/extensions/ag.h',
'include/X11/extensions/agproto.h',
'include/X11/extensions/applewmconst.h',
'include/X11/extensions/applewmproto.h',
'include/X11/extensions/bigreqsproto.h',
'include/X11/extensions/bigreqstr.h',
'include/X11/extensions/composite.h',
'include/X11/extensions/compositeproto.h',
'include/X11/extensions/cup.h',
'include/X11/extensions/cupproto.h',
'include/X11/extensions/damageproto.h',
'include/X11/extensions/damagewire.h',
'include/X11/extensions/dbe.h',
'include/X11/extensions/dbeproto.h',
'include/X11/extensions/dmx.h',
'include/X11/extensions/dmxproto.h',
'include/X11/extensions/dpmsconst.h',
'include/X11/extensions/dpmsproto.h',
'include/X11/extensions/dri2proto.h',
'include/X11/extensions/dri2tokens.h',
'include/X11/extensions/dri3proto.h',
'include/X11/extensions/EVI.h',
'include/X11/extensions/EVIproto.h',
'include/X11/extensions/ge.h',
'include/X11/extensions/geproto.h',
'include/X11/extensions/lbx.h',
'include/X11/extensions/lbxproto.h',
'include/X11/extensions/mitmiscconst.h',
'include/X11/extensions/mitmiscproto.h',
'include/X11/extensions/multibufconst.h',
'include/X11/extensions/multibufproto.h',
'include/X11/extensions/panoramiXproto.h',
'include/X11/extensions/presentproto.h',
'include/X11/extensions/presenttokens.h',
'include/X11/extensions/randr.h',
'include/X11/extensions/randrproto.h',
'include/X11/extensions/recordconst.h',
'include/X11/extensions/recordproto.h',
'include/X11/extensions/recordstr.h',
'include/X11/extensions/render.h',
'include/X11/extensions/renderproto.h',
'include/X11/extensions/saver.h',
'include/X11/extensions/saverproto.h',
'include/X11/extensions/secur.h',
'include/X11/extensions/securproto.h',
'include/X11/extensions/shapeconst.h',
'include/X11/extensions/shapeproto.h',
'include/X11/extensions/shapestr.h',
'include/X11/extensions/shm.h',
'include/X11/extensions/shmproto.h',
'include/X11/extensions/shmstr.h',
'include/X11/extensions/syncconst.h',
'include/X11/extensions/syncproto.h',
'include/X11/extensions/syncstr.h',
'include/X11/extensions/vldXvMC.h',
'include/X11/extensions/windowswm.h',
'include/X11/extensions/windowswmstr.h',
'include/X11/extensions/xcmiscproto.h',
'include/X11/extensions/xcmiscstr.h',
'include/X11/extensions/xf86bigfont.h',
'include/X11/extensions/xf86bigfproto.h',
'include/X11/extensions/xf86bigfstr.h',
'include/X11/extensions/xf86dga1const.h',
'include/X11/extensions/xf86dga1proto.h',
'include/X11/extensions/xf86dga1str.h',
'include/X11/extensions/xf86dgaconst.h',
'include/X11/extensions/xf86dga.h',
'include/X11/extensions/xf86dgaproto.h',
'include/X11/extensions/xf86dgastr.h',
'include/X11/extensions/xf86misc.h',
'include/X11/extensions/xf86mscstr.h',
'include/X11/extensions/xf86vm.h',
'include/X11/extensions/xf86vmproto.h',
'include/X11/extensions/xf86vmstr.h',
'include/X11/extensions/xfixesproto.h',
'include/X11/extensions/xfixeswire.h',
'include/X11/extensions/XI2.h',
'include/X11/extensions/XI2proto.h',
'include/X11/extensions/XI.h',
'include/X11/extensions/XIproto.h',
'include/X11/extensions/XKBgeom.h',
'include/X11/extensions/XKB.h',
'include/X11/extensions/XKBproto.h',
'include/X11/extensions/XKBsrv.h',
'include/X11/extensions/XKBstr.h',
'include/X11/extensions/XResproto.h',
'include/X11/extensions/xtestconst.h',
'include/X11/extensions/xtestext1const.h',
'include/X11/extensions/xtestext1proto.h',
'include/X11/extensions/xtestproto.h',
'include/X11/extensions/xtrapbits.h',
'include/X11/extensions/xtrapddmi.h',
'include/X11/extensions/xtrapdi.h',
'include/X11/extensions/xtrapemacros.h',
'include/X11/extensions/xtraplib.h',
'include/X11/extensions/xtraplibp.h',
'include/X11/extensions/xtrapproto.h',
'include/X11/extensions/Xv.h',
'include/X11/extensions/XvMC.h',
'include/X11/extensions/XvMCproto.h',
'include/X11/extensions/Xvproto.h',
subdir : 'X11/extensions'
)
cc = meson.get_compiler('c')
sed = find_program('sed')
pcs = [
['applewmproto', '1.4.2'],
......@@ -234,23 +67,7 @@ foreach pc : pcs
)
endforeach
# legacy
if get_option('legacy') == true
install_headers(
'include/X11/extensions/evieproto.h',
'include/X11/extensions/fontcache.h',
'include/X11/extensions/fontcacheP.h',
'include/X11/extensions/fontcachstr.h',
'include/X11/extensions/lgewire.h',
'include/X11/extensions/Print.h',
'include/X11/extensions/Printstr.h',
'include/X11/extensions/xcalibrateproto.h',
'include/X11/extensions/xcalibratewire.h',
'include/X11/extensions/Xeviestr.h',
'include/X11/extensions/xf86rush.h',
'include/X11/extensions/xf86rushstr.h',
subdir : 'X11/extensions'
)
legacy_pcs = [
['evieproto', '1.1.1'],
['fontcacheproto', '0.1.3'],
......@@ -273,3 +90,5 @@ endif
ext_xorgproto = declare_dependency(
include_directories : include_directories('include')
)
subdir('include')
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment