Permalink
Browse files

Generate C file / header for svn version string

It's now easier to force rebuild of files depending on the svn revision

version.c/version.h are generated once with new tools/genversion.sh
Changes in the VCS are still not auto detected, so you'll have to remove
builddir/version.* if you want to change the string in your binaries

APPSVERSION is now called RBVERSION and is defined in the generated
header instead of being defined by the Makefiles
appsversion is now called rbversion (the plugin api number didn't change
since old modules are still binary compatible)

Change some bootloaders to use knwon-at-buildtime RBVERSION instead of
"%s" + rbversion

You'll need to run make clean to regenerate dependencies after the
removal of apps/version.h

To build binaries with a different version string, hand-edit
tools/version.sh or tools/genversion.sh (which calls the former)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26320 a1c6a512-1295-4272-9138-f99709370657
  • Loading branch information...
1 parent 6ca9f23 commit 5d236b2bfda7b460e6b970c3b6f6dc539b14020e @funman funman committed May 27, 2010
View
@@ -120,8 +120,6 @@
/*#define AUTOROCK*/ /* define this to check for "autostart.rock" on boot */
-const char appsversion[]=APPSVERSION;
-
static void init(void);
#ifdef HAVE_SDL
View
@@ -172,7 +172,7 @@ static const char* info_getname(int selected_item, void *data,
{
case INFO_VERSION:
snprintf(buffer, buffer_len, "%s: %s",
- str(LANG_VERSION), appsversion);
+ str(LANG_VERSION), rbversion);
break;
case INFO_BUFFER: /* buffer */
@@ -259,7 +259,7 @@ static int info_speak_item(int selected_item, void * data)
{
case INFO_VERSION: /* version */
talk_id(LANG_VERSION, false);
- talk_spell(appsversion, true);
+ talk_spell(rbversion, true);
break;
case INFO_BUFFER: /* buffer */
View
@@ -621,7 +621,7 @@ int show_logo( void )
char version[32];
int font_h, font_w;
- snprintf(version, sizeof(version), "Ver. %s", appsversion);
+ snprintf(version, sizeof(version), "Ver. %s", rbversion);
lcd_clear_display();
#if defined(SANSA_CLIP) || defined(SANSA_CLIPV2) || defined(SANSA_CLIPPLUS)
@@ -646,7 +646,7 @@ int show_logo( void )
lcd_clear_display();
lcd_double_height(true);
lcd_puts(0, 0, rockbox);
- lcd_puts_scroll(0, 1, appsversion);
+ lcd_puts_scroll(0, 1, rbversion);
#endif
lcd_update();
View
@@ -718,7 +718,7 @@ static const struct plugin_api rockbox_api = {
semaphore_release,
#endif
- appsversion,
+ rbversion,
/* new stuff at the end, sort into place next time
the API gets incompatible */
};
View
@@ -885,7 +885,7 @@ int (*round_value_to_list32)(unsigned long value,
void (*semaphore_release)(struct semaphore *s);
#endif
- const char *appsversion;
+ const char *rbversion;
/* new stuff at the end, sort into place next time
the API gets incompatible */
};
@@ -546,7 +546,7 @@ int main(void)
"will continue.\n\n",BATTERY_LOG);
rb->fdprintf(fd,
"Battery bench run for %s version %s\n\n"
- ,MODEL_NAME,rb->appsversion);
+ ,MODEL_NAME,rb->rbversion);
rb->fdprintf(fd,
"Battery type: %d mAh Buffer Entries: %d\n"
@@ -578,7 +578,7 @@ int main(void)
rb->fdprintf(fd, "\n--File already present. Resuming Benchmark--\n");
rb->fdprintf(fd,
"Battery bench run for %s version %s\n\n"
- ,MODEL_NAME,rb->appsversion);
+ ,MODEL_NAME,rb->rbversion);
rb->close(fd);
}
@@ -411,7 +411,7 @@ int flash_rockbox(const char *filename, int section)
rb->memset(&hdr, 0, sizeof(struct flash_header));
hdr.magic = FLASH_MAGIC;
hdr.length = len;
- // rb->strncpy(hdr.version, APPSVERSION, sizeof(hdr.version)-1);
+ // rb->strncpy(hdr.version, rb->rbversion , sizeof(hdr.version)-1);
p16 = (uint16_t *)&hdr;
rb->snprintf(buf, sizeof(buf), "Programming...");
@@ -129,7 +129,7 @@ enum plugin_status plugin_start(
return PLUGIN_ERROR;
list = rb->get_settings_list(&setting_count);
rb->fdprintf(fd, "# .cfg file created by rockbox %s - "
- "http://www.rockbox.org\r\n\r\n", rb->appsversion);
+ "http://www.rockbox.org\r\n\r\n", rb->rbversion);
rb->fdprintf(fd, "# -- Sound settings -- #\r\n");
for(i=0;i<setting_count;i++)
View
@@ -536,7 +536,7 @@ static bool settings_write_config(const char* filename, int options)
if (fd < 0)
return false;
fdprintf(fd, "# .cfg file created by rockbox %s - "
- "http://www.rockbox.org\r\n\r\n", appsversion);
+ "http://www.rockbox.org\r\n\r\n", rbversion);
for(i=0; i<nb_settings; i++)
{
if (settings[i].cfg_name == NULL)
View
@@ -1,26 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 Björn Stenberg
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-#ifndef _VERSION_H_
-#define _VERSION_H_
-
-extern const char appsversion[];
-
-#endif
View
@@ -46,12 +46,8 @@ ifdef APPEXTRA
INCLUDES += $(patsubst %,-I%,$(subst :, ,$(APPEXTRA)))
endif
-ifndef VERSION
-VERSION=$(shell date +%y%m%d-%H%M)
-endif
-
-CFLAGS = $(GCCOPTS) $(INCLUDES) $(TARGET) $(DEFINES) \
- -DAPPSVERSION=\"$(VERSION)\" $(EXTRA_DEFINES) -DMEM=${MEMORYSIZE}
+CFLAGS = $(GCCOPTS) $(INCLUDES) $(TARGET) $(DEFINES) $(EXTRA_DEFINES) \
+ -DMEM=${MEMORYSIZE}
OBJS := $(SRC:%.c=$(OBJDIR)/%.o)
SOURCES = $(SRC)
View
@@ -29,6 +29,7 @@
#include "button.h"
#include "common.h"
#include "usb.h"
+#include "version.h"
static void load_fw(unsigned char* ptr, unsigned int len)
@@ -66,7 +67,7 @@ void main(void)
lcd_setfont(FONT_SYSFIXED);
reset_screen();
printf("Rockbox boot loader");
- printf("Version %s", APPSVERSION);
+ printf("Version " RBVERSION);
ret = storage_init();
if(ret)
View
@@ -35,11 +35,11 @@
#include "font.h"
#include "lcd.h"
#include "usb-target.h"
+#include "version.h"
#define TAR_CHUNK 512
#define TAR_HEADER_SIZE 157
-const char version[] = APPSVERSION;
/* Where files sent via MTP are stored */
static const char basedir[] = "/Content/0b00/00/";
/* Can use memory after vector table up to 0x01f00000 */
@@ -346,7 +346,7 @@ void main(void)
lcd_clear_display();
printf("Gigabeat S Rockbox Bootloader");
- printf("Version %s", version);
+ printf("Version " RBVERSION);
/* Initialize KPP so we can poll the button states */
button_init_device();
View
@@ -45,11 +45,10 @@
#include "usb.h"
#include "mmu-arm.h"
#include "rtc.h"
+#include "version.h"
#include <stdarg.h>
-char version[] = APPSVERSION;
-
void shutdown(void)
{
/* We need to gracefully spin down the disk to prevent clicks. */
@@ -174,7 +173,7 @@ void main(void)
verbose = true;
printf("Rockbox boot loader");
- printf("Version %s", version);
+ printf("Version " RBVERSION);
sleep(50); /* ATA seems to error without this pause */
@@ -42,6 +42,8 @@
#include "power.h"
#include "powermgmt.h"
#include "file.h"
+#include "version.h"
+
#include "pcf50606.h"
#include "common.h"
@@ -58,8 +60,6 @@ int usb_screen(void)
return 0;
}
-char version[] = APPSVERSION;
-
/* Reset the cookie for the crt0 crash check */
inline void __reset_cookie(void)
{
@@ -188,7 +188,7 @@ void main(void)
}
printf("Rockbox boot loader");
- printf("Version %s", version);
+ printf("Version " RBVERSION);
check_battery();
View
@@ -44,6 +44,7 @@
#include "common.h"
#include "hwcompat.h"
#include "usb.h"
+#include "version.h"
#define XSC(X) #X
#define SC(X) XSC(X)
@@ -56,9 +57,6 @@
/* A buffer to load the Linux kernel or Rockbox into */
unsigned char *loadbuffer = (unsigned char *)DRAM_START;
-/* Bootloader version */
-char version[] = APPSVERSION;
-
#if CONFIG_KEYPAD == IPOD_4G_PAD && !defined(IPOD_MINI)
/* check if number of seconds has past */
int timer_check(int clock_start, unsigned int usecs)
@@ -335,7 +333,7 @@ void* main(void)
lcd_setfont(FONT_SYSFIXED);
printf("Rockbox boot loader");
- printf("Version: %s", version);
+ printf("Version: " RBVERSION);
printf("IPOD version: 0x%08x", IPOD_HW_REVISION);
i=ata_init();
View
@@ -44,6 +44,7 @@
#include "power.h"
#include "file.h"
#include "common.h"
+#include "version.h"
/* Safety measure - maximum allowed firmware image size.
The largest known current (October 2009) firmware is about 6.2MB so
@@ -54,9 +55,6 @@
/* The buffer to load the firmware into - use an uncached alias of 0x08000000 */
unsigned char *loadbuffer = (unsigned char *)0x48000000;
-/* Bootloader version */
-char version[] = APPSVERSION;
-
extern int line;
void fatal_error(void)
@@ -209,7 +207,7 @@ void main(void)
lcd_setfont(FONT_SYSFIXED);
printf("Rockbox boot loader");
- printf("Version: %s", version);
+ printf("Version: " RBVERSION);
i = storage_init();
View
@@ -46,6 +46,7 @@
#include "eeprom_settings.h"
#include "rbunicode.h"
#include "common.h"
+#include "version.h"
#include <stdarg.h>
@@ -58,8 +59,6 @@
static bool recovery_mode = false;
#endif
-char version[] = APPSVERSION;
-
/* Reset the cookie for the crt0 crash check */
inline void __reset_cookie(void)
{
@@ -254,7 +253,7 @@ void failsafe_menu(void)
extern int line;
reset_screen();
- printf("Bootloader %s", version);
+ printf("Bootloader " RBVERSION);
check_battery();
printf("=========================");
line += FAILSAFE_OPTIONS;
@@ -502,7 +501,7 @@ void main(void)
lcd_setfont(FONT_SYSFIXED);
printf("Rockbox boot loader");
- printf("Version %s", version);
+ printf("Version " RBVERSION);
/* No need to wait here more because lcd_init and others already do that. */
// sleep(HZ/50); /* Allow the button driver to check the buttons */
View
@@ -47,6 +47,7 @@
#include "common.h"
#include "rbunicode.h"
#include "isp1362.h"
+#include "version.h"
#include <stdarg.h>
@@ -55,8 +56,6 @@
#define DRAM_START 0x31000000
-char version[] = APPSVERSION;
-
/* Reset the cookie for the crt0 crash check */
inline void __reset_cookie(void)
{
@@ -210,7 +209,7 @@ void main(void)
lcd_setfont(FONT_SYSFIXED);
printf("Rockbox boot loader");
- printf("Version %s", version);
+ printf("Version " RBVERSION);
sleep(HZ/50); /* Allow the button driver to check the buttons */
rec_button = ((button_status() & BUTTON_REC) == BUTTON_REC)
@@ -39,9 +39,7 @@
#include "i2c.h"
#include "backlight-target.h"
#include "power.h"
-
-/* Bootloader version */
-char version[] = APPSVERSION;
+#include "version.h"
#define START_SECTOR_OF_ROM 1
#define ROMSECTOR_TO_HACK 63
@@ -116,7 +114,7 @@ void* main(void)
lcd_setfont(FONT_SYSFIXED);
printf("Rockbox e200R installer");
- printf("Version: %s", version);
+ printf("Version: " RBVERSION);
printf(MODEL_NAME);
printf("");
View
@@ -39,6 +39,7 @@
#include "crc32-mi4.h"
#include <string.h>
#include "power.h"
+#include "version.h"
#if defined(SANSA_E200) || defined(PHILIPS_SA9200)
#include "i2c.h"
#include "backlight-target.h"
@@ -95,9 +96,6 @@ extern int show_logo(void);
/* A buffer to load the original firmware or Rockbox into */
unsigned char *loadbuffer = (unsigned char *)DRAM_START;
-/* Bootloader version */
-char version[] = APPSVERSION;
-
/* Locations and sizes in hidden partition on Sansa */
#if (CONFIG_STORAGE & STORAGE_SD)
#define PPMI_SECTOR_OFFSET 1024
@@ -525,7 +523,7 @@ void* main(void)
lcd_setfont(FONT_SYSFIXED);
printf("Rockbox boot loader");
- printf("Version: %s", version);
+ printf("Version: " RBVERSION);
printf(MODEL_NAME);
i=storage_init();
Oops, something went wrong.

0 comments on commit 5d236b2

Please sign in to comment.