Change the gcc options for sdl builds to allow for gnu99 features, it needs some fixes in other places. Fixes test_mem compilation failure on cygwin.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28723 a1c6a512-1295-4272-9138-f99709370657
diff --git a/apps/plugins/doom/z_zone.c b/apps/plugins/doom/z_zone.c
index 1d0ac5b..adf17a7 100644
--- a/apps/plugins/doom/z_zone.c
+++ b/apps/plugins/doom/z_zone.c
@@ -248,7 +248,7 @@
zonebase_size=size;
- printf("Z_Init: Allocated %dKb zone memory\n", (long unsigned)size >> 10);
+ printf("Z_Init: Allocated %uldKb zone memory\n", (long unsigned)(size >> 10));
// Align on cache boundary
diff --git a/apps/plugins/mp3_encoder.c b/apps/plugins/mp3_encoder.c
index c0b0252..bdfb4d8 100644
--- a/apps/plugins/mp3_encoder.c
+++ b/apps/plugins/mp3_encoder.c
@@ -903,7 +903,7 @@
return samples;
}
-inline uint32_t myswap32(uint32_t val)
+static inline uint32_t myswap32(uint32_t val)
{
const uint8_t* v = (const uint8_t*)&val;
diff --git a/apps/plugins/test_disk.c b/apps/plugins/test_disk.c
index afb25da..dd0758a 100644
--- a/apps/plugins/test_disk.c
+++ b/apps/plugins/test_disk.c
@@ -434,7 +434,7 @@
audiobuf = rb->plugin_get_audio_buffer(&audiobuflen);
/* align start and length to 32 bit */
- align = (-(int)audiobuf) & 3;
+ align = (-(intptr_t)audiobuf) & 3;
audiobuf += align;
audiobuflen = (audiobuflen - align) & ~3;
diff --git a/apps/plugins/test_mem.c b/apps/plugins/test_mem.c
index 0d9729f..2530982 100644
--- a/apps/plugins/test_mem.c
+++ b/apps/plugins/test_mem.c
@@ -188,7 +188,9 @@
{
(void)parameter;
bool done = false;
+#ifdef HAVE_ADJUSTABLE_CPU_FREQ
bool boost = false;
+#endif
int count = 0;
#ifdef HAVE_LCD_BITMAP
@@ -204,7 +206,7 @@
line = 0;
int ret;
rb->screens[0]->clear_display();
-#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
+#ifdef HAVE_ADJUSTABLE_CPU_FREQ
TEST_MEM_PRINTF("%s", boost?"boosted":"unboosted");
TEST_MEM_PRINTF("clock: %d Hz", *rb->cpu_frequency);
#endif
diff --git a/firmware/libc/sscanf.c b/firmware/libc/sscanf.c
index 5fbe81f..5bb08d8 100644
--- a/firmware/libc/sscanf.c
+++ b/firmware/libc/sscanf.c
@@ -1,22 +1,7 @@
#include <stdarg.h>
#include <string.h>
#include <stdbool.h>
-
-static inline bool isspace(char c)
-{
- return (c == ' ') || (c == '\t') || (c == '\n');
-}
-
-static inline bool isdigit(char c)
-{
- return (c >= '0') && (c <= '9');
-}
-
-static inline bool isxdigit(char c)
-{
- return ((c >= '0') && (c <= '9'))
- || ((c >= 'a') && (c <= 'f')) || ((c >= 'A') && (c <= 'F'));
-}
+#include <ctype.h>
static int parse_dec(int (*peek)(void *userp),
void (*pop)(void *userp),
diff --git a/firmware/target/hosted/sdl/thread-sdl.c b/firmware/target/hosted/sdl/thread-sdl.c
index 1a68391..83f1d19 100644
--- a/firmware/target/hosted/sdl/thread-sdl.c
+++ b/firmware/target/hosted/sdl/thread-sdl.c
@@ -632,8 +632,8 @@
remove_thread(THREAD_ID_CURRENT);
/* This should never and must never be reached - if it is, the
* state is corrupted */
- THREAD_PANICF("thread_exit->K:*R",
- thread_id_entry(THREAD_ID_CURRENT));
+ THREAD_PANICF("thread_exit->K:*R (ID: %d)",
+ thread_id_entry(THREAD_ID_CURRENT)->id);
while (1);
}
diff --git a/tools/configure b/tools/configure
index b8d99d7..b8cabe7 100755
--- a/tools/configure
+++ b/tools/configure
@@ -202,7 +202,8 @@
app_type=$1
winbuild=""
- GCCOPTS='-W -Wall -g -fno-builtin'
+ GCCOPTS=`echo $CCOPTS | sed -e s/-ffreestanding// -e s/-nostdlib// -e s/-Wundef// -e s/-O//`
+ GCCOPTS="$GCCOPTS -fno-builtin -g"
GCCOPTIMIZE=''
LDOPTS='-lm' # button-sdl.c uses sqrt()