1 # Skript, das die neue Bibliothek zusammenbauen soll (01.01.06)
6 export RECIPE_DIR
= recipe
7 export RECIPE_SUFFIX
=.recipe
8 export ENDBLOCK
=$(H316
)/snippets
/endseq
9 export ORG_LIBDIR
=original
14 MODULES
= uc f
$$w4 f
$$w1 pchar fpatch lpchar vpunch font
22 #SRC_FILES = $(foreach obj, $(MODULES),$(obj).asm)
23 #OBJ_FILES = $(SRC_FILES:.asm=.obj)
24 #OBJ_FILES_FULL = $(foreach file, $(OBJ_FILES),$(OBJ_DIR)/$(file))
27 ##########################################
30 RECIPES
=$(foreach recipe
,$(shell ls
$(RECIPE_DIR
) | grep
-v CVS
),\
31 $(RECIPE_DIR
)/$(recipe
))
33 LIBS
=$(foreach lib
,$(basename $(notdir $(RECIPES
))),$(LIB_DIR
)/$(lib
).lib
)
35 ORG_OBJECTS
=$(shell cat
$(RECIPES
)|egrep
-v
'^[[:space:]]*(\#.*)*$$'|\
36 grep
$(ORG_OBJDIR
)|
sort -u
)
38 OBJECTS
=$(shell cat
$(RECIPES
)|egrep
-v
'^[[:space:]]*(\#.*)*$$'|\
39 grep
$(OBJ_DIR
)|
sort -u
)
41 OBJECT_FILES
=$(foreach obj
, $(MODULES
), $(OBJ_DIR
)/$(obj
).obj
)
42 SOURCE_FILES
=$(foreach obj
, $(MODULES
), $(SRC_DIR
)/$(obj
).asm
)
48 $(ORG_OBJECTS
): $(ORG_LIBDIR
)/*
51 $(OBJECTS
): $(OBJECT_FILES
)
53 $(OBJECT_FILES
) : $(OBJ_DIR
)/%.obj
: $(SRC_DIR
)/%.asm
54 @echo Building
: $(subst $$,\
$$,$@
)
55 @if
[ ! -d
$(OBJ_DIR
) ]; then mkdir
$(OBJ_DIR
); fi
57 @ cd
$(OBJ_DIR
) && $(ASM_COMMAND
) ..
/$(subst $$,\
$$,$^
)
58 @ cd
$(OBJ_DIR
) && ldc
-s
-l
$(notdir $(subst $$,\
$$,$@
))
60 $(LIBS
):$(LIB_DIR
)/%.lib
: $(RECIPE_DIR
)/%$(RECIPE_SUFFIX
) $(ORG_OBJECTS
) $(OBJECTS
)
61 buildlib.sh genlib
$(RECIPE_DIR
)/$(basename $(notdir $@
))$(RECIPE_SUFFIX
)
67 @
rm -rf
$(OBJ_DIR
) $(LIB_DIR
) *.lst
*.go
70 vpunch-help
/use
: vpunch-help
/use.c vpunch-help
/font_8x16.c
71 $(MAKE
) -C vpunch-help use
73 src
/font.asm
: vpunch-help
/use