OBJS list. This is needed to crunch any program that relies on the
correct .CURDIR setting, e.g. src/bin/csh.
Submitted by: Tim Kientzle <kientzle@acm.org>
Back out the removal of custom version of endian.h system header.
On recent systems, it just falls back to <sys/endian.h>. But on
older systems like 5.0-DP1 or 4-STABLE, this private version may
be necessary, as crunchide(1) is a cross-tool for "make release".
Spotted by: kris, markm
Note that crunchgen's stub .c programs already have the code to use it:
"int _crunched_%s_stub(int argc, char **argv, char **envp)"
"{return main(argc,argv,envp);}\" >%s_stub.c\n",
Add $FreeBSD$ to allow the commit.
Reviewed by: luigi
MFC after: 3 days
so the .lo files can be partially linked against libraries
which redefine symbols in the standard libs, or which reference
symbols in the objects.
Submitted by: Sam Leffler
MFC After: 3 days
progs prog1
special prog1 objdir ../../prog1/obj
special prog1 objs prog1.o
This fixes a bug that I introduced around the time of 4.2-release.
Reported by: Larry Baird <lab@gta.com>
longer includes machine/elf.h.
* consumers of elf.h now use the minimalist elf header possible.
This change is motivated by Binutils 2.11.0 and too much clashing over
our base elf headers and the Binutils elf headers.
Make sure we pass $(BUILDOPTS) to the `clean' target
so that `make clean' works on the same set of object
files. Otherwise, we may end up with an incorrectly
built and up-to-date object file.
o strcpy() -> strlcpy()
o sprintf() -> snprintf()
o mktemp() -> mkstemp()
o use err() instead of errx() in out_of_memory() function since
errno will probably be set
Submitted by: jedgar
/usr/obj hardwired in the code, now you can override it
with a command line option or MAKEOBJDIRPREFIX env. variable.
The above is useful to build picobsd-specific objects in some other
place than /usr/obj
While at it, fix documentation and change a few sprintf -> snprintf.
This allows build flags to be specified for a particular program from
within the crunch.conf file, eg:
prog ppp
special ppp buildopts -DNOKLDLOAD -DNOINET6 -DNONAT -DNOATM
This adds '-DNOKLDLOAD -DNOINET6 -DNONAT -DNOATM' to make targets
related to ppp when determining which object files to build and
when calculating dependencies and building the targets.
a per program basis.
This has now been added in the following way:
* Harness the make header file that's specified with the -h argument:
- Allow the user to define $(OPTS) to specify make arguments that should
be added to every program target.
- Allow the user to define $(prog_OPTS) to specify make arguments that
should just be added to the build of 'prog'.
* Make sure that $(OPTS) and $(prog_OPTS) are defined when looking through
each program's make file to determine which object files to crunch.
* When building the crunchgen makefile add $(OPTS) and $(prog_OPTS)
to the depend and build rules for $(prog_OBJS).
makefiles (for use with picobsd among other things).
See the manpage for details, but:
* -h makefile-include-name
can be used to specify a file to include in the makefiles
generated by crunchgen . This is a good place to specify make
variables such as RELEASE_CRUNCH, NOTHIS, NOTHAT and the like.
* special progname objvar variable_name
in the crunch config file declares a different variable than
OBJS to be used to get the list of objects.
* crunchgen now looks first for Makefile.<progname> in the current
directory to override the makefile in <progname> source dir.
This in many cases avoids the need to patch the original makefile
if the above two features are still not enough.
Approved-By: jordan
track.
The Id line is normally at the bottom of the main comment block in the
man page, separated from the rest of the manpage by an empty comment,
like so;
.\" $Id$
.\"
If the immediately preceding comment is a @(#) format ID marker than the
the $Id$ will line up underneath it with no intervening blank lines.
Otherwise, an additional blank line is inserted.
Approved by: bde
When building a release, RELEASE_CRUNCH is defined for a `make' of
the objects required by the crunch of each program. The object list
is still obtained in the same way, so you must make sure that all
objects are built (empty if necessary) by this make. ppp/Makefile
provides an example.
Reviewed by: jkh
provides for a means to specify an argument for crunchide's -k option.
(This is required by ntpdate.)
Submitted by: peter@rhiannon.clari.net.au (Peter Hawkins)
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.
Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.
Could you please commit this patch to usr.sbin/crunch/examples ?
This should make fixit.conf compilable again.
VI needs some hacks.
[Note: I'm not sure how relevant this example is anymore, but then it's only
an example]
Submitted by: mr
place.
Removed mount_pcfs until we have a replacement.
Removed fdisk until it is ported and/or replaced.
Now have to include many more libraries due to /bin/sh changes.
Back out my earlier change. Note that this is just for the 1.1.5R floppies;
the 1.1.5A ones still have the work-around method (which works fine and
doesn't hurt anything, it's just kludge!).
called `-' lying around on the users system forever) login shells will fail.
Just special-case the handling of `-' for now until/unless I find a more
palatable solution.