mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-11-05 19:03:31 +00:00
6c90b529a1
Reproduce: make touch libnm-util/NetworkManager-1.0.gir make make # rebuilds "VAPIGEN vapi/libnm-util.vapi" every time. ls -la libnm-util/NetworkManager-1.0.gir vapi/libnm-util.vapi # note that vapi/libnm-util.vapi was not touched. See-also: https://git.gnome.org/browse/vala/tree/ccode/valaccodewriter.vala?id=f52b484954d3297ae4c3230fbe969db18eb08841#n117 See-also: https://bugzilla.gnome.org/show_bug.cgi?id=773325
62 lines
2.1 KiB
Text
62 lines
2.1 KiB
Text
# Makefile for Vala API Generator (vapigen)
|
|
# Written by Evan Nemerson
|
|
#
|
|
# The author disclaims copyright to this source code. In place of
|
|
# a legal notice, here is a blessing:
|
|
#
|
|
# May you do good and not evil.
|
|
# May you find forgiveness for yourself and forgive others.
|
|
# May you share freely, never taking more than you give.
|
|
#
|
|
# See http://live.gnome.org/Vala/UpstreamGuide for detailed documentation
|
|
#
|
|
# Variables:
|
|
#
|
|
# VAPIGEN_FILES
|
|
#
|
|
# VAPIs to create
|
|
#
|
|
# *_DEPS / VAPIGEN_DEPS
|
|
#
|
|
# The dependencies. Generally the pkg-config names.
|
|
#
|
|
# *_METADATADIRS / VAPIGEN_METADATADIRS
|
|
#
|
|
# Directory containing the metadata.
|
|
#
|
|
# *_VAPIDIRS / VAPIGEN_VAPIDIRS
|
|
#
|
|
# Additional location(s) to search for VAPI dependencies.
|
|
#
|
|
# *_GIRDIRS / VAPIGEN_GIRDIRS
|
|
#
|
|
# Additional location(s) to search for GIR dependencies.
|
|
#
|
|
# *_FILES
|
|
#
|
|
# The files which should be used to generate the VAPI.
|
|
|
|
_vapigen_silent_prefix = $(_vapigen_silent_prefix_$(V))
|
|
_vapigen_silent_prefix_ = $(_vapigen_silent_prefix_$(AM_DEFAULT_VERBOSITY))
|
|
_vapigen_silent_prefix_0 = @echo " VAPIGEN $(1)";
|
|
_vapigen_silent_opts = $(_vapigen_silent_opts_$(V))
|
|
_vapigen_silent_opts_ = $(_vapigen_silent_opts_$(AM_DEFAULT_VERBOSITY))
|
|
_vapigen_silent_opts_0 = --quiet
|
|
|
|
_vapi_name = $(subst /,_,$(subst -,_,$(subst .,_,$(1))))
|
|
|
|
define vapigen
|
|
$(1): $$($(_vapi_name)_GIR)
|
|
$(_vapigen_silent_prefix) \
|
|
G_DEBUG='' \
|
|
$(VAPIGEN) $(_vapigen_silent_opts) \
|
|
--library $(1:.vapi=) \
|
|
$(foreach _vapi_metadatadir_name,$(if $($(_vapi_name)_METADATADIRS),$($(_vapi_name)_METADATADIRS),$(VAPIGEN_METADATADIRS)),--metadatadir $(_vapi_metadatadir_name)) \
|
|
$(foreach _vapi_dir_name,$(if $($(_vapi_name)_VAPIDIRS),$($(_vapi_name)_VAPIDIRS),$(VAPIGEN_VAPIDIRS)),--vapidir $(_vapi_dir_name)) \
|
|
$(foreach _vapi_gir_dir,$(if $($(_vapi_name)_GIRDIRS),$($(_vapi_name)_GIRDIRS),$(VAPIGEN_GIRDIRS)),--girdir $(_vapi_gir_dir)) \
|
|
$(foreach _vapi_dep_name,$(if $($(_vapi_name)_DEPS),$($(_vapi_name)_DEPS),$(VAPIGEN_DEPS)),--pkg $(_vapi_dep_name)) \
|
|
$$($(_vapi_name)_FILES) && \
|
|
touch $(1)
|
|
endef
|
|
|
|
$(foreach vapi,$(VAPIGEN_VAPIS),$(eval $(call vapigen,$(vapi))))
|