diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2020-01-17 13:47:02 +0100 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2020-01-17 13:47:02 +0100 |
commit | 9a900fb97114cbb84a08f43a30b8e6a387c72480 (patch) | |
tree | 3b1eaa1c5acb8015389fdb1df92e7ba9ca169801 | |
parent | 16fce2ee7cb6131410e6b190879ad62ef636314a (diff) | |
download | vconsole-9a900fb97114cbb84a08f43a30b8e6a387c72480.tar.gz |
drop makefiles
-rw-r--r-- | GNUmakefile | 90 | ||||
-rw-r--r-- | mk/Autoconf.mk | 168 | ||||
-rw-r--r-- | mk/Compile.mk | 102 | ||||
-rw-r--r-- | mk/Maintainer.mk | 43 | ||||
-rw-r--r-- | mk/Variables.mk | 55 |
5 files changed, 0 insertions, 458 deletions
diff --git a/GNUmakefile b/GNUmakefile deleted file mode 100644 index bf22200..0000000 --- a/GNUmakefile +++ /dev/null @@ -1,90 +0,0 @@ -# config --include Make.config -include mk/Variables.mk - -# add our flags + libs -CFLAGS += -DVERSION='"$(VERSION)"' -DLIB='"$(LIB)"' -CFLAGS += -Wno-pointer-sign - -# valgrind options -VFLAGS := --leak-check=full --show-possibly-lost=no - -# build -TARGETS := vconsole vpublish - -all: build - -################################################################# -# poor man's autoconf ;-) - -include mk/Autoconf.mk - -define make-config -LIB := $(LIB) -endef - -pkgs_vconsole := glib-2.0 gthread-2.0 gtk+-3.0 vte-2.91 libvirt -pkgs_vpublish := glib-2.0 gthread-2.0 libvirt libxml-2.0 avahi-client avahi-glib -HAVE_DEPS := $(shell pkg-config $(pkgs_vconsole) $(pkgs_vpublish) && echo yes) - -vconsole : pkglst := $(pkgs_vconsole) -vpublish : pkglst := $(pkgs_vpublish) - -CFLAGS += $(shell pkg-config --cflags $(pkglst)) -LDLIBS += $(shell pkg-config --libs $(pkglst)) - -# desktop files -DESKTOP := $(wildcard $(patsubst %,%.desktop,$(TARGETS))) -SERVICE := $(wildcard $(patsubst %,%.service,$(TARGETS))) - - -######################################################################## -# rules - -ifneq ($(HAVE_DEPS),yes) - -.PHONY: deps -build: - @echo "Build dependencies missing." - @echo " vconsole needs: $(pkgs_vconsole)" - @echo " vpublish needs: $(pkgs_vpublish)" - @echo "Please install. You can try 'make yum' (needs sudo)." - @echo "" - @false - -yum dnf: - sudo $@ install $(patsubst %,"pkgconfig(%)",$(pkgs_vconsole) $(pkgs_vpublish)) - -else - -build: $(TARGETS) - -endif - -install: build - $(INSTALL_DIR) $(bindir) $(mandir)/man1 $(appdir) - $(INSTALL_BINARY) $(TARGETS) $(bindir) - $(INSTALL_DATA) vconsole.1 $(mandir)/man1 - $(INSTALL_DATA) $(DESKTOP) $(appdir) - $(INSTALL_DIR) $(DESTDIR)/usr/lib/systemd/system - $(INSTALL_DATA) $(SERVICE) $(DESTDIR)/usr/lib/systemd/system - -valgrind: vconsole - rm -f valgrind.log - valgrind $(VFLAGS) --log-file=valgrind.log ./vconsole - -clean: - -rm -f *.o *~ $(depfiles) - -realclean distclean: clean - -rm -f Make.config - -rm -f $(TARGETS) *~ *.bak - -############################################# - -vconsole: vconsole.o connect.o domain.o libvirt-glib-event.o -vpublish: vpublish.o mdns-publish.o libvirt-glib-event.o - -include mk/Compile.mk -include mk/Maintainer.mk --include $(depfiles) diff --git a/mk/Autoconf.mk b/mk/Autoconf.mk deleted file mode 100644 index 45177a2..0000000 --- a/mk/Autoconf.mk +++ /dev/null @@ -1,168 +0,0 @@ -# -# simple autoconf system for GNU make -# -# (c) 2002-2006 Gerd Hoffmann <kraxel@suse.de> -# -# credits for creating this one go to the autotools people because -# they managed it to annoy lots of developers and users (including -# me) with version incompatibilities. -# -# This file is public domain. No warranty. If it breaks you keep -# both pieces. -# -######################################################################## - -# verbose yes/no -verbose ?= no - -# some stuff used by the tests -ifneq ($(verbose),no) - # verbose (for debug) - ac_init = echo "checking $(1) ... " >&2; rc=no - ac_b_cmd = echo "run: $(1)" >&2; $(1) >/dev/null && rc=yes - ac_s_cmd = echo "run: $(1)" >&2; rc=`$(1)` - ac_fini = echo "... result is $${rc}" >&2; echo >&2; echo "$${rc}" -else - # normal - ac_init = echo -n "checking $(1) ... " >&2; rc=no - ac_b_cmd = $(1) >/dev/null 2>&1 && rc=yes - ac_s_cmd = rc=`$(1) 2>/dev/null` - ac_fini = echo "$${rc}" >&2; echo "$${rc}" -endif - -# some helpers to build cflags and related variables -ac_def_cflags_1 = $(if $(filter yes,$($(1))),-D$(1)) -ac_lib_cflags = $(foreach lib,$(1),$(call ac_def_cflags_1,HAVE_LIB$(lib))) -ac_inc_cflags = $(foreach inc,$(1),$(call ac_def_cflags_1,HAVE_$(inc))) -ac_lib_mkvar_1 = $(if $(filter yes,$(HAVE_LIB$(1))),$($(1)_$(2))) -ac_lib_mkvar = $(foreach lib,$(1),$(call ac_lib_mkvar_1,$(lib),$(2))) - - -######################################################################## -# the tests ... - -# get uname -ac_uname = $(shell \ - $(call ac_init,for system);\ - $(call ac_s_cmd,uname -s | tr 'A-Z' 'a-z');\ - $(call ac_fini)) - -ac_uname_arch = $(shell \ - $(call ac_init,for arch);\ - $(call ac_s_cmd,uname -m | tr 'A-Z' 'a-z');\ - $(call ac_fini)) - -# check for some header file -# args: header file -ac_header = $(shell \ - $(call ac_init,for $(1));\ - $(call ac_b_cmd,echo '\#include <$(1)>' |\ - $(CC) $(CFLAGS) -E -);\ - $(call ac_fini)) - -# check for some function -# args: function [, additional libs ] -ac_func = $(shell \ - $(call ac_init,for $(1));\ - echo 'void $(1)(void); int main(void) {$(1)();return 0;}' \ - > __actest.c;\ - $(call ac_b_cmd,$(CC) $(CFLAGS) $(LDFLAGS) -o \ - __actest __actest.c $(2));\ - rm -f __actest __actest.c;\ - $(call ac_fini)) - -# check for some library -# args: function, library [, additional libs ] -ac_lib = $(shell \ - $(call ac_init,for $(1) in $(2));\ - echo 'void $(1)(void); int main(void) {$(1)();return 0;}' \ - > __actest.c;\ - $(call ac_b_cmd,$(CC) $(CFLAGS) $(LDFLAGS) -o \ - __actest __actest.c -l$(2) $(3));\ - rm -f __actest __actest.c;\ - $(call ac_fini)) - -# check if some compiler flag works -# args: compiler flag -ac_cflag = $(shell \ - $(call ac_init,for $(CC) cflags);\ - echo 'int main() {return 0;}' > __actest.c;\ - $(call ac_b_cmd,$(CC) $(CFLAGS) $(1) $(LDFLAGS) -o \ - __actest __actest.c);\ - rm -f __actest __actest.c;\ - if test "$${rc}" = "yes"; then rc="$(1)"; else rc="$(2)"; fi;\ - $(call ac_fini)) - -# check for some binary -# args: binary name -ac_binary = $(shell \ - $(call ac_init,for $(1));\ - $(call ac_s_cmd,which $(1));\ - bin="$$rc";rc="no";\ - $(call ac_b_cmd,test -x "$$$$bin");\ - $(call ac_fini)) - -# check if lib64 is used -#ac_lib64 = $(shell \ -# $(call ac_init,for libdir name);\ -# $(call ac_s_cmd,$(CC) -print-search-dirs | grep -q lib64 &&\ -# echo "lib64" || echo "lib");\ -# $(call ac_fini)) -ac_lib64 = $(shell \ - $(call ac_init,for libdir name);\ - $(call ac_s_cmd,/sbin/ldconfig -p | grep -q lib64 &&\ - echo "lib64" || echo "lib");\ - $(call ac_fini)) - -# check for x11 ressource dir prefix -ac_resdir = $(shell \ - $(call ac_init,for X11 app-defaults prefix);\ - $(call ac_s_cmd, for dir in \ - /etc/X11/app-defaults \ - /usr/X11R6/lib/X11/app-defaults \ - /usr/share/X11/app-defaults \ - /usr/lib/X11/app-defaults \ - ; do test -d "$$dir" || continue;\ - dirname "$$dir"; break; done);\ - $(call ac_fini)) - -# check if package is installed, via pkg-config -# args: pkg name -ac_pkg_config = $(shell \ - $(call ac_init,for $(1) (using pkg-config));\ - $(call ac_b_cmd, pkg-config $(1));\ - $(call ac_fini)) - -# grep some file -# args: regex, file -ac_grep = $(shell \ - $(call ac_init,for $(1) in $(2));\ - $(call ac_b_cmd, grep -q $(1) $(2));\ - $(call ac_fini)) - - -######################################################################## -# build Make.config - -define newline - - -endef -make-config-q = $(subst $(newline),\n,$(make-config)) - -ifeq ($(filter config,$(MAKECMDGOALS)),config) -.PHONY: Make.config - LIB := $(call ac_lib64) -else - LIB ?= $(call ac_lib64) - LIB := $(LIB) -endif -.PHONY: config -config: Make.config - @true - -Make.config: $(srcdir)/GNUmakefile - @/bin/echo -e "$(make-config-q)" > $@ - @echo - @echo "Make.config written, edit if needed" - @echo diff --git a/mk/Compile.mk b/mk/Compile.mk deleted file mode 100644 index ae88f14..0000000 --- a/mk/Compile.mk +++ /dev/null @@ -1,102 +0,0 @@ -# -# some rules to compile stuff ... -# -# (c) 2002-2006 Gerd Hoffmann <kraxel@suse.de> -# -# main features: -# * autodependencies via "cpp -MD" -# * fancy, non-verbose output -# -# This file is public domain. No warranty. If it breaks you keep -# both pieces. -# -######################################################################## - -# verbose yes/no -verbose ?= no - -# dependency files -tmpdep = mk/$(subst /,_,$*).tmp -depfile = mk/$(subst /,_,$*).dep -depfiles = mk/*.dep - -compile_c = $(CC) $(CFLAGS) -Wp,-MD,$(tmpdep) -c -o $@ $< -compile_c_pic = $(CC) $(CFLAGS) -fPIC -Wp,-MD,$(tmpdep) -c -o $@ $< -compile_cc = $(CXX) $(CXXFLAGS) -Wp,-MD,$(tmpdep) -c -o $@ $< -fixup_deps = sed -e "s|.*\.o:|$@:|" < $(tmpdep) > $(depfile) && rm -f $(tmpdep) -cc_makedirs = mkdir -p $(dir $@) $(dir $(depfile)) - -link_app = $(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS) -link_so = $(CC) $(LDFLAGS) -shared -Wl,-soname,$(@F) -o $@ $^ $(LDLIBS) -ar_lib = rm -f $@ && ar -r $@ $^ && ranlib $@ - -moc_h = $(MOC) $< -o $@ -msgfmt_po = msgfmt -o $@ $< - -# non-verbose output -ifeq ($(verbose),no) - echo_compile_c = echo " CC " $@ - echo_compile_c_pic = echo " CC " $@ - echo_compile_cc = echo " CXX " $@ - echo_link_app = echo " LD " $@ - echo_link_so = echo " LD " $@ - echo_ar_lib = echo " AR " $@ - echo_moc_h = echo " MOC " $@ - echo_msgfmt_po = echo " MSGFMT " $@ -else - echo_compile_c = echo $(compile_c) - echo_compile_c_pic = echo $(compile_c_pic) - echo_compile_cc = echo $(compile_cc) - echo_link_app = echo $(link_app) - echo_link_so = echo $(link_so) - echo_ar_lib = echo $(ar_lib) - echo_moc_h = echo $(moc_h) - echo_msgfmt_po = echo $(msgfmt_po) -endif - -%.o: %.c - @$(cc_makedirs) - @$(echo_compile_c) - @$(compile_c) - @$(fixup_deps) - -%.opic: %.c - @$(cc_makedirs) - @$(echo_compile_c_pic) - @$(compile_c_pic) - @$(fixup_deps) - -%.o: %.cc - @$(cc_makedirs) - @$(echo_compile_cc) - @$(compile_cc) - @$(fixup_deps) - -%.o: %.cpp - @$(cc_makedirs) - @$(echo_compile_cc) - @$(compile_cc) - @$(fixup_deps) - - -%: %.o - @$(echo_link_app) - @$(link_app) - -%.so: %.o - @$(echo_link_so) - @$(link_so) - -%.a: %.o - @$(echo_ar_lib) - @$(ar_lib) - - -%.moc : %.h - @$(echo_moc_h) - @$(moc_h) - -%.mo : %.po - @$(echo_msgfmt_po) - @$(msgfmt_po) - diff --git a/mk/Maintainer.mk b/mk/Maintainer.mk deleted file mode 100644 index b0d1c5a..0000000 --- a/mk/Maintainer.mk +++ /dev/null @@ -1,43 +0,0 @@ -# just some maintainer stuff for me ... -######################################################################## - -make-sync-dir = $(HOME)/projects/gnu-makefiles - -.PHONY: sync -sync:: distclean - test -d $(make-sync-dir) - rm -f $(srcdir)/INSTALL $(srcdir)/mk/*.mk - cp -v $(make-sync-dir)/INSTALL $(srcdir)/. - cp -v $(make-sync-dir)/*.mk $(srcdir)/mk - chmod 444 $(srcdir)/INSTALL $(srcdir)/mk/*.mk - - -repository := $(shell basename $(PWD)) -usetito := $(shell if test -d .tito; then echo yes; else echo no; fi) -release-dir ?= $(HOME)/projects/Releases -release-pub ?= bigendian.kraxel.org:/public/vhosts/www.kraxel.org/releases/$(repository) -tarball = $(release-dir)/$(repository)-$(VERSION).tar - -ifeq ($(usetito),yes) - -$(tarball).gz: - tito build --output $(release-dir) --tgz - -else - -$(tarball).gz: - git tag -m "release $(VERSION)" "$(VERSION)" - git push --tags - git archive --format=tar --prefix=$(repository)-$(VERSION)/ \ - -o $(tarball) $(VERSION) - gzip $(tarball) - -endif - -$(tarball).gz.asc: $(tarball).gz - gpg --detach-sign --armor $(tarball).gz - -.PHONY: release -release: $(tarball).gz.asc - scp $(tarball).gz* $(release-pub) - diff --git a/mk/Variables.mk b/mk/Variables.mk deleted file mode 100644 index 99f787c..0000000 --- a/mk/Variables.mk +++ /dev/null @@ -1,55 +0,0 @@ -# common variables ... -######################################################################## - -# directories -DESTDIR = -srcdir ?= . -prefix ?= /usr/local -bindir = $(DESTDIR)$(prefix)/bin -sbindir = $(DESTDIR)$(prefix)/sbin -libdir = $(DESTDIR)$(prefix)/$(LIB) -shrdir = $(DESTDIR)$(prefix)/share -mandir = $(shrdir)/man -locdir = $(shrdir)/locale -appdir = $(shrdir)/applications - -# package + version -empty := -space := $(empty) $(empty) -ifneq ($(wildcard $(srcdir)/VERSION),) - VERSION := $(shell cat $(srcdir)/VERSION) -else - VERSION := 42 -endif -RELTAG := v$(subst .,_,$(VERSION)) - -# programs -CC ?= gcc -CXX ?= g++ -MOC ?= $(if $(QTDIR),$(QTDIR)/bin/moc,moc) - -STRIP ?= -s -INSTALL ?= install -INSTALL_BINARY := $(INSTALL) $(STRIP) -INSTALL_SCRIPT := $(INSTALL) -INSTALL_DATA := $(INSTALL) -m 644 -INSTALL_DIR := $(INSTALL) -d - -# cflags -CFLAGS ?= -g -O2 -CXXFLAGS ?= $(CFLAGS) -CFLAGS += -Wall -Wmissing-prototypes -Wstrict-prototypes \ - -Wpointer-arith -Wunused -CXXFLAGS += -Wall -Wpointer-arith -Wunused - -# add /usr/local to the search path if something is in there ... -ifneq ($(wildcard /usr/local/include/*.h),) - CFLAGS += -I/usr/local/include - LDFLAGS += -L/usr/local/$(LIB) -endif - -# fixup include path for $(srcdir) != "." -ifneq ($(srcdir),.) - CFLAGS += -I. -I$(srcdir) -endif - |