Radix cross Linux

The main Radix cross Linux repository contains the build scripts of packages, which have the most complete and common functionality for desktop machines

452 Commits   2 Branches   1 Tag
   169         kx #
   169         kx # daemon - https://libslack.org/daemon
   169         kx #
   169         kx # Copyright (C) 1999-2004, 2010, 2020-2023 raf <raf@raf.org>
   169         kx #
   169         kx # This program is free software; you can redistribute it and/or modify
   169         kx # it under the terms of the GNU General Public License as published by
   169         kx # the Free Software Foundation; either version 2 of the License, or
   169         kx # (at your option) any later version.
   169         kx #
   169         kx # This program is distributed in the hope that it will be useful,
   169         kx # but WITHOUT ANY WARRANTY; without even the implied warranty of
   169         kx # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   169         kx # GNU General Public License for more details.
   169         kx #
   169         kx # You should have received a copy of the GNU General Public License
   169         kx # along with this program; if not, see <https://www.gnu.org/licenses/>.
   169         kx #
   169         kx # 20230824 raf <raf@raf.org>
   169         kx #
   169         kx 
   169         kx # CC := gcc
   169         kx # CC := cc
   169         kx # CC := other
   169         kx # AR := ar
   169         kx # RANLIB := ranlib
   169         kx POD2MAN := pod2man
   169         kx POD2HTML := pod2html
   169         kx GZIP := gzip -f -9
   169         kx 
   169         kx DESTDIR :=
   169         kx PREFIX := /usr
   169         kx # PREFIX := /usr/pkg
   169         kx APP_INSDIR := $(PREFIX)/bin
   169         kx LIB_INSDIR := $(PREFIX)/lib
   169         kx #MAN_SYSDIR := $(PREFIX)/share/man
   169         kx #MAN_LOCDIR := $(PREFIX)/share/man
   169         kx #ifeq ($(PREFIX),/usr)
   169         kx #MAN_INSDIR := $(MAN_SYSDIR)
   169         kx #else
   169         kx #MAN_INSDIR := $(MAN_LOCDIR)
   169         kx #endif
   169         kx HDR_INSDIR := $(PREFIX)/include
   169         kx DATA_INSDIR := $(PREFIX)/share
   169         kx CONF_INSDIR := /etc
   169         kx APP_MANSECT := 1
   169         kx LIB_MANSECT := 3
   169         kx FMT_MANSECT := 5
   169         kx APP_MANDIR := $(PREFIX)/share/man/man$(APP_MANSECT)
   169         kx LIB_MANDIR := $(PREFIX)/share/man/man$(LIB_MANSECT)
   169         kx FMT_MANDIR := $(PREFIX)/share/man/man$(FMT_MANSECT)
   169         kx APP_MANSECTNAME := User Commands
   169         kx LIB_MANSECTNAME := C Library Functions - libslack
   169         kx FMT_MANSECTNAME := File Formats
   169         kx MAN_GZIP := 1
   169         kx 
   169         kx CCFLAGS += -O3
   169         kx CCFLAGS += -Wall -pedantic
   169         kx 
   169         kx # CCFLAGS += -xO4
   169         kx 
   169         kx CLEAN_FILES += tags core Makefile.bak .makefile.bak pod2htm*
   169         kx 
   169         kx DAEMON_SRCDIR := .
   169         kx DAEMON_INCDIRS := libslack
   169         kx # Uncomment this for Linux systems without systemd but with elogind (e.g. Slackware)
   169         kx # DAEMON_INCDIRS += /usr/include/elogind
   169         kx DAEMON_LIBDIRS := libslack
   169         kx include $(DAEMON_SRCDIR)/macros.mk
   169         kx 
   169         kx .PHONY: all ready test check man html install uninstall dist rpm deb sol obsd fbsd nbsd osx
   169         kx 
   169         kx all: ready $(ALL_TARGETS)
   169         kx ready: $(READY_TARGETS)
   169         kx check test: all $(TEST_TARGETS)
   169         kx man: $(MAN_TARGETS)
   169         kx html: $(HTML_TARGETS)
   169         kx install: all $(INSTALL_TARGETS)
   169         kx uninstall: $(UNINSTALL_TARGETS)
   169         kx dist: $(DIST_TARGETS)
   169         kx rpm: $(RPM_TARGETS)
   169         kx deb: $(DEB_TARGETS)
   169         kx sol: $(SOL_TARGETS)
   169         kx obsd: $(OBSD_TARGETS)
   169         kx fbsd: $(FBSD_TARGETS)
   169         kx nbsd: $(NBSD_TARGETS)
   169         kx osx: $(OSX_TARGETS)
   169         kx 
   169         kx .PHONY: help help-macros depend clean clobber distclean
   169         kx 
   169         kx help::
   169         kx 	@echo "This makefile provides the following targets."; \
   169         kx 	echo; \
   169         kx 	echo " help                 -- shows this list of targets"; \
   169         kx 	echo " help-macros          -- shows the values of all make macros"; \
   169         kx 	echo " all                  -- makes $(DAEMON_TARGET) and $(DAEMON_SUBTARGETS) (default)"; \
   169         kx 	echo " ready                -- prepares the source directory for make"; \
   169         kx 	echo " test                 -- makes and runs library unit tests"; \
   169         kx 	echo " check                -- same as test"; \
   169         kx 	echo " man                  -- generates all manpages"; \
   169         kx 	echo " html                 -- generates all manpages in html"; \
   169         kx 	echo " install              -- installs everything under $(PREFIX)"; \
   169         kx 	echo " uninstall            -- uninstalls everything from $(PREFIX)"; \
   169         kx 	echo " depend               -- generates source dependencies using makedepend"; \
   169         kx 	echo " tags                 -- generates a tags file using ctags"; \
   169         kx 	echo " clean                -- removes output files, tags, tests, and de-configures"; \
   169         kx 	echo " clobber              -- same as clean"; \
   169         kx 	echo " distclean            -- same as clean"; \
   169         kx 	echo " dist                 -- makes the distribution: ../$(DAEMON_DIST)"; \
   169         kx 	echo " rpm                  -- makes source and binary rpm packages [OLD]"; \
   169         kx 	echo " deb                  -- makes binary debian package [OLD]"; \
   169         kx 	echo " sol                  -- makes binary solaris package [OLD]"; \
   169         kx 	echo " obsd                 -- makes binary openbsd package [OLD]"; \
   169         kx 	echo " fbsd                 -- makes binary freebsd package [OLD]"; \
   169         kx 	echo " nbsd                 -- makes binary netbsd package [OLD]"; \
   169         kx 	echo " osx                  -- makes binary macosx package [OLD]"; \
   169         kx 	echo
   169         kx 
   169         kx help-macros::
   169         kx 	@echo "CC = $(CC)"; \
   169         kx 	echo "PREFIX = $(PREFIX)"; \
   169         kx 	echo "APP_INSDIR = $(APP_INSDIR)"; \
   169         kx 	echo "LIB_INSDIR = $(LIB_INSDIR)"; \
   169         kx 	echo "MAN_INSDIR = $(MAN_INSDIR)"; \
   169         kx 	echo "HDR_INSDIR = $(HDR_INSDIR)"; \
   169         kx 	echo "DATA_INSDIR = $(DATA_INSDIR)"; \
   169         kx 	echo "CONF_INSDIR = $(CONF_INSDIR)"; \
   169         kx 	echo "APP_MANSECT = $(APP_MANSECT)"; \
   169         kx 	echo "LIB_MANSECT = $(LIB_MANSECT)"; \
   169         kx 	echo "FMT_MANSECT = $(FMT_MANSECT)"; \
   169         kx 	echo "APP_MANDIR = $(APP_MANDIR)"; \
   169         kx 	echo "LIB_MANDIR = $(LIB_MANDIR)"; \
   169         kx 	echo "FMT_MANDIR = $(FMT_MANDIR)"; \
   169         kx 	echo "TAG_FILES = $(TAG_FILES)"; \
   169         kx 	echo "DEPEND_CFILES = $(DEPEND_CFILES)"; \
   169         kx 	echo "DEPEND_HFILES = $(DEPEND_HFILES)"; \
   169         kx 	echo "CCFLAGS = $(CCFLAGS)"; \
   169         kx 	echo "READY_TARGETS = $(READY_TARGETS)"; \
   169         kx 	echo "ALL_TARGETS = $(ALL_TARGETS)"; \
   169         kx 	echo "TEST_TARGETS = $(TEST_TARGETS)"; \
   169         kx 	echo "MAN_TARGETS = $(MAN_TARGETS)"; \
   169         kx 	echo "HTML_TARGETS = $(HTML_TARGETS)"; \
   169         kx 	echo "INSTALL_TARGETS = $(INSTALL_TARGETS)"; \
   169         kx 	echo "UNINSTALL_TARGETS = $(UNINSTALL_TARGETS)"; \
   169         kx 	echo "CLEAN_FILES = $(CLEAN_FILES)"; \
   169         kx 	echo "CLOBBER_FILES = $(CLOBBER_FILES)"; \
   169         kx 	echo "DIST_TARGETS = $(DIST_TARGETS)"; \
   169         kx 	echo "RPM_TARGETS = $(RPM_TARGETS)"; \
   169         kx 	echo "DEB_TARGETS = $(DEB_TARGETS)"; \
   169         kx 	echo "SOL_TARGETS = $(SOL_TARGETS)"; \
   169         kx 	echo "OBSD_TARGETS = $(OBSD_TARGETS)"; \
   169         kx 	echo "FBSD_TARGETS = $(FBSD_TARGETS)"; \
   169         kx 	echo "NBSD_TARGETS = $(NBSD_TARGETS)"; \
   169         kx 	echo "OSX_TARGETS = $(OSX_TARGETS)"; \
   169         kx 	echo
   169         kx 
   169         kx tags: $(TAG_FILES)
   169         kx 	@ctags $(TAG_FILES)
   169         kx 
   169         kx depend: ready $(DEPEND_CFILES) $(DEPEND_HFILES)
   169         kx 	@makedepend $(DAEMON_CPPFLAGS) $(DEPEND_CFILES)
   169         kx 
   169         kx clean::
   169         kx 	rm -rf $(CLEAN_FILES) $(CLOBBER_FILES)
   169         kx 	perl -pi -e 'last if /[D]O NOT DELETE/;' $(patsubst %, %/Makefile, $(DAEMON_SRCDIR) $(DAEMON_SUBDIRS))
   169         kx 	./configure --default
   169         kx 
   169         kx clobber:: clean
   169         kx 
   169         kx distclean:: clean
   169         kx 
   169         kx include $(DAEMON_SRCDIR)/rules.mk
   169         kx