Commit Graph

92 Commits

Author SHA1 Message Date
lukem
2321ad750f CRUNCHEDPROG=1 is a bit more useful if it's also defined when
determining prog_OBJPATHS ...
2002-02-02 12:25:35 +00:00
lukem
ab2c3dcd21 pass CRUNCHEDPROG=1 to make(1) when building progs from their Makefiles.
allows different options for programs that are being crunchgen(3)ed.
2002-02-02 12:14:41 +00:00
tv
554a73a4ce Include config.h for host tool; protect __RCSID. 2002-01-31 19:24:47 +00:00
ragge
a8858d3140 Add special command "keepsymbols", allows the specified external symbols
not to be hidden. From Jens Nilsson, jens@rockstorm.se.
2002-01-25 12:05:00 +00:00
fredette
a01e8e37b1 Define both NLIST_AOUT and NLIST_ELF32 for m68000. 2001-12-12 22:14:46 +00:00
tv
8e6f7afb5b MKfoo=no -> NOfoo 2001-12-12 01:48:43 +00:00
wiz
a48cf1293d Use .Bd -literal. 2001-12-01 19:02:07 +00:00
tv
5da3f37a1c Use .PATH to find mkskel.sh; formatting cleanup. 2001-11-12 18:53:40 +00:00
jmc
edf781f5fc Oops...don't nuke the global symbols with objcopy. Just keep the crunched stub
and revert the others to locals
2001-11-08 07:35:00 +00:00
drochner
ae7b2f469f remove superflouos arguments to fprintf() 2001-11-07 18:22:39 +00:00
christos
3058ad6190 make sure that we ramdiskbin is static. By the numbscull! Nobody tested this?
BTW. it seems that only make working floppies with USETOOLS=no. Will
investigate more.
2001-11-07 04:48:07 +00:00
thorpej
32928fda0d When adding something to CPPFLAGS, use +=, not = 2001-10-25 01:47:11 +00:00
jmc
0fbad14c98 Check for MAKEFLAGS in the env and pass those to the test make's run for
finding obj files. Otherwise -m <new mk files> won't get passed and can
cause problems on some cross builds.
2001-10-21 23:06:59 +00:00
jmc
6addac288f If USE_NEW_TOOLCHAIN is defined use objcopy instead of crunchide as it works now. 2001-10-05 22:52:56 +00:00
wiz
fc7396be3d Whitespace, punctuation, section header fixes, sort sections. 2001-10-04 11:20:39 +00:00
wiz
c0de7313ab Whitespace fixes. 2001-10-04 11:20:17 +00:00
jmc
ab4dcdab07 Convert makefile to use bsd.prog.mk. Makes linking work since the .mk file
takes care of it and this will handle a DESTDIR build setup then.
2001-10-04 07:34:47 +00:00
jmc
03648a201b Add a -d option to set the DBG flag to whatever flags the builder wants. If
it's not set, default to -Os (so it's not hard coded into the binary.)

Generate a makefile by default that does all object file builds in local
subdirs by binary (i.e. bad144 gets built in $OBJDIR/bad144) via a reach over
make. (Sets .PATH and .CURDIR and does a make for the objects needed in that
dir).

Add a -o option that does the old behavior of searching for obj files by
querying the various object environment vars and searching. Without this
option none of the objdir special options, environment vars, etc will have
effect.

Document all the changes in the man page (and specificly note that without -o
none of the objdir functions take effect).
2001-10-04 04:17:04 +00:00
tls
5cb98b6cb9 Fix some lossage in previous commit: don't remove everything when cleaning
in a source directory, just the object files.  This is a _very temporary_
fix; I will untangle the meaning of UPDATE, etc. in this context presently.
2001-09-24 01:05:47 +00:00
tls
0b6a2936aa Changes to the emitted makefiles that actually build the objects:
1) Always do a make clean before building objects in any directory.  This
   is wasteful, but there's really no other simple way to cope with the
   fact that the compilation settings (e.g. CFLAGS) appropriate for the
   non-crunched build of a program may not be appropriate for the crunched
   build.  If the objdir magic in make didn't rely upon the presence of an
   "obj" or "obj.${MACHINE}" symlink, we could abuse it to handle this but
   unfortunately, it does.

2) Override $DBG to cause object files to be built with -Os.  We can't emit
   "DBG?=" into the generated makefile because of order-of-inclusion issues
   with the system Makefiles; the result would be that the default setting
   (currently -O2) would always be used instead of -Os.  If you're crunching,
   you almost certainly are doing it to get a smaller executable (!) so -Os
   is almost certainly appropriate for you.
2001-09-24 00:40:35 +00:00
bjh21
b7abea421d Build in ELF32 support on all ARM platforms. 2001-06-30 14:52:42 +00:00
tsutsui
de539bb089 Define both NLIST_AOUT and NLIST_ELF32 on all m68k
rather than checking ${MACHINE}.
2001-02-18 05:22:46 +00:00
christos
35d2e40e99 fix nested extern 2001-02-05 01:39:27 +00:00
itojun
92ee339d1c sh3 split 2001-01-04 09:43:05 +00:00
simonb
0a76fbb1e6 Another object file format reference for hp300. 2001-01-02 12:30:14 +00:00
mrg
ad2b8edf8a fix oversight in previous: also look for $MACHINE_ARCH of mipse[bl]. 2000-12-23 09:06:06 +00:00
scw
9bb48d10db Pick the supported object formats in the Makefile instead of extern.h.
This gives more control of which platforms support which formats.
(Basically because __%{MACHINE}__ is not pre-defined by the compiler)
2000-12-18 08:51:39 +00:00
lukem
279552d3db fix up various .Nm abuses:
- keep the case consistent between the actual name and what's referenced.
  e.g, if it's `foo', don't use '.Nm Foo' at the start of a sentence.
- remove unnecessary `.Nm foo' after the first occurrence (except for
  using `.Nm ""' if there's stuff following, or for the 2nd and so on
  occurrences in a SYNOPSIS
- use Sx, Ic, Li, Em, Sq, and Xr as appropriate
2000-11-07 06:43:24 +00:00
garbled
35e9659b6d change the direct call to crunchide to ${CRUNCHIDE} 2000-11-01 07:16:02 +00:00
garbled
3cc7cf211a While I'm here.. document the rest of the environment variables I found in
this program.
2000-10-30 10:16:15 +00:00
garbled
4c2d830e97 Document the MAKE environment variable. 2000-10-30 10:02:39 +00:00
garbled
331c044669 Modify this to obey $MAKE in the environment, instead of allways calling
"make" hardcoded.  This should cause my cross-ramdisk-builds to stop
blowing a gasket.
2000-10-30 09:55:09 +00:00
matt
a28f4d4751 Teach crunchgen.c about MAKEOBJDIRPREFIX. 2000-09-08 17:20:47 +00:00
jhawk
a022cf9d37 Use
${MAKE}
instead of
  make
2000-08-30 23:51:46 +00:00
mrg
14e83027c8 add sparc64 support. 2000-08-09 14:22:15 +00:00
cgd
db755e7c76 sweep of my licenses (userland files w/o only my copyright) for
consistency.  (no functional changes)
2000-06-14 17:24:02 +00:00
cgd
d220ca5ba3 fix up NetBSD RCS Ids to match the standard, and the leading comment as
to match as well.  No functional changes.
2000-06-14 06:48:47 +00:00
mycroft
886d104ff1 Fix uninitialized structure element. 2000-06-11 14:31:11 +00:00
bjh21
6c97e2bd78 Initial commit of arm26 port 2000-05-09 21:55:44 +00:00
mycroft
d14de3b0e1 __sparc -> __sparc__ 2000-05-07 18:16:51 +00:00
simonb
d88dfea295 Don't declare 'extern opt*' getopt variables. 2000-04-14 06:11:07 +00:00
mycroft
5086341bbf Don't try to use /tmp/Makefile... 2000-01-24 18:07:54 +00:00
sommerfeld
dd51978a5a Make rules for finding object directory match those used by make:
obj.${MACHINE} takes precedence over obj.
the generated makefile should probably just use the print-objdir hack instead.
2000-01-09 16:37:28 +00:00
tsutsui
5cb06e6456 Use uname(3) to determine MACHINE type. 2000-01-09 04:54:53 +00:00
msaitoh
049ad0d982 machine/exec_coff.h -> sys/exec_coff.h 2000-01-07 09:40:33 +00:00
msaitoh
17b68982ad crunchide for coff (COFF executables not currently supported!) 1999-11-26 13:47:52 +00:00
erh
6752f572d8 Remove ELFNAME defines since they are defined in sys/exec_elf.h 1999-11-04 02:00:17 +00:00
kleink
522cbf0248 Update to match new SVR4-style definition names in <sys/exec_elf.h>. 1999-10-25 13:55:06 +00:00
hannken
b383db3e6c Undo last change. While these macros are defined in exec_elf.h, they are
enclosed by `#ifdef _KERNEL'.
1999-10-22 10:47:37 +00:00
erh
e896ce55a0 Remove ELFNAME macros which are already defined in exec_elf.h 1999-10-21 21:16:07 +00:00