yenatch
ea8aaeb8e3
fix cryptic 'no rule' error when a prerequisite is missing
...
at the cost of scan_includes running before the rules are actually evaluated
2017-12-03 20:46:11 -05:00
yenatch
021afb6831
rgbds variables in the makefile
...
this is for my own convenience but anyone using both rgbds 2 and 3 may find it useful
2017-10-22 02:12:13 -04:00
yenatch
1439887b49
rename pokecrystal.ld -> pokecrystal.link
2017-10-22 02:06:43 -04:00
yenatch
aa19af3822
Rebuild on changes to pokecrystal.ld
2017-09-24 03:30:47 -04:00
yenatch
01caa369ec
Merge pull request #379 from yenatch/tools
...
Refactor scan_includes and add warnings for tools
2017-09-24 01:25:03 -04:00
yenatch
17448c51a5
Merge pull request #389 from yenatch/rgbds-3
...
rgbds 0.3.3
2017-09-24 01:23:34 -04:00
PikalaxALT
63bc19e33d
Make repository compatible with RGBDS 0.3.3 (breaks support for earlier versions of RGBDS)
2017-09-24 01:15:05 -04:00
yenatch
59a27d5907
tools/gfx: Replace --width with --png
2017-09-24 01:07:02 -04:00
PikalaxALT
0e470bc785
Fix section linking
...
Create linker script and float all sections
2017-09-23 23:04:10 -04:00
surskitty
7cd4ca1207
Updating Makefile for the unused GB + N64 image.
2017-09-10 00:30:52 -04:00
yenatch
7ba068d45b
Makefile formatting
2017-08-20 12:42:54 -04:00
yenatch
3064e84c5f
Use $(filter) to check targets
2017-08-20 12:37:23 -04:00
yenatch
8e87d5abc4
Use $(MAKE)
2017-06-29 18:34:29 -04:00
yenatch
5dfe27125b
Merge branch 'master' into tools-makefile-integration
2017-06-24 20:42:25 -04:00
yenatch
f03b898250
Add a md5 tool to avoid md5sum dependency.
...
md5sum is missing in macOS and (presumably) BSD.
An alternative would have been to use sha1sum instead, but it's probably
a good idea to have as few dependencies as possible, so this doesn't
happen again.
fixes #364
2017-06-24 18:42:28 -04:00
yenatch
f12e42ab6d
Use SHA1 to compare roms
2017-06-24 18:32:54 -04:00
yenatch
9b1550c5e0
Explicit rules for gfx/shrink{1,2}.2bpp
2017-06-24 16:31:42 -04:00
yenatch
a20664d415
Fix gfx/misc
2017-06-24 16:30:12 -04:00
yenatch
803c5154f4
pngs in gfx/unknown
2017-06-24 16:27:52 -04:00
yenatch
131bda73bc
pngs in gfx/misc
2017-06-24 02:50:42 -04:00
yenatch
41ae3610f6
pngs in gfx/fx
...
- gave up on wind.png
- add --remove-yflip
2017-06-24 00:47:55 -04:00
yenatch
1f81d1851f
pngs in gfx/
2017-06-23 19:56:24 -04:00
yenatch
89093e4670
pngs in gfx/trainers
2017-06-22 23:46:58 -04:00
yenatch
31d9c1fffa
pngs in gfx/trade
...
game_boy.png can be rearranged in a nicer way, but it's a job for another time
2017-06-22 23:45:45 -04:00
yenatch
647f9b4452
pngs in gfx/title
2017-06-21 23:45:01 -04:00
yenatch
f10ed64d1a
pngs in gfx/pokedex
2017-06-20 23:42:29 -04:00
yenatch
93a3a7d3c5
Use $(if) in the makefile. Fix gfx/mail.
...
Fixes 384788f370
2017-06-20 23:36:28 -04:00
yenatch
384788f370
pngs in gfx/mail
2017-06-18 00:13:03 -04:00
Ben10do
fc300ab0ee
Fix parallelisation issues in Makefile
...
Introduces a minor hack, in order to ensure that the tools are built before the Makefile attempts to use any of the tools, even when using ‘make -j’.
2017-06-10 18:21:38 +01:00
Ben10do
202cea9705
- Make the tools implicitly when making the ROM
...
- Add a clean target to the tools Makefile
- Run said clean target when cleaning the pokecrystal directory
2017-06-09 21:55:09 +01:00
yenatch
6001eeba40
makefile misc qol
...
- md5sum: no more --quiet. this flag is not standard and seeing "OK" is probably better
- saner use of $(roms)
2017-05-29 23:22:24 -04:00
yenatch
2f2aa10c9c
Reorder the build targets for backwards compatibility with gmake 3.81.
2017-05-29 23:21:42 -04:00
yenatch
e78034eb8c
Use a separate makefile for tools
...
- Fix crystal11
- Fix a bug where the dependency checks would run regardless of target
Fixes 0bd74cdd73
2017-05-29 19:15:34 -04:00
yenatch
d6bf2468a1
Add targets for the pokemon animation edge cases.
2017-05-28 23:23:11 -04:00
yenatch
0bd74cdd73
Fix crystal11 after clean
2017-05-28 15:53:30 -04:00
yenatch
1a549990da
Accidentally deleted the pokemon palette rule
2017-05-28 15:53:06 -04:00
yenatch
e9c1d24c31
Add Pokemon pic pngs.
...
Copies of the matching compressed files are kept, so files with a matching hash will use the matching compressed file instead.
This is the best that can be done until the compressor is fixed, which may never happen.
2017-05-28 14:03:13 -04:00
yenatch
22058020f4
Fix intermediate files once and for all.
...
GNU Make defaults to deleting all intermediate files unless .SECONDARY is defined.
2017-05-28 01:22:17 -04:00
yenatch
517136b0d9
Fix the graphics rules
2017-05-28 01:20:58 -04:00
yenatch
caa94f8412
Fix the lzcomp rule.
2017-04-28 00:37:42 -04:00
yenatch
f09a233eba
Add rules previously covered by gfx.py.
2016-08-24 22:03:12 -04:00
yenatch
2ab468268a
Add C build tools.
2016-08-24 21:56:07 -04:00
yenatch
05cffac744
Add a custom scan_includes.py.
2016-04-10 19:19:58 -04:00
dannye
8d1551ec9d
Revert 85d30fa079
2016-03-24 11:27:02 -05:00
yenatch
85d30fa079
Fix make deleting files that aren't actually intermediate.
...
make was deciding that a couple .blk files were actually intermediate.
Still don't know what is causing that issue. This is a temporary fix
that will probably be forgotten about and become a permanent one.
2016-03-21 08:04:00 -04:00
yenatch
1f784700b9
Fix the symfile.
...
gnu make redefines $* to mean % in spite of posix.
2016-03-16 17:54:20 -04:00
yenatch
3810cefaa2
Suppress deletion of .1bpp files.
2016-03-03 00:06:09 -05:00
yenatch
13f5590abe
Trim some whitespace in the makefile.
2016-03-01 23:39:01 -05:00
yenatch
370f84227b
Suppress deletion of intermediate .2bpp files.
2016-03-01 23:38:36 -05:00
yenatch
0be6e6c910
Remove useless lines in the makefile.
...
The previous rules were composed this way but only because target-specific variables weren't used. As they are now, they actually do nothing.
2016-03-01 21:13:38 -05:00
yenatch
e11ef2b8d5
Only generate dependencies for a target when it's invoked.
...
This means dependencies for unrelated targets aren't generated if you aren't building them. This makes "make clean" and building individual targets fast again.
2016-03-01 21:01:34 -05:00
yenatch
782cbc14d6
Only use suffixes needed for intermediate rules.
...
This is technically a hack, since keeping the .asm suffix was causing nonexistent rules to be evaluated as per the next commit. On the other hand, this is the intended purpose of .SUFFIXES.
2016-03-01 20:58:00 -05:00
yenatch
73a660bf2a
Remove "make pngs".
2016-02-17 16:22:05 -05:00
yenatch
36f0bda0b3
Use static pattern rules to fix dependencies for objects in subdirs.
2016-02-10 00:31:32 -05:00
yenatch
08ac6dfd80
*_crystal.asm files are no longer needed to build crystal *.o.
2016-01-29 16:24:38 -05:00
yenatch
1176712cfe
Use rgbasm -D instead of extra files for version differences.
2016-01-29 01:10:41 -05:00
IIMarckus
82e2fe78e1
Split common text into a separate object.
2015-12-18 00:59:03 -07:00
PikalaxALT
434c97a146
Makefile cleanup
2015-11-15 15:53:49 -05:00
IIMarckus
25c126c69b
Revert bad merge.
...
"Merge pull request #317 from yenatch/pngs-kind-of"
This reverts commit 25025d1b6c
, reversing
changes made to 0d17d4a758
.
2015-11-01 16:06:15 -07:00
yenatch
b8da3874bb
Add an init
makefile target to prevent data that can't be reasonably reproduced from being rebuilt.
...
This is only meant to be run once.
2015-09-01 00:20:31 -04:00
yenatch
f0af75e8d2
Fix touching in make pngs.
2015-08-29 11:02:56 -07:00
yenatch
9c4fb6a6a4
Add a script to convert project-specific graphics.
...
This is an alternative to terrible hacks like filename metadata, and might combat submodule bloat.
2015-06-28 23:53:49 -07:00
yenatch
07b9c4b030
Fix the make pngs target.
2015-06-26 10:47:13 -07:00
yenatch
82317a7a23
Preemptively get rid of graphics queues while they're still not used.
...
Nip this in the bud, so it doesn't turn out like pokered. When the time comes, use make -j16 for faster builds.
2015-04-13 22:34:41 -07:00
yenatch
a09903a2a4
make compare
2015-03-11 22:37:36 -07:00
yenatch
967977b7af
baserom.gbc is no longer required to build
2015-03-11 22:25:54 -07:00
U-Daniel-PC\Daniel
370ffcfd8d
Fix make clean
...
no more .tx files
remove rgbds generated files, .map and .sym
2015-02-14 10:14:58 -05:00
IIMarckus
828d6b92f0
Add the ability to build Crystal 1.1.
2015-02-14 01:51:34 -07:00
yenatch
8583cc4724
Stop using the preprocessor.
2015-01-20 00:01:23 -08:00
yenatch
1a2784d414
Recombine the event engine objects.
...
They must be in the same bank to work, and defining sections with static banks should only be used to produce an identical rom.
They were only split in the first place to minimize the amount of code tahat needed to be rebuilt based on a single constant, which in retrospect was meaningless.
2014-12-29 08:08:03 -08:00
IIMarckus
c28be21260
Use a path argument for find as required by POSIX.
2014-09-23 22:20:27 -06:00
yenatch
f244e4483e
Makefile: Use lower-case variables and graphics conversion queues.
...
This is mostly to make it more like pokered.
Queues are an order of magnitude faster than invoking a new python instance for each file.
2014-06-15 16:20:40 -07:00
yenatch
99fbe3147b
Rename directory stats -> data.
2014-05-31 22:57:00 -07:00
yenatch
c7938cc7d3
Split the mobile adapter library into another object file.
2014-04-30 03:03:20 -04:00
yenatch
6122490cc3
Simple graphics handling in the makefile.
...
Two-way conversion invokes circular dependency warnings, and is outside the scope of the build.
Now it's one-way.
2014-03-31 21:20:42 -04:00
yenatch
8e24af1f22
Clean up variable usage in the makefile.
2014-02-01 20:36:44 -05:00
yenatch
7f0f21b1fc
Get rid of globals.asm
...
This breaks the build until labels are exported again!
2014-02-01 13:55:48 -05:00
yenatch
4a40c26f6c
Makefile: pokemontools variable
2013-12-21 00:46:31 -05:00
yenatch
6ef1028b31
Makefile: image handling
...
todo: queue targets
2013-12-21 00:40:29 -05:00
yenatch
34d579d9f9
use pokemontools scan_includes.py
...
It might look the same as before, but this new name is much better! Well done!
2013-12-20 02:44:44 -05:00
yenatch
62020e32aa
rewrite makefile for speed and better dependency handling
2013-12-10 02:02:16 -05:00
yenatch
aaf26de8ed
Makefile: %.bin and %.pal targets
2013-12-02 23:29:38 -05:00
yenatch
cf3fd4e13b
Makefile: empty targets for %.asm and baserom.gbc
...
so make stops wasting time trying to find implicit rules
2013-12-02 16:25:03 -05:00
yenatch
cc95304912
Makefile: clean doesnt need object dependencies
2013-12-02 15:31:58 -05:00
yenatch
d7bf70f3c9
home.o
2013-11-29 02:30:08 -05:00
yenatch
2ec12a22af
gfx/pics.o
2013-11-29 02:11:40 -05:00
yenatch
c2889215a8
audio.o and misc/crystal_misc.o
2013-11-29 01:51:27 -05:00
yenatch
ac65a8b821
engine/credits_crystal.o
2013-11-28 01:38:49 -05:00
yenatch
41f149c7f1
maps.o and stats/pokedex/entries.o
2013-11-27 14:45:42 -05:00
yenatch
bb68a76330
Makefile: more readable object list
2013-11-23 02:54:02 -05:00
yenatch
cf6295cb9f
objects for event handling and scripting
2013-11-23 02:51:48 -05:00
yenatch
94188ee0f7
version-sensitive objects for egg moves and evos/attacks
...
this way main.o and wram.o are version-neutral
2013-11-22 00:14:55 -05:00
yenatch
02e8b4c7b6
version-neutral build targets
...
pokecrystal will probably never build gold/silver, but who knows
2013-11-21 21:15:37 -05:00
yenatch
f6706ecb09
finally compile multiple objects
...
pokecrystal.asm doesnt really make sense now so its gone
add includes.asm so objects have a standard include set
2013-11-20 06:35:10 -05:00
yenatch
549591ab0e
convert pngs to 1bpp too
2013-11-18 21:07:07 -05:00
yenatch
7fba45f668
fix a typo in Makefile
...
we want to link more than one object!
2013-09-11 20:27:16 -04:00
yenatch
e2aa3d7ea5
consolidate labels across objects into globals.asm
...
this is required for objects to share labels
2013-09-11 20:26:09 -04:00
yenatch
74f8d746db
abstract make targets are now phony
2013-09-11 01:26:51 -04:00
yenatch
84ba0ffc31
rename lzs make target to gfx
2013-09-11 01:25:39 -04:00
yenatch
c195276073
rename make variables for graphics files
2013-09-11 01:24:20 -04:00