view helpers/build-date.c @ 574:41b6a18ffa0b

GPF rebuild from source: symlink magic to fix __FILE__ With this fix all of the core GPF libraries (frame_*, misc_* and tif_*) compile into objects that perfectly match the original TCS211 binary versions bit for bit. Prior to this fix there was an issue with TI's use of __FILE__ expanding into longer pathnames that were an artifact of our FC Magnetite build system, and it appears that these longer __FILE__ strings in GPF may have been causing some breakage in some error handling paths.
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 24 Jan 2019 23:26:51 +0000
parents 074e24776948
children adf7a4281fd7
line wrap: on
line source

/*
 * This program runs at firmware build time to produce a C file for the
 * fw build that includes the build date and time stamp.
 */

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

main(argc, argv)
	char **argv;
{
	time_t now;
	struct tm *tm;

	if (argc < 2 || argc > 3) {
		fprintf(stderr, "usage: %s config_name [target_name]\n",
			argv[0]);
		exit(1);
	}
	time(&now);
	tm = gmtime(&now);
	printf("const char firmware_version_str[] =\n");
	if (argv[2])
		printf("\"FreeCalypso Magnetite %s (%s), ", argv[1], argv[2]);
	else
		printf("\"FreeCalypso Magnetite %s, ", argv[1]);
	printf("build date %d-%02d-%02dT%02d:%02d:%02dZ\";\n",
		tm->tm_year+1900, tm->tm_mon+1, tm->tm_mday,
		tm->tm_hour, tm->tm_min, tm->tm_sec);
	exit(0);
}