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
17 FRTN_COMMAND
= frtn_original
18 ASM_COMMAND
= asm_original
23 #SRC_FILES = $(foreach obj, $(MODULES),$(obj).asm)
24 #OBJ_FILES = $(SRC_FILES:.asm=.obj)
25 #OBJ_FILES_FULL = $(foreach file, $(OBJ_FILES),$(OBJ_DIR)/$(file))
28 ##########################################
31 RECIPES
=$(foreach recipe
,$(shell ls
$(RECIPE_DIR
) | grep
-v CVS
),\
32 $(RECIPE_DIR
)/$(recipe
))
34 LIBS
=$(foreach lib
,$(basename $(notdir $(RECIPES
))),$(LIB_DIR
)/$(lib
).lib
)
36 ORG_OBJECTS
=$(shell cat
$(RECIPES
)|egrep
-v
'^[[:space:]]*(\#.*)*$$'|\
37 grep
$(ORG_OBJDIR
)|
sort -u
)
39 OBJECTS
=$(shell cat
$(RECIPES
)|egrep
-v
'^[[:space:]]*(\#.*)*$$'|\
40 grep
$(OBJ_DIR
)|
sort -u
)
42 OBJECT_FILES
=$(foreach obj
, $(MODULES
), $(OBJ_DIR
)/$(obj
).obj
)
43 SOURCE_FILES
=$(foreach obj
, $(MODULES
), $(SRC_DIR
)/$(obj
).asm
)
49 $(ORG_OBJECTS
): $(ORG_LIBDIR
)/*
52 $(OBJECTS
): $(OBJECT_FILES
)
54 $(OBJECT_FILES
) : $(OBJ_DIR
)/%.obj
: $(SRC_DIR
)/%.asm
55 @echo Building
: $(subst $$,\
$$,$@
)
56 @if
[ ! -d
$(OBJ_DIR
) ]; then mkdir
$(OBJ_DIR
); fi
58 @ cd
$(OBJ_DIR
) && $(ASM_COMMAND
) ..
/$(subst $$,\
$$,$^
)
59 @ cd
$(OBJ_DIR
) && ldc
-s
-l
$(notdir $(subst $$,\
$$,$@
))
61 $(LIBS
):$(LIB_DIR
)/%.lib
: $(RECIPE_DIR
)/%$(RECIPE_SUFFIX
) $(ORG_OBJECTS
) $(OBJECTS
)
62 .
/buildlib.sh genlib
$(RECIPE_DIR
)/$(basename $(notdir $@
))$(RECIPE_SUFFIX
)
66 @
rm -rf
$(OBJ_DIR
) $(LIB_DIR
) src
/font.asm
*.lst
*.go
67 @
$(MAKE
) -C vpunch-help
clean
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