# Makefile for clang autocompletion # # This Makefile produces .clang_complete files containing compiler flags # which are used by clang autocompletion tools such as: # # - https://atom.io/packages/autocomplete-clang # - https://github.com/Rip-Rip/clang_complete # # @author Steffen Vogel # @copyright 2017, Institute for Automation of Complex Power Systems, EONERC # @license GNU General Public License (version 3) # # VILLASnode # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . ################################################################################### SRCMODULES = src lib plugins tools tests/unit CLANG_COMPLETES = $(patsubst %,$(SRCDIR)/%/.clang_complete,$(SRCMODULES)) tests/unit/.clang_complete: FLAGS = $(TEST_CFLAGS) src/.clang_complete: FLAGS = $(SRC_CFLAGS) tools/.clang_complete: FLAGS = $(TOOLS_CFLAGS) plugins/.clang_complete: FLAGS = $(PLUGIN_CFLAGS) lib/.clang_complete: FLAGS = $(LIB_CFLAGS) %/.clang_complete: echo "$(FLAGS)" > $@ clang-complete: $(CLANG_COMPLETES) clean: clean-clang-complete clean-clang-complete: rm -f $(CLANG_COMPLETES) .PHONY: clang-complete