Commit Graph

729 Commits

Author SHA1 Message Date
uebayasi
83246377bb Revert previous, which caused tools build to fail. 2009-12-01 17:06:34 +00:00
uebayasi
ab788f10b4 Use ${NETBSDSRCDIR} for deep tools/* directories. 2009-12-01 09:08:25 +00:00
uebayasi
ba9e6e8ae6 Add pkg_install as a tool. 2009-12-01 09:01:45 +00:00
uebayasi
3cb0739866 Skip parameters for multilib build for now. 2009-12-01 04:59:24 +00:00
uebayasi
87bb55865b Handle cases where *.asm is listed in LIB2FUNCS_EXTRA (gcc/config/rs6000). 2009-12-01 03:13:26 +00:00
uebayasi
3a3e699038 Handle cases where database text files don't exist. 2009-11-30 14:34:17 +00:00
uebayasi
d77ecd459a Call "template sources" as "tmplsrcs", not "tmpsrcs". Requested by mrg@. 2009-11-30 10:03:57 +00:00
uebayasi
970b30eb96 Prefix per-library *.mk files with libs.*. 2009-11-30 09:57:59 +00:00
uebayasi
d3180e0c9b Now that we know what sources are needed to build a given library, we need
the rules how to build those sources.  Generate makefiles defining ${COPTS},
${CPPFLAGS}, and ${SRCS} (== template).

Note that ${CPPFLAGS} is actually dfined as _CPPFLAGS like
	_CPPFLAGS.tmp___gcc_bcmp.c=-DL__gcc_bcmp
and used to generate wrapper files (e.g. tmp___gcc_bcmp.c).  Otherwise it's
automagically passed to ${CC} by bsd.*.mk.
2009-11-30 09:50:59 +00:00
uebayasi
2c455e268f For each library, generate a makefile of the list of template sources too. 2009-11-30 09:33:36 +00:00
uebayasi
c91d9ec35a For each library, generate a list of sources (*.[cS]).
We create wrapper sources (tmp_*.[cS]) on-the-fly and compile them.  For
example, __gcc_bcmp() is compiled using tmp___gcc_bcmp.c, which #define's
L__gcc_bcmp and #include's libgcc2.c.
2009-11-30 09:32:13 +00:00
uebayasi
263a9a2c47 Move these analyzing functions into one place, get_libgcc_new_analyze(). 2009-11-30 08:20:23 +00:00
uebayasi
b98c239900 Typo. 2009-11-30 08:05:41 +00:00
uebayasi
1380d82f90 Generate lists of template sources ("tmpsrcs") for each libraries. We'll
need these to create wrappers of tmpsrcs and define correct dependencies.
2009-11-30 08:00:20 +00:00
uebayasi
141ef6c4d0 Generate *.o -> template *.[cS] ("tmpsrc") mapping.
Functions are built from a template (tmpsrc).  We create wrapper sources
(src) and define necessary defines and #include tmpsrc.
2009-11-30 07:19:58 +00:00
uebayasi
96a4ab5aed - Generate a list of CPP flags used to build *.o. Some files are build
repeatedly with different -DXXX to generate similar objects (e.g. different
  type size).

- Generate a list of other CC options to build *.o.

(See my sed-fu using hold space in get_libgcc_list_objs_xflags().)
2009-11-30 07:08:03 +00:00
uebayasi
7e684b1d37 - Generate a list of *.o -> lib*.{a,so} mapping. This is also known by
parsing dependency lines in libgcc.mk.

- Generate a list of *.o -> *.{c,S} mapping.  *.S files are known as
  ${LIB1ASMFUNCS}.  Assume other *.o files are built from *.c.  This information
  is needed to generated wrapper sources later.
2009-11-30 06:56:15 +00:00
uebayasi
12ee13e800 Generate lists of functions built in libgcc libraries. This is known by
pattern matching dependency lines in libgcc.mk.
2009-11-30 06:40:17 +00:00
uebayasi
00c7a5b61c Generate a list of functions provided as *.S. 2009-11-30 06:29:58 +00:00
uebayasi
b0edbfb088 Define paths of newly generated files. 2009-11-30 06:13:37 +00:00
uebayasi
ffa99e7e3a Start implementing the new style libgcc "mknative" converter which generates
BSD makefiles to build libgcc.  The goal is to build all functions rather
than managing the set of functions in gnu/lib/libgcc/Makefile.in by hand.

Because of the complexity of the build procedure, I leave not only generated
makefiles but also intermediate, analyzed data so that people can verify that
the conversion is done correctly.
2009-11-30 05:50:07 +00:00
uebayasi
d219709b67 Actually use timestamp file's timestamps so that things rebuild correctly. 2009-11-25 11:49:36 +00:00
uebayasi
912aaddf6c Adjust #line directive paths so that make depend works correctly. 2009-11-24 15:09:10 +00:00
skrll
af515df4eb Pull in fixes from binutils_2_19 branch.
Bump version and re-run mknative to pick up.
2009-11-20 22:51:29 +00:00
he
71b0977302 Point to the new ncdcs directory. 2009-11-13 08:14:53 +00:00
tron
b99b4b6003 Revert most of revision 1.73:
We cannot user_from_uid(3) or group_from_gid(3) unless the system
also supports pwcache_userdb(3) and pwcache_groupdb(3). The build will
use the hosts password and user database otherwise. Switch back to the
old behaviour to only the native functions if they are all present.
This fixes cross builds under Mac OS X and FreeBSD.

Fix based on problem analysis provided by Akihiko Hayashi.
2009-11-11 21:53:46 +00:00
skrll
1cb5794926 Collect the branding information. 2009-11-09 13:50:41 +00:00
skrll
d92e258298 Update for new binutils location, etc. 2009-11-08 15:33:29 +00:00
joerg
14197c258c Define __RCSID and __COPYRIGHT as structure, so that the following
semicolon is consumed.
2009-11-06 18:26:06 +00:00
joerg
133a83e65e Make sure that parser.c and friends can be found. 2009-11-06 15:14:37 +00:00
christos
43c1f29388 prevent $ NetBSD expansion. 2009-11-03 22:52:59 +00:00
joerg
73810e776b Need to provide NOMAN explicitly before bsd.own.mk. 2009-10-30 17:18:51 +00:00
christos
de3c2d224e short circuit lex and yacc rules. 2009-10-30 00:30:20 +00:00
christos
87224eb348 use bootstrap files for yacc too. 2009-10-29 17:16:40 +00:00
christos
39c14eeaaf Give m4 its own .WAIT. Fixes build issue on NetBSD-5. 2009-10-29 13:07:12 +00:00
christos
271138cb3a use new yacc 2009-10-29 01:01:27 +00:00
christos
e05dbd930c Add a Makefile to rebuild the bootstrap files. 2009-10-27 18:50:31 +00:00
christos
41ebfbe2a9 break cyclical dependency of lex depending on m4 and m4 depending on lex,
by providing pre-built lex and yacc files for m4.
2009-10-27 18:35:09 +00:00
tsutsui
0de065d369 Use HOST_SRCDIR=external/gpl3/binutils/usr.sbin/foo
in $(HAVE_BINUTILS)=="219" case.
Fixes build failures on Cygwin. (new libbfd depends on libz)

BTW, should we revive old ones under src/usr.sbin for
native dbsym(8)/mdsetimage(8) binaries which don't need libbfd?
2009-10-27 14:20:21 +00:00
christos
4f376672fe switch to new lex 2009-10-26 21:32:14 +00:00
joerg
f56301292d Hard-wire NetBSD major+minor version for the tool version of mandoc.
This gives "NetBSD 5.99" for .Os in -current and "NetBSD 6.0" for the
next release.
2009-10-26 21:17:19 +00:00
christos
4958d088d0 back to old lex 2009-10-26 04:08:25 +00:00
christos
74e6715321 use new lex. 2009-10-26 01:19:02 +00:00
joerg
3b68c94681 Add MKMANDOC option to trigger building cat pages and HTML pages with
mdocml.  Add a lintmanpages target for developers to check man pages
with the strictest settings of mandoc.
2009-10-23 22:14:37 +00:00
joerg
c2dba7fe45 Build glue for mdocml and for mandoc as standalone tool. 2009-10-21 18:04:52 +00:00
skrll
df133fffea Only brand newer binutils. 2009-10-14 07:30:47 +00:00
skrll
699c28bc09 Better branding from mrg 2009-10-12 08:00:41 +00:00
snj
823426b32c Adjust bug report URL to reflect htdocs changes. 2009-10-10 14:46:02 +00:00
skrll
f92d679b89 Add some NetBSD branding to binutils. 2009-10-10 10:21:22 +00:00
christos
2802d8b5af split all the password and group translation functions into individual
ifdefs instead of having a large one.
2009-10-02 18:03:19 +00:00