Added $(LOCAL_SETUP) to the list of build targets, before
$(LIBTARGET). LOCAL_SETUP should be set in the lower makefiles
if there is a target which must be made prior to the main
compilation.
- abbreviated some macros
- removed the -v compilation flag (it can be added from the make
command line if necessary)
- use single colons in additional dependancies
sed.desc:
- expand the description a bit.
Added MACGEN and MACGEN_FLAGS macros.
binrules.mk:
Added a (normally empty) macro "LOCAL_SETUP" to the build target.
If a utility needs a special target to be done prior to the
main build, then it sets this macro to be that special target(s).
paths.mk:
Added some comments on the OBJ_DIR directory.
- Fixed a problem reported by Derek where stack trashing
was happening once an EOF was reached. This was actually
only one example of a class of problems; any time __svfscanf
returned before filling all the requested arguments, va_arg
was left uncalled for some set of arguments. This has been
fixed by adding a "stack cleanup" section to the code where
va_arg is called once for each remaining argument.
- The __svfscanf routine still had large arrays on the stack.
These have been changed to static storage class. There is
currently an assert in place to assure that recursion isn't
happening since I didn't have the chance yet to verify in
detail the control flow here. This assert (and the related
use of the "recursing" variable) can be removed after such
a verification.
- specify files via SRCS vice OBJS. This eliminates an extraneous
".o" in the final OBJS value.
- don't attempt to attach a rez fork (leave it for the upper
level makefile)
- move generated macro file to /obj hierarchy
Makefile:
- fix location of (non-generated) macro sources
- specify files via SRCS vice OBJS. This eliminates an extraneous
".o" in the final OBJS value.
- don't attempt to attach a rez fork (leave it for the upper
level makefile)
- eliminate double concatenation of resource fork
- specify files via SRCS vice OBJS
- obtain the assert object file from where it is built in
the ORCA hierarchy
libc.rez:
- add build date to displayed data
- stack size is 1024, not 768
- name of file is prog.mk, not gno.prog.mk
- remove version number and date string at beginning, since it
is updated in the id string
- The describe-submit address is now active. In fact, it has
been for some time; I just forgot to remove from this page
the note saying that it was not.
- backed out v1.4 changes
- replace .asm (as well as .c) suffixes with .o for OBJS definition
- added a recipe for building ProDOS renamed object files
- changed definition of OBJS to remove the full pathnames
and to add to previous values of OBJS rather than to act
as a default value
binrules.mk:
- backed out all v1.5 changes except for using $(MAINSRC)
vice $(MAIN).c
- added a recipe for building ProDOS-renamed object files
paths.mk:
- backed out v1.6 changes
- added a macro, PRODOS_OBJS. If this is set to "true", then
ProDOS-compliant file names will be used for object files.
- with the modified binrules.mk, we don't need the .SOURCE
directives.
binconst.mk:
- change the definition of OBJS somewhat so that they are
always fully pathed in the $(OBJ_DIR) directory
- for utils with both BSD and GNO man pages, make sure we
install the GNO one
- conditionally define MAINSRC so that we can override it
if necessary. By default MAINSRC is $(MAIN).c
binrules.mk:
- don't assume MAINSRC is $(MAIN).c
- don't assume the compiled rez fork is in the current directory
- add default target for creating object files in the $(OBJ_DIR)
directory
- don't relink the executable if it just needs a new resource fork
binrelease.mk:
- changed targets to allow for the BSD/GNO man page duality
- assume the built program is in the $(OBJ_DIR)
- eliminate describe actions from the 'install' target
prog.mk:
- don't include binrules.mk if CUSTOM_RULES is defined and
non-NULL.
- modifications to allow the object files to be in the /obj
hierarchy.
- rename the object files during the build such that they can
reside on a ProDOS partition. An unfortunate consequence of
this is the requirement in this file for explicit recipes for
any of the renamed object files.
libnetdb.rez:
- add an rVersion for the final library
- fix definition of OBJS such that they can be placed in the /obj
hierarchy. Also added some more default targets for the same
purpose.
- added in a rule to append an rVersion resource to the library,
unless the NO_REZ macro is set in the makefile