diff options
author | Christian Soffke <christian.soffke@gmail.com> | 2024-12-13 18:31:27 +0100 |
---|---|---|
committer | Christian Soffke <christian.soffke@gmail.com> | 2024-12-20 05:29:18 +0100 |
commit | 727c800c0ddf813e194328a2d79a58f68c9d262a (patch) | |
tree | ff991dd65bc016f21d200830e2ec2bccca8e6b35 | |
parent | a86b1999d06738cee659a9b6efcdbfe7fd41d6c1 (diff) | |
download | rockbox-727c800c0d.tar.gz rockbox-727c800c0d.zip |
Don't force gcc as host compiler + fix clang warnings
On MacOS, gcc is a symlink for clang.
Patch gets rid of the warnings produced by clang,
when it is set as HOSTCC, and fixes voicetools
compilation on MacOS when calling make voicetools
from the simulator directory.
lua rb_defines_helper:
format specifies type 'int' but the argument has
type 'long'
codecs: opus / speex (LOGF):
format '%ld' expects argument of type 'long int',
but argument 7 has type 'off_t'
gigabeat:
variable 'size' set but not used
rdf2binary:
a function declaration without a prototype is
deprecated in all versions of C
rbspeexdec:
passing 'unsigned char *' to parameter of type
'char *' converts between pointers to integer
types where one is of the unique plain 'char'
type and the other is not
hmac-sha1.c
defining a type within 'offsetof' is a Clang
extension
Change-Id: I90539906698868f9589650585d865aee9f7e8539
-rwxr-xr-x | apps/plugins/lua/rbdefines_helper.pl | 4 | ||||
-rw-r--r-- | lib/rbcodec/codecs/opus.c | 4 | ||||
-rw-r--r-- | lib/rbcodec/codecs/speex.c | 18 | ||||
-rwxr-xr-x | tools/configure | 9 | ||||
-rw-r--r-- | tools/gigabeat.c | 5 | ||||
-rw-r--r-- | tools/hmac-sha1.c | 2 | ||||
-rw-r--r-- | tools/rbspeex/rbspeexdec.c | 14 | ||||
-rw-r--r-- | tools/rdf2binary.c | 2 |
8 files changed, 25 insertions, 33 deletions
diff --git a/apps/plugins/lua/rbdefines_helper.pl b/apps/plugins/lua/rbdefines_helper.pl index 095ec55515..ecda99becc 100755 --- a/apps/plugins/lua/rbdefines_helper.pl +++ b/apps/plugins/lua/rbdefines_helper.pl @@ -161,7 +161,7 @@ foreach my $define (@sorted_defines) } elsif(@$define{'value'} =~ /^[0-9]+$/) #number { - printf "\tprintf(\"%s[\\\"%%s\\\"] = %%d\\n\", stringify(%s), %s);\n", $lua_table, @$define{'name'}, @$define{'name'}; + printf "\tprintf(\"%s[\\\"%%s\\\"] = %%ld\\n\", stringify(%s), (long) %s);\n", $lua_table, @$define{'name'}, @$define{'name'}; } else #might be a string but we don't know since the macro isn't expanded far enough { @@ -199,7 +199,7 @@ foreach my $define (@sorted_defines) } elsif ($var =~$num_regex) #it must be a number { - printf "\tprintf(\"%s[\\\"%%s\\\"] = %%d\\n\", stringify(%s), %s);\n", $lua_table, @$define{'name'}, @$define{'name'}; + printf "\tprintf(\"%s[\\\"%%s\\\"] = %%ld\\n\", stringify(%s), (long) %s);\n", $lua_table, @$define{'name'}, @$define{'name'}; } else { warn "Skipping ".@$define{'name'}." indeterminate macro type\n"; } } diff --git a/lib/rbcodec/codecs/opus.c b/lib/rbcodec/codecs/opus.c index d30a9cf714..15cb2c8aa4 100644 --- a/lib/rbcodec/codecs/opus.c +++ b/lib/rbcodec/codecs/opus.c @@ -70,7 +70,7 @@ static int seek_ogg_page(uint64_t filepos) break; if (memcmp(buf, synccode, sizeof(buf)) == 0) { ci->seek_buffer(ci->curpos - sizeof(buf)); - LOGF("next page %ld", ci->curpos); + LOGF("next page %jd", (intmax_t) ci->curpos); return 1; } else ci->seek_buffer(ci->curpos - (sizeof(buf) - 1)); @@ -91,7 +91,7 @@ static int seek_opus_tags(void) break; if (memcmp(buf, synccode, sizeof(buf)) == 0) { ci->seek_buffer(ci->curpos - sizeof(buf)); - LOGF("OpusTags %ld", ci->curpos); + LOGF("OpusTags %jd", (intmax_t) ci->curpos); return 1; } else ci->seek_buffer(ci->curpos - (sizeof(buf) - 1)); diff --git a/lib/rbcodec/codecs/speex.c b/lib/rbcodec/codecs/speex.c index 3de1e79f51..43c39ffc4d 100644 --- a/lib/rbcodec/codecs/speex.c +++ b/lib/rbcodec/codecs/speex.c @@ -167,7 +167,7 @@ static spx_int64_t seek_backwards(spx_ogg_sync_state *oy, spx_ogg_page *og, offset = ret; continue; } - } else if (ret == -3) + } else if (ret == -3) return(-3); else if (ret<=0) break; @@ -187,8 +187,8 @@ static int speex_seek_page_granule(spx_int64_t pos, spx_int64_t curpos, spx_ogg_sync_state *oy, spx_int64_t headerssize) { - /* TODO: Someone may want to try to implement seek to packet, - instead of just to page (should be more accurate, not be any + /* TODO: Someone may want to try to implement seek to packet, + instead of just to page (should be more accurate, not be any faster) */ spx_int64_t crofs; @@ -222,9 +222,9 @@ static int speex_seek_page_granule(spx_int64_t pos, spx_int64_t curpos, offset = get_next_page(oy,&og,-1); if (offset < 0) { /* could not find new page,use old offset */ - LOGF("Seek/guess/fault:%lld->-<-%d,%lld:%lld,%d,%ld,%d\n", + LOGF("Seek/guess/fault:%lld->-<-%d,%lld:%lld,%d,%jd,%d\n", (long long int)curpos,0, (long long int)pos, - (long long int)offset,0,ci->curpos,/*stream_length*/0); + (long long int)offset,0, (intmax_t) ci->curpos,/*stream_length*/0); curoffset = *curbyteoffset; @@ -233,9 +233,9 @@ static int speex_seek_page_granule(spx_int64_t pos, spx_int64_t curpos, spx_ogg_sync_reset(oy); } else { if (spx_ogg_page_granulepos(&og) == 0 && pos > 5000) { - LOGF("SEEK/guess/fault:%lld->-<-%lld,%lld:%lld,%d,%ld,%d\n", + LOGF("SEEK/guess/fault:%lld->-<-%lld,%lld:%lld,%d,%jd,%d\n", (long long int)curpos,(long long int)spx_ogg_page_granulepos(&og), - (long long int)pos, (long long int)offset,0,ci->curpos,/*stream_length*/0); + (long long int)pos, (long long int)offset,0, (intmax_t) ci->curpos,/*stream_length*/0); curoffset = *curbyteoffset; @@ -271,7 +271,7 @@ static int speex_seek_page_granule(spx_int64_t pos, spx_int64_t curpos, lastgranule = spx_ogg_page_granulepos(&og); - if ( ((lastgranule - (avgpagelen/4)) < pos && ( lastgranule + + if ( ((lastgranule - (avgpagelen/4)) < pos && ( lastgranule + avgpagelen + (avgpagelen / 4)) > pos) || lastgranule > pos) { @@ -339,7 +339,7 @@ static void *process_header(spx_ogg_packet *op, DEBUGF("Too old bitstream"); return NULL; } - + st = speex_decoder_init(mode); if (!st){ DEBUGF("Decoder init failed"); diff --git a/tools/configure b/tools/configure index 8624081359..e15e3c3297 100755 --- a/tools/configure +++ b/tools/configure @@ -16,9 +16,6 @@ LDOPTS="" GLOBAL_LDOPTS="" LDMAP_OPT="-Map" -HOSTCC=gcc -HOSTAR=ar - extradefines="" use_logf="#undef ROCKBOX_HAS_LOGF" use_bootchart="#undef DO_BOOTCHART" @@ -398,9 +395,7 @@ simcc () { if $CC --version | grep -q "clang"; then echo "[Warning] Clang compiler ($CC) in your path is unsupported. Trying gcc-14." CC=gcc-14 - HOSTCC=gcc-14 AR=gcc-ar-14 - HOSTAR=gcc-ar-14 CPP=cpp-14 fi LDOPTS="$LDOPTS -ldl" @@ -4612,8 +4607,8 @@ else fi # figure out the full path to the various commands if possible -HOSTCC=`findtool ${HOSTCC} --lit` -HOSTAR=`findtool ${HOSTAR} --lit` +HOSTCC=`findtool gcc --lit` +HOSTAR=`findtool ar --lit` CC=`findtool ${CC} --lit` CPP=`findtool ${CPP} --lit` LD=`findtool ${LD} --lit` diff --git a/tools/gigabeat.c b/tools/gigabeat.c index 554b8ff052..a3c9b06d04 100644 --- a/tools/gigabeat.c +++ b/tools/gigabeat.c @@ -52,7 +52,6 @@ static FILE * openoutfile( const char * filename ) int gigabeat_code(char *infile, char *outfile) { FILE *in, *out; - unsigned long size = 0; unsigned long bytes_read; unsigned char buf[4]; unsigned long data; @@ -66,14 +65,12 @@ int gigabeat_code(char *infile, char *outfile) /* Read in little-endian */ data = le2int(buf); - + data = data ^ key; key = key + (key << 1); key = key + 0x19751217; - size += bytes_read; - /* Write out little-endian */ int2le(data, buf); diff --git a/tools/hmac-sha1.c b/tools/hmac-sha1.c index adb5f7e119..134206a683 100644 --- a/tools/hmac-sha1.c +++ b/tools/hmac-sha1.c @@ -225,7 +225,7 @@ sha1_process_bytes (const void *buffer, size_t len, struct sha1_ctx *ctx) if (len >= 64) { #if !_STRING_ARCH_unaligned -# define alignof(type) offsetof (struct { char c; type x; }, x) +# define alignof(type) __alignof__(type) # define UNALIGNED_P(p) (((size_t) p) % alignof (uint32_t) != 0) if (UNALIGNED_P (buffer)) while (len > 64) diff --git a/tools/rbspeex/rbspeexdec.c b/tools/rbspeex/rbspeexdec.c index 3cf65f0331..714077372f 100644 --- a/tools/rbspeex/rbspeexdec.c +++ b/tools/rbspeex/rbspeexdec.c @@ -17,13 +17,13 @@ * KIND, either express or implied. * ***************************************************************************/ - + #include <speex/speex.h> #include <stdio.h> #include <stdlib.h> #include "string.h" #include "rbspeex.h" - + #define USAGE_TEXT \ "Usage: rbspeexdec infile outfile\n"\ "rbspeexdec outputs mono 16 bit 16 kHz WAV files.\n"\ @@ -50,13 +50,13 @@ int main(int argc, char **argv) /* Rockbox speex streams are always assumed to be WB */ st = speex_decoder_init(&speex_wb_mode); - + /* Set the perceptual enhancement on (is default, but doesn't hurt) */ tmp = 1; speex_decoder_ctl(st, SPEEX_SET_ENH, &tmp); speex_decoder_ctl(st, SPEEX_GET_LOOKAHEAD, &lookahead); speex_decoder_ctl(st, SPEEX_GET_FRAME_SIZE, &frame_size); - + if ((fin = fopen(argv[1], "rb")) == NULL) { printf("Error: could not open input file\n"); return 1; @@ -74,8 +74,8 @@ int main(int argc, char **argv) fclose(fin); /* fill in wav header */ - strcpy(wavhdr, "RIFF"); - strcpy(wavhdr + 8, "WAVEfmt "); + strcpy((char *) wavhdr, "RIFF"); + strcpy((char *) wavhdr + 8, "WAVEfmt "); put_uint_le(16, wavhdr + 16); put_ushort_le(1, wavhdr + 20); /* PCM data */ put_ushort_le(1, wavhdr + 22); /* mono */ @@ -83,7 +83,7 @@ int main(int argc, char **argv) put_uint_le(16000*2, wavhdr + 28); /* chan*sr*bbs/8 */ put_ushort_le(2, wavhdr + 32); /* chan*bps/8 */ put_ushort_le(16, wavhdr + 34); /* bits per sample */ - strcpy(wavhdr + 36, "data"); + strcpy((char *) wavhdr + 36, "data"); fwrite(wavhdr, 1, 44, fout); /* write header */ /* make bit buffer use our own buffer */ speex_bits_set_bit_buffer(&bits, indata, insize); diff --git a/tools/rdf2binary.c b/tools/rdf2binary.c index df9cbd32d7..36c4f464bd 100644 --- a/tools/rdf2binary.c +++ b/tools/rdf2binary.c @@ -58,7 +58,7 @@ long reverse (long N) { } -int main() +int main(void) { FILE *in, *idx_out, *desc_out; struct word w; |