### @configure_input@ # Copyright (C) 2017-2024 Free Software Foundation, Inc. # This file is part of GNU Emacs. # GNU Emacs 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 # (at your option) any later version. # GNU Emacs 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 GNU Emacs. If not, see . PROGRAM = itree-tests PACKAGES = check top_srcdir = @top_srcdir@ top_builddir = @top_builddir@ CPPFLAGS += -I $(top_srcdir)/src CFLAGS += -O0 -g3 $(shell pkg-config --cflags $(PACKAGES)) LDLIBS += $(shell pkg-config --libs $(PACKAGES)) -lm OBJECTS = itree-tests.o CC = gcc EMACS ?= $(top_builddir)/src/emacs MANUAL_TEST_SRC = $(top_srcdir)/test/manual PERF_TEST_SRC = $(MANUAL_TEST_SRC)/perf NOVERLAY_TEST_SRC = $(MANUAL_TEST_SRC)/noverlay .PHONY: all check clean distclean perf all: check check: $(PROGRAM) ./check-sanitize.sh ./$(PROGRAM) emacs-compat.h: $(NOVERLAY_TEST_SRC)/emacs-compat.h cp -v $< $@ perf.el: $(PERF_TEST_SRC)/perf.el cp -v $< $@ overlay-perf.el: $(NOVERLAY_TEST_SRC)/overlay-perf.el cp -v $< $@ many-errors.py: $(NOVERLAY_TEST_SRC)/many-errors.py cp -v $< $@ itree-tests.o: emacs-compat.h $(top_srcdir)/src/itree.c $(top_srcdir)/src/itree.h perf: perf.el overlay-perf.el many-errors.py -$(EMACS) -Q -l ./perf.el -l ./overlay-perf.el -f perf-run-batch clean: rm -f -- $(OBJECTS) $(PROGRAM) distclean: clean rm -f -- Makefile