Cross-platform Makefile