From 8ffb983e1b179c30c46dd47d0f0d4ecb167abffe Mon Sep 17 00:00:00 2001 From: fred Date: Sun, 24 Mar 2002 20:13:49 +0000 Subject: [PATCH] lilypond-1.0.4 --- Documentation/pictures/GNUmakefile | 16 ++++++ buildscripts/GNUmakefile | 12 ++++ debian/GNUmakefile | 18 ++++++ flower/GNUmakefile | 23 ++++++++ flower/include/GNUmakefile | 9 +++ init/GNUmakefile | 17 ++++++ input/GNUmakefile | 16 ++++++ input/bugs/GNUmakefile | 8 +++ input/test/GNUmakefile | 8 +++ intl/Makefile.in.dist | 2 +- lib/GNUmakefile | 13 +++++ lib/include/GNUmakefile | 9 +++ lily/include/GNUmakefile | 8 +++ make/docrules.make | 3 + make/generic-targets.make | 2 + make/generic-vars.make | 61 +++++++++++++++++++++ make/toplevel.make.in | 35 ++++++++++++ mi2mu/GNUmakefile | 25 +++++++++ mi2mu/include/GNUmakefile | 6 ++ scripts/GNUmakefile | 12 ++++ stepmake/Documentation/topdocs/GNUmakefile | 15 +++++ stepmake/VERSION | 2 +- stepmake/stepmake/c++-targets.make | 4 ++ stepmake/stepmake/c++-vars.make | 28 ++++++++++ stepmake/stepmake/c-vars.make | 26 +++++++++ stepmake/stepmake/documentation.shared.make | 9 +++ stepmake/stepmake/files.make | 20 +++++++ stepmake/stepmake/generic-rules.make | 32 +++++++++++ stepmake/stepmake/install-outfiles.sub.make | 5 ++ stepmake/stepmake/intlrules.make | 7 +++ stepmake/stepmake/library-vars.make | 19 +++++++ stepmake/stepmake/substitute-rules.make | 5 ++ stepmake/stepmake/substitute-targets.make | 0 stepmake/stepmake/substitute-vars.make | 33 +++++++++++ stepmake/stepmake/template.make | 50 +++++++++++++++++ test/GNUmakefile | 17 ++++++ 36 files changed, 573 insertions(+), 2 deletions(-) create mode 100644 Documentation/pictures/GNUmakefile create mode 100644 buildscripts/GNUmakefile create mode 100644 debian/GNUmakefile create mode 100644 flower/GNUmakefile create mode 100644 flower/include/GNUmakefile create mode 100644 init/GNUmakefile create mode 100644 input/GNUmakefile create mode 100644 input/bugs/GNUmakefile create mode 100644 input/test/GNUmakefile create mode 100644 lib/GNUmakefile create mode 100644 lib/include/GNUmakefile create mode 100644 lily/include/GNUmakefile create mode 100644 make/docrules.make create mode 100644 make/generic-targets.make create mode 100644 make/generic-vars.make create mode 100644 make/toplevel.make.in create mode 100644 mi2mu/GNUmakefile create mode 100644 mi2mu/include/GNUmakefile create mode 100644 scripts/GNUmakefile create mode 100644 stepmake/Documentation/topdocs/GNUmakefile create mode 100644 stepmake/stepmake/c++-targets.make create mode 100644 stepmake/stepmake/c++-vars.make create mode 100644 stepmake/stepmake/c-vars.make create mode 100644 stepmake/stepmake/documentation.shared.make create mode 100644 stepmake/stepmake/files.make create mode 100644 stepmake/stepmake/generic-rules.make create mode 100644 stepmake/stepmake/install-outfiles.sub.make create mode 100644 stepmake/stepmake/intlrules.make create mode 100644 stepmake/stepmake/library-vars.make create mode 100644 stepmake/stepmake/substitute-rules.make create mode 100644 stepmake/stepmake/substitute-targets.make create mode 100644 stepmake/stepmake/substitute-vars.make create mode 100644 stepmake/stepmake/template.make create mode 100644 test/GNUmakefile diff --git a/Documentation/pictures/GNUmakefile b/Documentation/pictures/GNUmakefile new file mode 100644 index 0000000000..a4fceddda3 --- /dev/null +++ b/Documentation/pictures/GNUmakefile @@ -0,0 +1,16 @@ +depth = ../.. + +STEPMAKE_TEMPLATES=documentation +XPM_FILES=$(wildcard *.xpm) +OUTGIF_FILES = $(addprefix $(outdir)/,$(XPM_FILES:.xpm=.gif)) + +EXTRA_DIST_FILES= $(XPM_FILES) + +include $(depth)/make/stepmake.make + +gifs: $(OUTGIF_FILES) + +local-WWW: $(OUTGIF_FILES) + +icon: $(outdir)/lelie_icon.gif + cp $< $(depth)/$(outdir)/$(package)-icon.gif diff --git a/buildscripts/GNUmakefile b/buildscripts/GNUmakefile new file mode 100644 index 0000000000..3a24a75973 --- /dev/null +++ b/buildscripts/GNUmakefile @@ -0,0 +1,12 @@ +# bin/Makefile + +depth = .. +STEPMAKE_TEMPLATES=script + +include $(depth)/make/stepmake.make + + + + + + diff --git a/debian/GNUmakefile b/debian/GNUmakefile new file mode 100644 index 0000000000..6aac4c8221 --- /dev/null +++ b/debian/GNUmakefile @@ -0,0 +1,18 @@ +# debian/Makefile + +depth = .. + +NAME= debian +BLURBS=BLURB +AT_FILES = $(BLURBS) # +at-dir = $(outdir)/ +at-ext = + +EXTRA_DIST_FILES = README.Debian TODO $(CONF_FILES) $(OUT_DIST_FILES) control.foka +CONF_FILES=changelog copyright postinst postrm rules watch +OUTCONF_FILES=$(addprefix $(outdir)/, $(basename $(CONF_FILES))) $(OUTIN_FILES) +OUT_DIST_FILES = $(OUTIN_FILES) + +STEPMAKE_TEMPLATES = yolily-debian +include $(depth)/make/stepmake.make + diff --git a/flower/GNUmakefile b/flower/GNUmakefile new file mode 100644 index 0000000000..da46790c0b --- /dev/null +++ b/flower/GNUmakefile @@ -0,0 +1,23 @@ +# title top level makefile for FlowerLib +# file flower/Makefile + +# should reinstate versioning if shared libs are enabled. + +depth = .. + +NAME = flower +MODULE_NAME = flower +SUBDIRS = include + +SCRIPTS = +README_FILES = NEWS-1.0 NEWS-1.1.46 README TODO +EXTRA_DIST_FILES= VERSION $(README_FILES) $(SCRIPTS) +STEPMAKE_TEMPLATES=library c++ + + + +include $(depth)/make/stepmake.make + +foo: + echo $(DIST_FILES) $(O_FILES) $(OBJECT_FILES) + diff --git a/flower/include/GNUmakefile b/flower/include/GNUmakefile new file mode 100644 index 0000000000..1d726fc78a --- /dev/null +++ b/flower/include/GNUmakefile @@ -0,0 +1,9 @@ +# flower/lib/include/Makefile + +depth = ../.. + +STEPMAKE_TEMPLATES=c++ + +include $(depth)/make/stepmake.make + + diff --git a/init/GNUmakefile b/init/GNUmakefile new file mode 100644 index 0000000000..00000cc6c6 --- /dev/null +++ b/init/GNUmakefile @@ -0,0 +1,17 @@ +# init/Makefile + +depth = .. + +INI_FILES = $(FLY_FILES) $(LY_FILES) +# DIST_FILES = Makefile $(INI_FILES) + +INSTALLATION_DIR=$(datadir) +INSTALLATION_FILES=$(INI_FILES) + +LOCALSTEPMAKE_TEMPLATES=mutopia + +include $(depth)/make/stepmake.make + + +include $(stepdir)/installfiles.make + diff --git a/input/GNUmakefile b/input/GNUmakefile new file mode 100644 index 0000000000..ad59365a5b --- /dev/null +++ b/input/GNUmakefile @@ -0,0 +1,16 @@ +# input/Makefile + +depth = .. + +SUBDIRS=test bugs + +examples=example-3 twinkle-pop praeludium-fuga-E twinkle +flexamples=example-1 example-2 + +LOCALSTEPMAKE_TEMPLATES=mutopia + + +include $(depth)/make/stepmake.make + +local-check: $(addsuffix .dvi, $(addprefix $(outdir)/, $(examples))) + diff --git a/input/bugs/GNUmakefile b/input/bugs/GNUmakefile new file mode 100644 index 0000000000..659a10c8d0 --- /dev/null +++ b/input/bugs/GNUmakefile @@ -0,0 +1,8 @@ +# input/bugs/Makefile + +depth = ../.. + +LOCALSTEPMAKE_TEMPLATES=mutopia +include $(depth)/make/stepmake.make + + diff --git a/input/test/GNUmakefile b/input/test/GNUmakefile new file mode 100644 index 0000000000..74fec0e68d --- /dev/null +++ b/input/test/GNUmakefile @@ -0,0 +1,8 @@ +# input/test/Makefile + +depth = ../.. +examples=font20 hara-kiri grace mark denneboom +LOCALSTEPMAKE_TEMPLATES=mutopia + +include $(depth)/make/stepmake.make + diff --git a/intl/Makefile.in.dist b/intl/Makefile.in.dist index 2a05735516..3d3f59cb01 100644 --- a/intl/Makefile.in.dist +++ b/intl/Makefile.in.dist @@ -68,7 +68,7 @@ DISTFILES.gettext = $(DISTFILES.common) libintl.glibc libintl.inst .c.o: $(COMPILE) $< -INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/lib +INCLUDEs = -i.. -i. -i$(top_srcdir)/intl -i$(top_srcdir)/lib all: libintl.a diff --git a/lib/GNUmakefile b/lib/GNUmakefile new file mode 100644 index 0000000000..70008444f6 --- /dev/null +++ b/lib/GNUmakefile @@ -0,0 +1,13 @@ +# lib/Makefile + +depth = .. + +NAME = lily +SUBDIRS = include +# MODULE_LIBS= $(depth)/flower +MODULE_CXXFLAGS += -D_REENTRANT +STEPMAKE_TEMPLATES=library c++ + +include $(depth)/make/stepmake.make + + diff --git a/lib/include/GNUmakefile b/lib/include/GNUmakefile new file mode 100644 index 0000000000..7dccdbc530 --- /dev/null +++ b/lib/include/GNUmakefile @@ -0,0 +1,9 @@ +# lib/include/Makefile + +depth = ../.. +STEPMAKE_TEMPLATES=c++ + +include $(depth)/make/stepmake.make + + + diff --git a/lily/include/GNUmakefile b/lily/include/GNUmakefile new file mode 100644 index 0000000000..ae2bfb62f3 --- /dev/null +++ b/lily/include/GNUmakefile @@ -0,0 +1,8 @@ +# lily/include/Makefile + +depth = ../.. +STEPMAKE_TEMPLATES=c++ + +include $(depth)/make/stepmake.make + + diff --git a/make/docrules.make b/make/docrules.make new file mode 100644 index 0000000000..9351453aa5 --- /dev/null +++ b/make/docrules.make @@ -0,0 +1,3 @@ +# Docrules.make + +include $(make-dir)/mudela_rules.make diff --git a/make/generic-targets.make b/make/generic-targets.make new file mode 100644 index 0000000000..7f4a380a20 --- /dev/null +++ b/make/generic-targets.make @@ -0,0 +1,2 @@ +# title package specific targets +# file make/Targets.make diff --git a/make/generic-vars.make b/make/generic-vars.make new file mode 100644 index 0000000000..8c90d01de8 --- /dev/null +++ b/make/generic-vars.make @@ -0,0 +1,61 @@ +# title package specific variables +# file make/Variables.make +# +# do not change this file for site-wide extensions; please use +# make/$(outdir)/Site.make; +# +# Any change in files in this directory (make/) would be distributed, if +# you do make dist +# + +buildscripts = $(depth)/buildscripts + + +flower-dir = $(depth)/flower +lib-dir = $(depth)/lib +lily-dir = $(depth)/lily +mi2mu-dir = $(depth)/mi2mu +make-dir = $(depth)/make +include-lib = $(depth)/lib/include +include-flower = $(depth)/flower/include + + + +LILYPOND_INCLUDES = $(include-lib) $(depth)/lib/$(outdir) $(include-flower) $(depth)/flower/$(outdir) + + +# should use to create .spec ? + +# installed by 'make installextradoc' +EXTRA_DOC_FILES = \ + ANNOUNCEMENT ANNOUNCE-0.1 AUTHORS.txt BUGS COPYING DEDICATION INSTALL.txt NEWS PATCHES.txt README.txt TODO \ + Documentation/out/*.txt\ + Documentation/tex/*.doc\ + Documentation/tex/*.bib\ + Documentation/pictures/out/lelie_logo.gif\ + input\ + mutopia\ + +INSTALLED_EXTRA_DOC_FILES = $(addprefix $(prefix:/%=%)/doc/lilypond/, $(EXTRA_DOC_FILES)) + +# installed by 'make install' +INSTALL_DIST_FILES = \ + bin/convert-mudela\ + bin/mudela-book\ + bin/ly2dvi\ + bin/lilypond$(DOTEXE)\ + bin/mi2mu$(DOTEXE)\ + info/lilypond.info\ + man/man1/mi2mu.1\ + man/man1/lilypond.1\ + man/man1/mudela-book.1\ + man/man1/ly2dvi.1\ + man/man1/convert-mudela.1\ + lib/texmf/texmf/tex/lilypond\ + lib/texmf/texmf/fonts/source/public/lilypond\ + share/lilypond/\ + share/locale/*/LC_MESSAGES/lilypond.mo\ + + +INSTALLED_DIST_FILES = $(addprefix $(prefix:/%=%)/, $(INSTALL_DIST_FILES)) + diff --git a/make/toplevel.make.in b/make/toplevel.make.in new file mode 100644 index 0000000000..99f7a0ad84 --- /dev/null +++ b/make/toplevel.make.in @@ -0,0 +1,35 @@ +# -*-Makefile-*- +# title specific top level makefile for LilyPond + +# subdir level: +# +depth = . +# + +# descent order into subdirectories: +# +SUBDIRS = scripts buildscripts flower lib lily mf mi2mu po debian \ + Documentation init input tex make mutopia test intl stepmake +# + +SCRIPTS = configure aclocal.m4 +README_FILES = BUGS DEDICATION ANNOUNCE-0.1 ANNOUNCEMENT \ + COPYING NEWS-0.1 NEWS-0.0 NEWS TODO +README_TXT_FILES = README.txt AUTHORS.txt INSTALL.txt PATCHES.txt +IN_FILES := $(wildcard *.in) +EXTRA_DIST_FILES = dstreamrc mudela-mode.el vimrc VERSION $(README_FILES) $(SCRIPTS) $(IN_FILES) +NON_ESSENTIAL_DIST_FILES = $(README_TXT_FILES) + +# bootstrap stepmake: +# +STEPMAKE_TEMPLATES=toplevel yolily-toplevel +include $(depth)/make/stepmake.make +# + +website: examples htmldoc doc++ + +examples: + $(MAKE) CONFIGSUFFIX='www' -C input WWW + $(MAKE) CONFIGSUFFIX='www' -C mutopia WWW + tar --exclude='*.dvi' --exclude='*.tex' --exclude='*.ps' -czf $(outdir)/examples.tar.gz `find input mutopia -type d -name 'out-www' -print` + diff --git a/mi2mu/GNUmakefile b/mi2mu/GNUmakefile new file mode 100644 index 0000000000..067b0c5c17 --- /dev/null +++ b/mi2mu/GNUmakefile @@ -0,0 +1,25 @@ +# title makefile for mi2mu +# file mi2mu/Makefile + +depth = .. + +NAME = mi2mu +MODULE_NAME = mi2mu + +SUBDIRS = include +EXTRA_DIST_FILES += TODO +MODULE_LIBS=$(depth)/lib $(depth)/flower + +STEPMAKE_TEMPLATES=c++ executable + +include $(depth)/make/stepmake.make + +# explicit dependencies: (how to do auto?) +# +midi-lexer.l: $(outdir)/midi-parser.hh + + +$(outdir)/mi2mu-version.o: $(outdir)/version.hh + +VERSION: $(depth)/VERSION + cp $< $@ diff --git a/mi2mu/include/GNUmakefile b/mi2mu/include/GNUmakefile new file mode 100644 index 0000000000..1a19230204 --- /dev/null +++ b/mi2mu/include/GNUmakefile @@ -0,0 +1,6 @@ +# lib/include/Makefile + +depth = ../.. +STEPMAKE_TEMPLATES=c++ +include $(depth)/make/stepmake.make + diff --git a/scripts/GNUmakefile b/scripts/GNUmakefile new file mode 100644 index 0000000000..0605eb6d64 --- /dev/null +++ b/scripts/GNUmakefile @@ -0,0 +1,12 @@ +# bin/Makefile + +depth = .. +SEXECUTABLES=convert-mudela mudela-book ly2dvi +STEPMAKE_TEMPLATES=script + + +include $(depth)/make/stepmake.make + +# include $(stepdir)/Executable_targets.make + + diff --git a/stepmake/Documentation/topdocs/GNUmakefile b/stepmake/Documentation/topdocs/GNUmakefile new file mode 100644 index 0000000000..d12c14370e --- /dev/null +++ b/stepmake/Documentation/topdocs/GNUmakefile @@ -0,0 +1,15 @@ +# Documentation/topdocs/Makefile + +depth = ../.. + +SUBDIRS= +BLURBS=BLURB #COPERTINA FLAPTEKST +AT_FILES = $(BLURBS) # +at-dir = $(doc-dir)/ +at-ext = .in +BLURBS=BLURB COPERTINA FLAPTEKST + +STEPMAKE_TEMPLATES=documentation yolily-topdoc + +include $(depth)/make/stepmake.make + diff --git a/stepmake/VERSION b/stepmake/VERSION index eea0d29e8b..8d0a721a4e 100644 --- a/stepmake/VERSION +++ b/stepmake/VERSION @@ -1,7 +1,7 @@ PACKAGE_NAME=StepMake MAJOR_VERSION=0 MINOR_VERSION=1 -PATCH_LEVEL=43 +PATCH_LEVEL=45 MY_PATCH_LEVEL= # use the above to send patches, always empty for released version: diff --git a/stepmake/stepmake/c++-targets.make b/stepmake/stepmake/c++-targets.make new file mode 100644 index 0000000000..751260e204 --- /dev/null +++ b/stepmake/stepmake/c++-targets.make @@ -0,0 +1,4 @@ + +$(configheader): $(depth)/config.h + cp $< $@ + diff --git a/stepmake/stepmake/c++-vars.make b/stepmake/stepmake/c++-vars.make new file mode 100644 index 0000000000..e2667e7e42 --- /dev/null +++ b/stepmake/stepmake/c++-vars.make @@ -0,0 +1,28 @@ + +# added two warnings that are treated by cygwin32's gcc 2.7.2 as errors. +# huh, but still, no warnings even provoced with linux's gcc 2.7.2.1? + +# -pipe makes it go faster, but is not supported on all platforms. +# EXTRA_CXXFLAGS= -Wall -Winline -W -Wmissing-prototypes -Wmissing-declarations -Wconversion +EXTRA_CXXFLAGS= -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wconversion + + +CXXFLAGS = $(ICFLAGS) $(DEFINES) $(addprefix -I,$(INCLUDES)) $(USER_CFLAGS) $(EXTRA_CFLAGS) $(MODULE_CFLAGS) $(USER_CXXFLAGS) $(EXTRA_CXXFLAGS) $(MODULE_CXXFLAGS) +CXX_OUTPUT_OPTION = $< -o $@ +DO_CXX_COMPILE=$(DODEP) $(CXX) -c $(CXXFLAGS) $(CXX_OUTPUT_OPTION) + +# template files: +TCC_FILES := $(wildcard *.tcc) +HH_FILES := $(wildcard *.hh) +CC_FILES := $(wildcard *.cc) +INL_FILES := $(wildcard *.icc) +YY_FILES := $(wildcard *.yy) +LL_FILES := $(wildcard *.ll) + +SOURCE_FILES+=$(YY_FILES) $(CC_FILES) $(INL_FILES) $(TCC_FILES) $(HH_FILES) $(LL_FILES) +O_FILES+=$(addprefix $(outdir)/, $(YY_FILES:.yy=.o) $(CC_FILES:.cc=.o) $(LL_FILES:.ll=.o)) + +TAGS_FILES += $(TCC_FILES) $(HH_FILES) $(INL_FILES) $(CC_FILES) + +# hmm +configheader=$(outdir)/config.hh diff --git a/stepmake/stepmake/c-vars.make b/stepmake/stepmake/c-vars.make new file mode 100644 index 0000000000..5f9db660a0 --- /dev/null +++ b/stepmake/stepmake/c-vars.make @@ -0,0 +1,26 @@ + +# header files: +H_FILES := $(wildcard *.h) +C_FILES := $(wildcard *.c) +Y_FILES := $(wildcard *.y) +L_FILES := $(wildcard *.l) + +SOURCE_FILES+=$(Y_FILES) $(C_FILES) $(L_FILES) $(H_FILES) + +O_FILES+=$(addprefix $(outdir)/, $(Y_FILES:.y=.o) $(C_FILES:.c=.o) $(L_FILES:.l=.o)) + +TAGS_FILES += C_FILES H_FILES +# C/C++ +# + +ALL_C_SOURCES += $(H_FILES) $(C_FILES) $(Y_FILES) + +# compiler: +# +DO_C_COMPILE = $(DODEP) $(CC) -c $(CFLAGS) $(C_OUTPUT_OPTION) +C_OUTPUT_OPTION = -o $@ $< + +CFLAGS = $(ICFLAGS) $(DEFINES) $(addprefix -I,$(INCLUDES)) $(USER_CFLAGS) $(EXTRA_CFLAGS) $(MODULE_CFLAGS) + +# hmm +configheader=$(outdir)/config.h diff --git a/stepmake/stepmake/documentation.shared.make b/stepmake/stepmake/documentation.shared.make new file mode 100644 index 0000000000..79c67fb8bd --- /dev/null +++ b/stepmake/stepmake/documentation.shared.make @@ -0,0 +1,9 @@ +# stepmake/documentation.shared.make +# urg: stuff shared between yodl/lily/stepmake + +# could/should do this for bin/Makefile make/Makefile too + +### below here is shared between lily/yodl/Documentation and topdocs... + +include $(stepdir)/documentation_vars.make +include $(stepdir)/documentation_rules.make diff --git a/stepmake/stepmake/files.make b/stepmake/stepmake/files.make new file mode 100644 index 0000000000..2c25447e3e --- /dev/null +++ b/stepmake/stepmake/files.make @@ -0,0 +1,20 @@ +# Files.make + + + +DEP_FILES := $(wildcard $(outdir)/*.dep) + +# (Why not Makefile too?) +# +# + +IN_FILES := $(wildcard *.in) +SOURCE_FILES += $(IN_FILES) + +# Preprocessed .in documentation _FILES: +# +OUTIN_FILES = $(addprefix $(outdir)/, $(IN_FILES:%.in=%)) +# + +ALL_SOURCES = $(SOURCE_FILES) + diff --git a/stepmake/stepmake/generic-rules.make b/stepmake/stepmake/generic-rules.make new file mode 100644 index 0000000000..fb05e13e3a --- /dev/null +++ b/stepmake/stepmake/generic-rules.make @@ -0,0 +1,32 @@ +# title generic make rules +# file make/Rules.make + +# this is supposed to clear all suffixes: +.SUFFIXES: + + + +$(outdir)/%: %.m4 + $(M4) $< > $@ + +%.dep: + touch $@ + +%.gz: % + gzip -c9 $< > $@ + +# bit docrules, these... +$(outdir)/%.dvi: $(outdir)/%.tex + (cd $(outdir); tex \\nonstopmode \\input $( $@ + diff --git a/stepmake/stepmake/substitute-targets.make b/stepmake/stepmake/substitute-targets.make new file mode 100644 index 0000000000..e69de29bb2 diff --git a/stepmake/stepmake/substitute-vars.make b/stepmake/stepmake/substitute-vars.make new file mode 100644 index 0000000000..823ada2995 --- /dev/null +++ b/stepmake/stepmake/substitute-vars.make @@ -0,0 +1,33 @@ +# Substitute.make + +sed-endline = sed 's!$$!\\!' +sed-newline = sed 's!$$!\n!' +sed-quotes = sed "s!\'!\\\&!g" +sed-quote-line = sed 's!.*$$!\"&\"!' + +date := $(shell date '+%d%b%y'|tr '[a-z]' '[A-Z]' ) +DATE = $(date) + +# for all FILE in AT_FILES: +# substitute occurrences of @FILE@ with contents $(at-dir)BLA$(at-ext) +sed-atfiles = cat $(foreach i, $(AT_FILES), \ + | sed '/@$i@/r $(at-dir)$i$(at-ext)' | sed 's%@$i@%%g') + +# for all VAR in ATVARIABLES +# substitute occurrences of @VAR@ with $(VAR) +sed-atvariables = cat $(foreach i, $(ATVARIABLES), | sed 's!@$i@!$($i)!g') + +# these are obsolete +# use ATVARIABLES +sed-date=sed 's!@DATE@!${date}!g' +sed-PACKAGE = sed 's!@PACKAGE@!${PACKAGE}!g' +sed-bash = sed 's!@BASH@!$(BASH)!' +sed-dir-datadir = sed 's!@DIR_DATADIR@!$(DIR_DATADIR)!' +sed-package=sed 's!@package@!${package}!g' +sed-perl = sed 's!@PERL@!$(PERL)!' +sed-python = sed 's!@PYTHON@!$(PYTHON)!' +sed-sh = sed 's!@SH@!$(SH)!' +sed-shell = sed 's!@SH@!$(SHELL)!' | sed 's!@BASH@!$(BASH)!' +sed-version= sed 's!@TOPLEVEL_VERSION@!${TOPLEVEL_VERSION}!g' +sed-step-bindir = sed 's!@STEP_BINDIR@!$(pwd)/$(step-bindir)!' + diff --git a/stepmake/stepmake/template.make b/stepmake/stepmake/template.make new file mode 100644 index 0000000000..45ae61eec6 --- /dev/null +++ b/stepmake/stepmake/template.make @@ -0,0 +1,50 @@ +# THIS IS A TEMPLATE FOR SUB-PROJECT MAKEFILES +# /Makefile + +# subdir level: +# +depth = .. +# + +# identify module: +# +NAME = +# + +# descent order into subdirectories: +# +SUBDIRS = +# + +# dependencies and linkage of custom libraries: +# + +MODULE_LIBES = # $(depth)/lib $(depth)/flower +# + +# list of extra distribution files: +# Makefile, C++ and pod are dist'ed automatically +EXTRA_DIST_FILES = +# + +# bootstrap stepmake: +# +include $(depth)/make/stepmake.make +# + +# module compile settings: (not generally needed!) +# +EXTRA_CFLAGS = +EXTRA_CXXFLAGS = +EXTRA_LDFLAGS = +# + +# main target of this module: +# +default: $(EXECUTABLE) +# default: $(LIBRARY) +# + +# EXECUTABLES= +# include $(stepmake)/Executable.make + diff --git a/test/GNUmakefile b/test/GNUmakefile new file mode 100644 index 0000000000..f4392fb708 --- /dev/null +++ b/test/GNUmakefile @@ -0,0 +1,17 @@ +# title makefile for test +# test/Makefile + +depth = .. + +NAME = lily-test +MODULE_NAME = lily-test + +MODULE_CXXFLAGS = -I$(depth)/flower/include -I$(depth)/flower -I$(depth)/lily/include -I$(depth)/lily +STEPMAKE_TEMPLATES=c++ + +include $(depth)/make/stepmake.make + +# default: $(EXECUTABLE) + +# include $(stepdir)/Executable.make + -- 2.39.5