Commit Graph

90 Commits

Author SHA1 Message Date
Philippe Charnier
557f7e714d Put author name under .An/Aq. 2002-10-16 15:51:16 +00:00
Gregory Neil Shapiro
b0c70f811b Apply the envp fix to the other call to main() as well.
Submitted by:	Peter Edwards <pmedwards@eircom.net>
2002-08-09 02:39:38 +00:00
Gregory Neil Shapiro
8f3548b29f Pass envp to crunched program's main() routines as some depend on it.
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
2002-08-04 22:14:44 +00:00
Ruslan Ermilov
3d8d000653 mdoc(7) police: markup nit. 2002-05-30 07:51:22 +00:00
Ruslan Ermilov
a2acc41379 Get all the fruit from makefile. 2002-05-25 13:39:20 +00:00
Ruslan Ermilov
ccde2810d9 Removed dead code. 2002-05-24 06:30:07 +00:00
Ruslan Ermilov
d8d9770881 Handle endianness. This completes cross-support for sparc64. 2002-05-24 06:24:40 +00:00
Ruslan Ermilov
66c795d4f4 Added support for ia64 and sparc64. 2002-05-21 15:36:29 +00:00
Ruslan Ermilov
64b06e7897 Make crunchide(1) a cross-tool; needed for cross-arch "make release".
Note that a.out is only supported for the non-cross i386 case.
2002-04-30 09:34:53 +00:00
Dag-Erling Smørgrav
d397408818 Usage style sweep: spell "usage" with a small 'u'.
Also change one case of blatant __progname abuse (several more remain)
This commit does not touch anything in src/{contrib,crypto,gnu}/.
2002-04-22 13:44:47 +00:00
Philippe Charnier
7f94b8deee Use `The .Nm utility' 2002-04-20 12:27:18 +00:00
Luigi Rizzo
252f13ab51 Add a "special progname lib xxx ..." command to crunchgen
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
2002-03-30 16:48:30 +00:00
Peter Wemm
2b30bcbb41 ia64 support. Hide a.out support solely under i386. While alpha never
was released in a.out form, it does define the a.out data structures.
The ia64 port does not.
2001-10-23 10:18:41 +00:00
Josef Karthauser
1554755e12 Make source crunches work as well as object crunches; broken in the
last commit that fixed object crunches.

Repeat after me, "no excuses for not testing".
2001-08-17 11:11:10 +00:00
Josef Karthauser
11384533ea Make crunchgen crunch pre-built object files again, i.e.:
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>
2001-08-15 14:37:26 +00:00
Ruslan Ermilov
753d686d34 mdoc(7) police: s/BSD/.Bx/ where appropriate. 2001-08-14 10:01:54 +00:00
David E. O'Brien
90e655ea4e Perform a major cleanup of the usr.sbin Makefiles.
These are not perfectly in agreement with each other style-wise, but they
are orders of orders of magnitude more consistent style-wise than before.
2001-07-20 06:20:32 +00:00
David E. O'Brien
ac24b049cc Remove GCC'isms in CFLAGS. 2001-07-20 04:23:13 +00:00
Dima Dorfman
f247324df7 Remove whitespace at EOL. 2001-07-15 08:06:20 +00:00
Ruslan Ermilov
a4c37c816b mdoc(7) police: removed HISTORY info from the .Os call. 2001-07-10 15:12:08 +00:00
Josef Karthauser
d1a97625be Use 'LIBS+= ...' instead of 'LIBS= ...' in the generated makefile
so that the user can override libraries at build time.  This is
makes it easier to cross-compile crunch builds.

Suggested by:	luigi
MFC after:	3 days
2001-06-20 23:21:02 +00:00
Ruslan Ermilov
aff344349b mount_msdos(8) -> mount_msdosfs(8). 2001-06-01 11:25:40 +00:00
Ruslan Ermilov
4c3748cf1d mount_fdesc -> mount_fdescfs
mount_portal -> mount_portalfs
2001-05-24 13:23:54 +00:00
David E. O'Brien
5e6220d9d0 * include/elf.h has been repo copied to include/elf-hints.h, and it no
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.
2001-05-02 23:56:21 +00:00
Ruslan Ermilov
67373d62bc Document ``special <progname> ident <identifier>'' command. 2001-04-04 08:28:00 +00:00
Ruslan Ermilov
a0bac7e013 - Call subclean' after clean' for each program.
- Eliminate compiler warning.
2001-04-04 08:26:54 +00:00
Ruslan Ermilov
42037fc8b4 `buildopts' may affect the selection of object files.
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.
2001-03-30 08:04:25 +00:00
Josef Karthauser
87eb4a4220 Liberal application of style(9). 2001-01-10 14:08:48 +00:00
Josef Karthauser
617b818021 Flag an error and remove the program from the list if there is
no source directory or no objects can be determined.

Initialise a structure variable.
2001-01-10 13:27:38 +00:00
Dag-Erling Smørgrav
c4b267dc7e Retire kernfs (userland part). 2000-12-28 12:59:57 +00:00
Josef Karthauser
e3b7d1782a Clean up the source directory finding code, and in the process fix a
problem that occurs when a program's source isn't found.
2000-12-24 12:21:15 +00:00
Josef Karthauser
61ffadb185 Use one of the TMPDIR env variable or _PATH_TMP instead of hardcoding
/tmp.

Submitted by:	jedgar
2000-12-17 19:49:07 +00:00
Josef Karthauser
15d6ae10ad Avoid potential problems with the existance of a shadow obj directory
confusing the 'make -f tmpfile' in the tmpfile, by creating it in /tmp.
2000-12-17 17:07:40 +00:00
Josef Karthauser
5e5f382630 Clarify an ambiguous 'else' introduced by a recent commit. 2000-12-17 17:03:05 +00:00
Josef Karthauser
f3c47f54c6 o check strdup() return values
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
2000-12-17 16:51:00 +00:00
Josef Karthauser
843d8d5178 Hopefully the last patch in a series to try and teach crunchgen to
handle MAKEOBJDIRPREFIX better, in conjunction with the -o and -p
flags.
2000-12-17 16:13:23 +00:00
Ruslan Ermilov
50ab935d46 mdoc(7) police: fixed errors from the previous revision, keep
the synopsis in a nice form, and a few more cosmetic changes.
2000-12-01 08:17:15 +00:00
Luigi Rizzo
019d04d147 Make crunchgen aware of obj directories. Formerly it had
/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.
2000-11-30 21:14:54 +00:00
Ruslan Ermilov
e97407b4f2 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 20:10:44 +00:00
Ruslan Ermilov
251c176f41 mdoc(7) police: use certified section headers wherever possible. 2000-11-17 11:44:16 +00:00
Ruslan Ermilov
8eee67525a mdoc(7)ify. 2000-11-16 13:21:17 +00:00
Josef Karthauser
08a15190ad Add and document a new configuration command: buildopts.
This allows global make options to be specified within the crunch
configuration file.
2000-11-15 14:33:29 +00:00
Ruslan Ermilov
726b61ab5f Avoid use of direct troff requests in mdoc(7) manual pages. 2000-11-10 17:46:15 +00:00
Josef Karthauser
34944d4885 Define a new special type: buildopts.
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.
2000-11-10 15:21:37 +00:00
Steve Price
a5a18d3cbb Since the 'when built' phrase is talking about the 'source file' we
should be using the word 'creates' instead.
2000-11-09 02:31:02 +00:00
Josef Karthauser
ba2250ddb7 Cause prog_make targets to include a ``make obj'' rule if the -o flag
is given to crunchgen.
[ This fixes the previous commit which silently added ``make obj'' ]
2000-11-03 15:48:58 +00:00
Josef Karthauser
65cb078f16 A missing feature of crunchgen was the ability to supply make options on
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).
2000-11-03 15:35:27 +00:00
Greg Lehey
b23507f424 Add the description of some hard-learnt restrictions and a workaround. 2000-08-28 05:47:05 +00:00
Sheldon Hearn
f2e366a105 Remove single-space hard sentence breaks. These degrade the quality
of the typeset output, tend to make diffs harder to read and provide
bad examples for new-comers to mdoc.
2000-03-01 14:09:25 +00:00
Luigi Rizzo
08826cadb2 Add a few features to crunchgen to simplify the use of existing
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
2000-02-05 10:29:19 +00:00