David Given
0d77cb8279
We can build our first C file.
2016-08-07 21:56:53 +02:00
David Given
b50dc4214a
Add check for undefined variables. Find undefined variables. Fix undefined
...
variables.
2016-08-05 00:01:55 +02:00
David Given
5e84be70fd
Massive ackbuilder refactor --- cleaner and more expressive. Lists
...
are automatically flattened (leading to better build files), and the
list and filename functions are vastly more orthogonal.
2016-08-04 23:51:19 +02:00
David Given
b2bb4ce3b2
Builds libend (the simplest library). Becoming obvious I need to rework the way
...
ackbuilder deals with lists.
2016-07-30 00:39:22 +02:00
David Given
363d13cc2f
C preprocessor; tabgen; now the pc86 boot.s builds using the ack
...
toolchain.
2016-07-29 00:22:49 +02:00
David Given
c6292642c6
Fix a nasty dependency bug where filenamesof() on installables wouldn't
...
return any of the installable files (which meant installables were
never considered as dependencies).
2016-07-29 00:22:22 +02:00
David Given
f9c77fca03
Replace the hacky cflags variable with an equally hacky but vastly
...
more useful magic vars variable.
2016-07-27 00:10:15 +02:00
David Given
cdeea836f2
Replaced the fairly complex environment code with a much simpler
...
emitter object.
2016-07-26 23:43:31 +02:00
David Given
a8a9d1bbfa
yacc, ncgg; platform ncg builds now.
2016-07-26 23:35:30 +02:00
David Given
bff5c4019c
Baby steps towards building a platform --- make the assembler work.
...
Add ackbuilder support for C preprocessor files and yacc.
2016-07-24 00:50:02 +02:00
David Given
2770a83837
More programs, more libraries. src/modules build files are now saner.
2016-07-23 00:30:31 +02:00
David Given
05e3cf286f
Saner clibrary dependency and header handling.
2016-07-19 23:42:56 +02:00
David Given
b7720c298b
Error out if a template expansion returns nil (as it's normally an error).
2016-07-19 23:42:42 +02:00
David Given
2d2497c318
ackbuilder rules files now require absolute paths in external variables
...
(otherwise commands which change directory don't work).
2016-07-18 23:16:27 +02:00
David Given
523374c36b
Built a make bootstrap that runs either make or ninja depending on which is
...
installed.
2016-07-16 14:58:29 +02:00
David Given
cdbd605803
concat, targetnamesof. deps is now handled more consistently (treated the same
...
as ins but not passed in as inputs).
2016-07-14 23:53:34 +02:00
David Given
f70c12fad5
Allow headers which aren't .h files.
2016-06-30 13:27:47 +02:00
David Given
60edd08390
Make work with make.
2016-06-30 13:19:10 +02:00
David Given
90764320bb
Better cwd handling.
2016-06-29 13:58:38 +02:00
David Given
c8711628ab
clibrary can now export headers.
2016-06-29 13:28:45 +02:00
David Given
7f7005bac5
Local rules; include() and replace().
2016-06-29 13:28:22 +02:00
David Given
d805052205
All the amisc binaries now build.
2016-06-19 09:32:45 +02:00
David Given
1978867fd2
Add ninja support. It works so much better than make.
2016-06-19 08:55:02 +02:00
David Given
2af8568cc3
First draft at installables; not very satisfactory. make bugs with multiple
...
output targets and parallelism?
2016-06-16 05:26:44 +02:00
David Given
09554cb324
installable works, although it's a bit kludgy. Change the : separator to +
...
because : is special in make and non of the others I could think of would work.
2016-06-14 07:34:14 +02:00
David Given
605651776e
We can build a real program now!
2016-06-12 20:59:43 +02:00
David Given
015804afce
cprogram works.
2016-06-09 07:14:41 +02:00
David Given
f47bb49c1f
Multiple build files work. Use deps intelligently. clibraries.
2016-06-09 06:55:44 +02:00
David Given
fcc5a878ae
Rather cleaner cfile implementation where you just give it a .c and a pile of .h files.
2016-06-08 03:21:53 +02:00
David Given
8082ef16a7
cfile with dynamically generated headers sort of works.
2016-06-07 05:00:26 +02:00
David Given
f4449e3f97
Multioutput rules work!
2016-06-07 04:20:08 +02:00
David Given
79f7c0ad23
Leaf rules work!
2016-06-07 04:13:56 +02:00
David Given
b7d2b9c3cf
Dependent rules work!
2016-06-07 00:10:22 +02:00
David Given
14ccf7151e
Most of simplerule now looks like it's working.
2016-06-06 22:13:30 +02:00
David Given
cb0111b290
Skeleton of the rule engine and type system.
2016-06-06 20:50:48 +02:00
David Given
df1372ab35
Really basic skeleton of Ackbuilder mark 2.
2016-06-06 17:18:19 +02:00
David Given
d0bfee142b
Archival non-working checkin of the experimental build tool.
2016-06-05 10:39:29 +02:00
David Given
88bd7ce126
Remove defunct pmfiles.
...
--HG--
branch : default-branch
2016-06-03 13:56:50 +02:00
David Given
88e13ecce3
Don't use the ACK preprocessor on host files --- use the host preprocessor
...
instead.
--HG--
branch : default-branch
2016-03-14 20:58:19 +01:00
David Given
ff0c78cc78
Merge from default.
...
--HG--
branch : dtrg-videocore-branch-branch
2016-03-13 21:13:09 +01:00
David Given
3d5e72e20b
Newer versions of GNU Make have a new function which collides with a
...
variable we're using; change the name of the variable.
2015-03-22 12:09:46 +01:00
David Given
e5341e4167
Remember to clear ackflags on reset.
...
--HG--
branch : dtrg-videocore
2013-05-20 22:41:27 +01:00
David Given
e7c2029c9c
Dependency fixes.
2013-05-17 00:04:37 +01:00
David Given
f70f78b6e4
Correctly generate dependency information.
2013-05-16 22:02:00 +01:00
David Given
11377070fd
Update distribution files.
...
--HG--
branch : dtrg-buildsystem
2013-05-15 23:46:15 +01:00
David Given
d5f0107746
Build the Basic run-time library (after some modernisation).
...
--HG--
branch : dtrg-buildsystem
2013-05-14 16:11:29 +01:00
David Given
442306d557
Split off some of the platform-independent stuff (such as as and ncg).
...
--HG--
branch : dtrg-buildsystem
rename : plat/pc86/build.mk => mach/i386/build.mk
rename : plat/pc86/build.mk => mach/i80/build.mk
rename : plat/pc86/build.mk => mach/i86/build.mk
rename : plat/pc86/build.mk => mach/m68020/build.mk
rename : plat/pc86/build.mk => mach/powerpc/build.mk
2013-05-13 22:12:46 +01:00
David Given
b0c238eb5d
Made a start on building the runtimes for each platform and language; the
...
Linuxes all build.
--HG--
branch : dtrg-buildsystem
rename : modules/src/em_mes/build.mk => modules/src/read_em/build.mk
rename : plat/pc86/build.mk => plat/linux386/build.mk
rename : plat/pc86/build.mk => plat/linux68k/build.mk
rename : plat/pc86/build.mk => plat/linuxppc/build.mk
rename : util/ack/build.mk => util/misc/build.mk
2013-05-12 23:51:55 +01:00
David Given
c1aca7dae5
First milestone of replacing the build system.
...
--HG--
branch : dtrg-buildsystem
rename : lang/cem/cpp.ansi/Parameters => lang/cem/cpp.ansi/parameters.h
2013-05-12 20:45:55 +01:00
George Koehler
0131ca4d46
Delete 689 undead files.
...
These files "magically reappeared" after the conversion from CVS to
Mercurial. The old CVS repository deleted these files but did not
record *when* it deleted these files. The conversion resurrected these
files because they have no history of deletion. These files were
probably deleted before year 1995. The CVS repository begins to record
deletions around 1995.
These files may still appear in older revisions of this Mercurial
repository, when they should already be deleted. There is no way to fix
this, because the CVS repository provides no dates of deletion.
See http://sourceforge.net/mailarchive/message.php?msg_id=29823032
2012-09-20 22:26:32 -04:00