Skip to content
Snippets Groups Projects
Commit 997f1713 authored by Henry Weller's avatar Henry Weller
Browse files

wmake: Update '-s' option to print the files processed without the rules

Based on patch contributed by Alexey Matveichev
Resolves feature request http://bugs.openfoam.org/view.php?id=2328
parent d37e86d1
Branches
Tags
No related merge requests found
......@@ -130,16 +130,18 @@ LIB_HEADER_DIRS = \
$(EXE): $(OBJECTS)
@$(WM_SCRIPTS)/makeTargetDir $(EXE)
$(LINKEXE) $(OBJECTS) -L$(LIB_PLATFORMS) \
$(call QUIET_MESSAGE, " ld: $(notdir $(EXE))")
$E $(LINKEXE) $(OBJECTS) -L$(LIB_PLATFORMS) \
$(EXE_LIBS) $(PROJECT_LIBS) $(SYS_LIBS) \
$(LINK_LIBS) $(GLIBS) -o $(EXE)
exe: $(SEXE)
@echo \'$(SEXE)\' is up to date.
@echo "->> $(SEXE)"
$(SEXE):$(OBJECTS)
@$(WM_SCRIPTS)/makeTargetDir $(SEXE)
$(LINKEXE) $(OBJECTS) $(EXE_LIBS) \
$(call QUIET_MESSAGE, " ld: $(notdir $(SEXE))")
$E $(LINKEXE) $(OBJECTS) $(EXE_LIBS) \
$(SYS_LIBS) $(LINK_LIBS) $(GLIBS) -o $(SEXE)
......@@ -150,29 +152,33 @@ $(SEXE):$(OBJECTS)
objects: $(OBJECTS)
libso: $(LIB).$(SO)
@echo \'$(LIB).$(SO)\' is up to date.
@echo "->> $(LIB).$(SO)"
$(LIB).$(SO): $(OBJECTS)
@$(WM_SCRIPTS)/makeTargetDir $(LIB)
$(LINKLIBSO) $(OBJECTS) -L$(LIB_PLATFORMS) \
$(call QUIET_MESSAGE, " ld: $(notdir $(LIB)).$(SO)")
$E $(LINKLIBSO) $(OBJECTS) -L$(LIB_PLATFORMS) \
$(LIB_LIBS) $(GLIB_LIBS) -o $(LIB).$(SO)
lib: $(LIB).a
@echo \'$(LIB).a\' is up to date.
@echo "->> $(LIB).a"
$(LIB).a: $(OBJECTS)
@$(WM_SCRIPTS)/makeTargetDir $(LIB)
@rm -f $(LIB).a
$(AR) $(ARFLAGS) $(LIB).a $(OBJECTS)
$(RANLIB) $(LIB).a
$(call QUIET_MESSAGE, " ar: $(notdir $(LIB))")
$E $(AR) $(ARFLAGS) $(LIB).a $(OBJECTS)
$(call QUIET_MESSAGE, " ranlib: $(notdir $(LIB))")
$E $(RANLIB) $(LIB).a
libo: $(LIB).o
@echo \'$(LIB).o\' is up to date.
@echo "->> $(LIB).o"
$(LIB).o: $(OBJECTS)
@$(WM_SCRIPTS)/makeTargetDir $(LIB)
@rm -f $(LIB).o
$(LD) -r -o $(LIB).o $(OBJECTS)
$(call QUIET_MESSAGE, " ld: $(notdir $(LIB)).o")
$E $(LD) -r -o $(LIB).o $(OBJECTS)
#------------------------------------------------------------------------------
......@@ -205,4 +211,4 @@ ifeq ($(findstring lnInclude,$(MAKECMDGOALS))$(findstring updatedep,$(MAKECMDGOA
endif
#------------------------------------------------------------------------------
#----------------------------- vim: set ft=make: ------------------------------
SUFFIXES += .y .Y
ytoo = $(WM_SCHEDULER) bison -v -d -y $< $(AND) \
ytoo = $E $(call QUIET_MESSAGE, " bison: $(<F)) \
$(WM_SCHEDULER) bison -v -d -y $< $(AND) \
mv y.tab.c $(@D)/$(<F).c $(AND) \
mv y.tab.h $(@D)/$(<F).h $(AND) \
$(cc) $(cFLAGS) -c $(@D)/$(<F).c -o $@
Ytoo = $(WM_SCHEDULER) bison -v -d -y $< $(AND) \
Ytoo = $E $(call QUIET_MESSAGE, " bison: $(<F)) \
$(WM_SCHEDULER) bison -v -d -y $< $(AND) \
mv y.tab.c $(@D)/$(<F).C $(AND) \
mv y.tab.h $(@D)/$(<F).H $(AND) \
$(CC) $(c++FLAGS) -c $(@D)/$(<F).C -o $@
SUFFIXES += .y
ytoo = $(WM_SCHEDULER) btyacc -v -d $(SKELETON) $< $(AND) \
ytoo = $E $(call QUIET_MESSAGE, " btyacc: $(<F)") \
$(WM_SCHEDULER) btyacc -v -d $(SKELETON) $< $(AND) \
mv y_tab.c $(@D)/$(<F).C $(AND) \
mv y_tab.h $(@D)/$(<F).H $(AND) \
$(CC) $(c++FLAGS) -c $(@D)/$(<F).C -o $@
SUFFIXES += .Y
Ytoo = $(WM_SCHEDULER) btyacc++ -v -d $(SKELETON) $< $(AND) \
Ytoo = $E $(call QUIET_MESSAGE, " btyacc++: $(<F)") \
$(WM_SCHEDULER) btyacc++ -v -d $(SKELETON) $< $(AND) \
mv y_tab.c $(@D)/$(<F).C $(AND) \
mv y_tab.h $(@D)/$(<F).H $(AND) \
$(CC) $(c++FLAGS) -c $(@D)/$(<F).C -o $@
SUFFIXES += .y
ytoo = $(WM_SCHEDULER) byacc -v $(YYPREFIX) -d $< $(AND) \
ytoo = $E $(call QUIET_MESSAGE, " byacc: $(<F)") \
$(WM_SCHEDULER) byacc -v $(YYPREFIX) -d $< $(AND) \
mv y.tab.c $(@D)/$(<F).C $(AND) \
mv y.tab.h $(@D)/$(<F).H $(AND) \
$(CC) $(c++FLAGS) -c $(@D)/$(<F).C -o $@
SUFFIXES += .l
ltoo = $(WM_SCHEDULER) flex -o $(@D)/$(<F).c $< $(AND) \
ltoo = $E $(call QUIET_MESSAGE, " flex: $(<F)") \
$(WM_SCHEDULER) flex -o $(@D)/$(<F).c $< $(AND) \
$(cc) $(cFLAGS) -c $(@D)/$(<F).c -o $@
SUFFIXES += .L
Ltoo = $(WM_SCHEDULER) flex -+ -o$(@D)/$(<F).C -f $< $(AND) \
Ltoo = $E $(call QUIET_MESSAGE, " flex++: $(<F)") \
$(WM_SCHEDULER) flex -+ -o$(@D)/$(<F).C -f $< $(AND) \
$(CC) $(c++FLAGS) $(c++LESSWARN) -c $(@D)/$(<F).C -o $@
SUFFIXES += .qt
qttoo = $(WM_SCHEDULER) $(QTDIR)/bin/moc -f $< -o $(@D)/$(<F).C $(AND) \
$(CC) $(c++FLAGS) -c $(@D)/$(<F).C -o $@
qttoo = $E $(call QUIET_MESSAGE, " moc: $(<F)") \
$(WM_SCHEDULER) $(QTDIR)/bin/moc -f $< -o $(@D)/$(<F).C $(AND) \
$(CC) $(c++FLAGS) -c $(@D)/$(<F).C -o $@
#-------------------------------*- makefile -*---------------------------------
ifneq ("$(WM_QUIET)","")
E=@
define QUIET_MESSAGE
@echo $1 ;
endef
QUIET_OP=-s
else
E=
define QUIET_MESSAGE
endef
QUIET_OP=
endif
define DEFINE_TRANSFORM
$(OBJECTS_DIR)/%.o : %$1
$$($(subst .,,$(1))too)
$(call QUIET_MESSAGE, " $(subst .,,$(1))too: $(value <F)")
$E $$($(subst .,,$(1))too)
endef
$(foreach s,$(SUFFIXES),$(eval $(call DEFINE_TRANSFORM,$(s))))
$(OBJECTS_DIR)/%.dep : %
@$(WM_SCRIPTS)/makeTargetDir $@
@$(WMAKE_BIN)/wmkdep -I$(*D) $(LIB_HEADER_DIRS) $< | \
@$(WMAKE_BIN)/wmkdep $(QUIET_OP) -I$(*D) $(LIB_HEADER_DIRS) $< | \
sed -e 's,^$(WM_PROJECT_DIR)/,$$(WM_PROJECT_DIR)/,' \
-e 's,^$(WM_THIRD_PARTY_DIR)/,$$(WM_THIRD_PARTY_DIR)/,' > $@
......
......@@ -60,18 +60,18 @@ include $(GENERAL_RULES)/general
all: $(WMAKE_BIN)/dirToString $(WMAKE_BIN)/wmkdep
clean:
rm -f $(WMAKE_BIN)/* 2>/dev/null
@E rm -f $(WMAKE_BIN)/* 2>/dev/null
$(WMAKE_BIN)/dirToString: dirToString.c
@mkdir -p $(WMAKE_BIN)
$(cc) $(cFLAGS) dirToString.c -o $(WMAKE_BIN)/dirToString
$(call QUIET_MESSAGE, " compile: $<")
$E $(cc) $(cFLAGS) dirToString.c -o $(WMAKE_BIN)/dirToString
$(WMAKE_BIN)/wmkdep: wmkdep.l
@mkdir -p $(WMAKE_BIN)
flex wmkdep.l
$(cc) $(cFLAGS) lex.yy.c -o $(WMAKE_BIN)/wmkdep
$(call QUIET_MESSAGE, " lex: $<")
$E flex wmkdep.l; \
$E $(cc) $(cFLAGS) lex.yy.c -o $(WMAKE_BIN)/wmkdep
@rm -f lex.yy.c 2>/dev/null
......
......@@ -47,6 +47,7 @@ Usage
#include <sys/types.h>
#include <dirent.h>
#include <errno.h>
#include <libgen.h>
void nextFile(const char* fileName);
void importFile(const char* fileName);
......@@ -145,7 +146,7 @@ const char* bufferPaths[FILE_STACK_SIZE];
int main(int argc, char* argv[])
{
char *basePos, *dotPos;
int i;
int i, silent;
if (argc == 1)
{
......@@ -154,7 +155,20 @@ int main(int argc, char* argv[])
}
sourceFile = strdup(argv[argc-1]);
fprintf(stderr, "Making dependency list for source file %s\n", sourceFile);
silent = (strncmp(argv[1], "-s", 2) == 0);
if (silent)
{
fprintf(stderr, " wmkdep: %s\n", basename(sourceFile));
}
else
{
fprintf
(
stderr,
"Making dependency list for source file %s\n",
sourceFile
);
}
if ((basePos = strrchr(sourceFile, '/')) == NULL)
......
......@@ -67,7 +67,7 @@ Usage: $Script [OPTION] [dir]
$Script [OPTION] target [dir [MakeDir]]
options:
-s | -silent 'silent' mode (does not echo commands)
-s | -silent Quiet mode (does not echo commands)
-a | -all wmake all sub-directories, running Allwmake if present
-q | -queue wmakeQueue all sub-directories, running Allwmake if present
-k or -non-stop Compile without stopping when errors occur
......@@ -138,7 +138,7 @@ do
usage
;;
-s | -silent)
make="$make -s"
export WM_QUIET=1
;;
-a | -all | all)
all="all"
......
......@@ -99,6 +99,12 @@ then
fi
if [ -n "$WM_QUIET" ]
then
E="@"
fi
# Collected makefile for this build
makefile="$WM_COLLECT_DIR.Makefile"
......@@ -117,6 +123,9 @@ then
# Make sure directories exist
mkdir -p $WM_COLLECT_DIR
# The current source file
source="${@: -3:1}"
# The current target
object="${@: -1:1}"
......@@ -128,7 +137,9 @@ then
# Add the build rule for the current target
echo "$object: $makefile" >> $file
echo -e "\tcd $PWD && \\" >> $file
[ -z "$E" ] ||
echo -e "\t@echo \" compiling: ${source##*/}\"" >> $file
echo -e "\t$E cd $PWD && \\" >> $file
echo -e "\t${@:1:($#-1)} $object" >> $file
echo >> $file
else
......
......@@ -138,9 +138,12 @@ fi
cd $incDir || exit 1
[ "$silentOpt" = true ] || {
if [ "$silentOpt" = true -o -n "$WM_QUIET" ]
then
echo " ln: $incDir" 1>&2
else
echo "$Script: linking include files to $incDir" 1>&2
}
fi
#------------------------------------------------------------------------------
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment