Skip to contentSkip to conversation

conditionally compile libfdt/*.c in libfdt/Makefile

PATCH New Kumar Gala 3 participants 5 messages Nov 21, 2007

lore
Share & tools
lore

Kumar Gala

author
#0 lore raw

PATCH 1/1 conditionally compile libfdt/*.c in libfdt/Makefile

Modify libfdt/Makefile to conditionally compile the *.c files based on the board config.

---

This is against u-boot-testing

 libfdt/Makefile       |    2 +-
 libfdt/fdt.c          |    5 -----
 libfdt/fdt_ro.c       |    5 -----
 libfdt/fdt_rw.c       |    5 -----
 libfdt/fdt_strerror.c |    5 -----
 libfdt/fdt_sw.c       |    5 -----
 libfdt/fdt_wip.c      |    5 -----
 7 files changed, 1 insertions(+), 31 deletions(-)
libfdt/Makefile +1 -1
index 126fa2c..d166cce 100644
@@ -27,7 +27,7 @@ LIB	= $(obj)libfdt.a
 
 SOBJS	=
 
-COBJS-y += fdt.o fdt_ro.o fdt_rw.o fdt_strerror.o fdt_sw.o fdt_wip.o
+COBJS-$(CONFIG_OF_LIBFDT) += fdt.o fdt_ro.o fdt_rw.o fdt_strerror.o fdt_sw.o fdt_wip.o
 
 COBJS	:= $(COBJS-y)
 SRCS 	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)
libfdt/fdt.c +0 -5
index 1ee67ad..212b838 100644
@@ -16,9 +16,6 @@
  * License along with this library; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  */
-#include "config.h"
-#if CONFIG_OF_LIBFDT
-
 #include "libfdt_env.h"
 
 #include <fdt.h>
@@ -86,5 +83,3 @@ int fdt_move(const void *fdt, void *buf, int bufsize)
 	memmove(buf, fdt, fdt_totalsize(fdt));
 	return 0;
 }
-
-#endif /* CONFIG_OF_LIBFDT */
libfdt/fdt_ro.c +0 -5
index 46d525d..bc1a5f4 100644
@@ -16,9 +16,6 @@
  * License along with this library; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  */
-#include "config.h"
-#if CONFIG_OF_LIBFDT
-
 #include "libfdt_env.h"
 
 #include <fdt.h>
@@ -532,5 +529,3 @@ int fdt_get_reservemap(void *fdt, int n, struct fdt_reserve_entry *re)
 	}
 	return 0;
 }
-
-#endif /* CONFIG_OF_LIBFDT */
libfdt/fdt_rw.c +0 -5
index 55fcc41..852b6e6 100644
@@ -16,9 +16,6 @@
  * License along with this library; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  */
-#include "config.h"
-#if CONFIG_OF_LIBFDT
-
 #include "libfdt_env.h"
 
 #include <fdt.h>
@@ -320,5 +317,3 @@ int fdt_pack(void *fdt)
 	fdt_set_header(fdt, totalsize, _blob_data_size(fdt));
 	return 0;
 }
-
-#endif /* CONFIG_OF_LIBFDT */
libfdt/fdt_strerror.c +0 -5
index b49c952..7f231ce 100644
@@ -16,9 +16,6 @@
  * License along with this library; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  */
-#include "config.h"
-#if CONFIG_OF_LIBFDT
-
 #include "libfdt_env.h"
 
 #include <fdt.h>
@@ -65,5 +62,3 @@ const char *fdt_strerror(int errval)
 
 	return "<unknown error>";
 }
-
-#endif /* CONFIG_OF_LIBFDT */
libfdt/fdt_sw.c +0 -5
index c7eea8f..672f4dd 100644
@@ -16,9 +16,6 @@
  * License along with this library; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  */
-#include "config.h"
-#if CONFIG_OF_LIBFDT
-
 #include "libfdt_env.h"
 
 #include <fdt.h>
@@ -227,5 +224,3 @@ int fdt_finish(void *fdt)
 	fdt_set_header(fdt, magic, FDT_MAGIC);
 	return 0;
 }
-
-#endif /* CONFIG_OF_LIBFDT */
libfdt/fdt_wip.c +0 -5
index 2d39aab..2d2ed37 100644
@@ -16,9 +16,6 @@
  * License along with this library; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
  */
-#include "config.h"
-#if CONFIG_OF_LIBFDT
-
 #include "libfdt_env.h"
 
 #include <fdt.h>
@@ -138,5 +135,3 @@ int fdt_replace_reservemap_entry(void *fdt, int n, uint64_t addr, uint64_t size)
 
 	return 0;
 }
-
-#endif /* CONFIG_OF_LIBFDT */
Signature · 1 line
1.5.3.4
#1 lore raw

PATCH 1/1 conditionally compile libfdt/*.c in libfdt/Makefile

Quoted 8 lines · Kumar Gala

Modify libfdt/Makefile to conditionally compile the *.c files based on the board config.

---

This is against u-boot-testing

Quoted 8 lines
 libfdt/Makefile       |    2 +-
 libfdt/fdt.c          |    5 -----
 libfdt/fdt_ro.c       |    5 -----
 libfdt/fdt_rw.c       |    5 -----
 libfdt/fdt_strerror.c |    5 -----
 libfdt/fdt_sw.c       |    5 -----
 libfdt/fdt_wip.c      |    5 -----
 7 files changed, 1 insertions(+), 31 deletions(-)

Joy!

It looks like the side effect of Grant's improvement just removed all of the #ifdefs I hacked into the libfdt primary .c files.

Side note: I was playing last night with the "what if" of deleting (git rm libfdt/*.[ch]) all the "standard" libfdt code, then re-importing it.
Effectively rebaselining in a kerchunk rather than a patch-forward
that Kumar has been doing.

The advantages would be:
* It would be clearer that u-boot/libfdt version 2007-11-X == dtc/libfdt version 2007-11-X and then we could more easily track changes forward.
* The removal patch is less than 40K (email list limit), but the re-import patch is around 70K (IIRC) so that doesn't help.

My current conclusion is that it isn't worth the effort.
* The re-import still has a size vs. email list problem
* Since some libfdt routines changed, other (client) routines must be changed at the same time as the re-import (Kumar's patch rolls libfdt forward _and_ fixes the handful of calls, so it doesn't have a "broken spot" in between patches).

Thanks to all!
gvb

author
#2 lore raw

PATCH 1/1 conditionally compile libfdt/*.c in libfdt/Makefile

Quoted 32 lines · Jerry Van Baren
Quoted 5 lines · Kumar Gala

Modify libfdt/Makefile to conditionally compile the *.c files based on the board config.

---
This is against u-boot-testing

Quoted 8 lines
libfdt/Makefile       |    2 +-
libfdt/fdt.c          |    5 -----
libfdt/fdt_ro.c       |    5 -----
libfdt/fdt_rw.c       |    5 -----
libfdt/fdt_strerror.c |    5 -----
libfdt/fdt_sw.c       |    5 -----
libfdt/fdt_wip.c      |    5 -----
7 files changed, 1 insertions(+), 31 deletions(-)

Joy!

It looks like the side effect of Grant's improvement just removed all of the #ifdefs I hacked into the libfdt primary .c files.

Side note: I was playing last night with the "what if" of deleting (git rm libfdt/*.[ch]) all the "standard" libfdt code, then re- importing it. Effectively rebaselining in a kerchunk rather than a patch-forward that Kumar has been doing.

The advantages would be:
* It would be clearer that u-boot/libfdt version 2007-11-X == dtc/ libfdt version 2007-11-X and then we could more easily track changes forward.
* The removal patch is less than 40K (email list limit), but the re- import patch is around 70K (IIRC) so that doesn't help.

Quoted 6 lines

My current conclusion is that it isn't worth the effort.
* The re-import still has a size vs. email list problem
* Since some libfdt routines changed, other (client) routines must be changed at the same time as the re-import (Kumar's patch rolls libfdt forward _and_ fixes the handful of calls, so it doesn't have a "broken spot" in between patches).

I've just created a libfdt_testing branch that is based on this patch
+ u-boot-testing.

If you do a diff between dtc/libfdt and u-boot/libfdt we now see no differences.

- k

#3 lore raw

PATCH 1/1 conditionally compile libfdt/*.c in libfdt/Makefile

Quoted 2 lines · Kumar Gala

I've just created a libfdt_testing branch that is based on this patch
+ u-boot-testing.

Sweet.

Quoted 4 lines

If you do a diff between dtc/libfdt and u-boot/libfdt we now see no differences.

- k

Double sweet. But does it still work? :-)

jdl

#4 lore raw

PATCH 1/1 conditionally compile libfdt/*.c in libfdt/Makefile

In reply to Jerry Van Baren
Quoted 4 lines · Jerry Van Baren

Joy!

It looks like the side effect of Grant's improvement just removed all of the #ifdefs I hacked into the libfdt primary .c files.

Curious, that, eh?

Quoted 6 lines

My current conclusion is that it isn't worth the effort.
* The re-import still has a size vs. email list problem
* Since some libfdt routines changed, other (client) routines must be changed at the same time as the re-import (Kumar's patch rolls libfdt forward _and_ fixes the handful of calls, so it doesn't have a "broken spot" in between patches).

In any event, just post patches, broken wherever, and if needed for atomicity reason, they can be pulled from a repo with one git command later.

Well, that's what seems reasonable to me anyway.

jdl