diff --git a/binutils-2.24-bfd.patch b/binutils-2.24-bfd.patch deleted file mode 100644 index 2674a55..0000000 --- a/binutils-2.24-bfd.patch +++ /dev/null @@ -1,177 +0,0 @@ -commit 27b829ee701e29804216b3803fbaeb629be27491 -Author: Nick Clifton -Date: Wed Jan 29 13:46:39 2014 +0000 - - Following up on Tom's suggestion I am checking in a patch to replace the various - bfd_xxx_set macros with static inline functions, so that we can avoid compile time - warnings about comma expressions with unused values. - - * bfd-in.h (bfd_set_section_vma): Delete. - (bfd_set_section_alignment): Delete. - (bfd_set_section_userdata): Delete. - (bfd_set_cacheable): Delete. - * bfd.c (bfd_set_cacheable): New static inline function. - * section.c (bfd_set_section_userdata): Likewise. - (bfd_set_section_vma): Likewise. - (bfd_set_section_alignment): Likewise. - * bfd-in2.h: Regenerate. - -diff --git a/bfd/bfd-in.h b/bfd/bfd-in.h -index 3afd71b..c7c5a7d 100644 ---- a/bfd/bfd-in.h -+++ b/bfd/bfd-in.h -@@ -292,9 +292,6 @@ typedef struct bfd_section *sec_ptr; - - #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0) - --#define bfd_set_section_vma(bfd, ptr, val) (((ptr)->vma = (ptr)->lma = (val)), ((ptr)->user_set_vma = TRUE), TRUE) --#define bfd_set_section_alignment(bfd, ptr, val) (((ptr)->alignment_power = (val)),TRUE) --#define bfd_set_section_userdata(bfd, ptr, val) (((ptr)->userdata = (val)),TRUE) - /* Find the address one past the end of SEC. */ - #define bfd_get_section_limit(bfd, sec) \ - (((bfd)->direction != write_direction && (sec)->rawsize != 0 \ -@@ -517,8 +514,6 @@ extern void warn_deprecated (const char *, const char *, int, const char *); - - #define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char) - --#define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = bool), TRUE) -- - extern bfd_boolean bfd_cache_close - (bfd *abfd); - /* NB: This declaration should match the autogenerated one in libbfd.h. */ -diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h -index 71996db..b5aeb40 100644 ---- a/bfd/bfd-in2.h -+++ b/bfd/bfd-in2.h -@@ -299,9 +299,6 @@ typedef struct bfd_section *sec_ptr; - - #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0) - --#define bfd_set_section_vma(bfd, ptr, val) (((ptr)->vma = (ptr)->lma = (val)), ((ptr)->user_set_vma = TRUE), TRUE) --#define bfd_set_section_alignment(bfd, ptr, val) (((ptr)->alignment_power = (val)),TRUE) --#define bfd_set_section_userdata(bfd, ptr, val) (((ptr)->userdata = (val)),TRUE) - /* Find the address one past the end of SEC. */ - #define bfd_get_section_limit(bfd, sec) \ - (((bfd)->direction != write_direction && (sec)->rawsize != 0 \ -@@ -524,8 +521,6 @@ extern void warn_deprecated (const char *, const char *, int, const char *); - - #define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char) - --#define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = bool), TRUE) -- - extern bfd_boolean bfd_cache_close - (bfd *abfd); - /* NB: This declaration should match the autogenerated one in libbfd.h. */ -@@ -1029,7 +1024,7 @@ bfd *bfd_openr (const char *filename, const char *target); - - bfd *bfd_fdopenr (const char *filename, const char *target, int fd); - --bfd *bfd_openstreamr (const char *, const char *, void *); -+bfd *bfd_openstreamr (const char * filename, const char * target, void * stream); - - bfd *bfd_openr_iovec (const char *filename, const char *target, - void *(*open_func) (struct bfd *nbfd, -@@ -1596,6 +1591,32 @@ struct relax_table { - int size; - }; - -+/* Note: the following are provided as inline functions rather than macros -+ because not all callers use the return value. A macro implementation -+ would use a comma expression, eg: "((ptr)->foo = val, TRUE)" and some -+ compilers will complain about comma expressions that have no effect. */ -+static inline bfd_boolean -+bfd_set_section_userdata (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, void * val) -+{ -+ ptr->userdata = val; -+ return TRUE; -+} -+ -+static inline bfd_boolean -+bfd_set_section_vma (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, bfd_vma val) -+{ -+ ptr->vma = ptr->lma = val; -+ ptr->user_set_vma = TRUE; -+ return TRUE; -+} -+ -+static inline bfd_boolean -+bfd_set_section_alignment (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, unsigned int val) -+{ -+ ptr->alignment_power = val; -+ return TRUE; -+} -+ - /* These sections are global, and are managed by BFD. The application - and target back end are not permitted to change the values in - these sections. */ -@@ -6415,6 +6436,14 @@ struct bfd - unsigned int selective_search : 1; - }; - -+/* See note beside bfd_set_section_userdata. */ -+static inline bfd_boolean -+bfd_set_cacheable (bfd * abfd, bfd_boolean val) -+{ -+ abfd->cacheable = val; -+ return TRUE; -+} -+ - typedef enum bfd_error - { - bfd_error_no_error = 0, -diff --git a/bfd/bfd.c b/bfd/bfd.c -index 8d0580c..2d174f3 100644 ---- a/bfd/bfd.c -+++ b/bfd/bfd.c -@@ -311,6 +311,14 @@ CODE_FRAGMENT - . unsigned int selective_search : 1; - .}; - . -+.{* See note beside bfd_set_section_userdata. *} -+.static inline bfd_boolean -+.bfd_set_cacheable (bfd * abfd, bfd_boolean val) -+.{ -+. abfd->cacheable = val; -+. return TRUE; -+.} -+. - */ - - #include "sysdep.h" -diff --git a/bfd/section.c b/bfd/section.c -index fb19d8c..a661228 100644 ---- a/bfd/section.c -+++ b/bfd/section.c -@@ -542,6 +542,32 @@ CODE_FRAGMENT - . int size; - .}; - . -+.{* Note: the following are provided as inline functions rather than macros -+. because not all callers use the return value. A macro implementation -+. would use a comma expression, eg: "((ptr)->foo = val, TRUE)" and some -+. compilers will complain about comma expressions that have no effect. *} -+.static inline bfd_boolean -+.bfd_set_section_userdata (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, void * val) -+.{ -+. ptr->userdata = val; -+. return TRUE; -+.} -+. -+.static inline bfd_boolean -+.bfd_set_section_vma (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, bfd_vma val) -+.{ -+. ptr->vma = ptr->lma = val; -+. ptr->user_set_vma = TRUE; -+. return TRUE; -+.} -+. -+.static inline bfd_boolean -+.bfd_set_section_alignment (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, unsigned int val) -+.{ -+. ptr->alignment_power = val; -+. return TRUE; -+.} -+. - .{* These sections are global, and are managed by BFD. The application - . and target back end are not permitted to change the values in - . these sections. *} diff --git a/sources b/sources index dd58d4d..0e1e782 100644 --- a/sources +++ b/sources @@ -1 +1,3 @@ e0a1df72747c481cdedbbd328b0fceae sdcc-src-3.5.0.tar.bz2 +2d00ae5e4c7431f93945d0be232fdab5 binutils-2.25-bfd.patch +40ac3e0ed7033016dc83656e638bdfa7 sdcc-3.5.0-libiberty.patch