On Aug 14, 2017 2:59 PM, "Mats Wichmann" <[email protected]> wrote:
On 08/11/2017 12:26 PM, Nash, George wrote: > In my experience all build systems have tricky little problems. It is typically better to stick with the build system that you have chosen unless there is a really compelling reason to switch. The switching cost is high and you typically run into a new set of issues in the build system you change to. > > From: [email protected] [mailto: [email protected]] On Behalf Of Gregg Reynolds > Sent: Thursday, August 10, 2017 4:47 PM > To: [email protected] > Subject: [dev] build sys > > just discovered bazel https://bazel.build > > looks to beat scons by orders of magnitudinosity. maybe switching makes more sense than trying to fix the current bld arrangements? Some of the build tools have support tooling that helps detect and build up the actual control files, whatever you end up calling them. But still a conversion is going to be a pain - there are 20k lines of scons scripts now: $ findallscons | xargs wc 59 202 2092 arduino.scons 90 245 3283 bridging/common/SConscript ... 100 237 3392 service/simulator/SConscript 107 356 4303 service/third_party_libs.scons 20200 56743 732347 total good grief! is that is not a Bad Sign I dunno what is. no matter how you slice it, that's going to be a hefty conversion. someone would have to make a _very_ compelling case. I'm also agreeing with George: all of these systems are "smart" and work great if what you're doing fits cleanly onto the model, and a pain when it doesn't (a good chunk of the scons cruft is working around things; also a lot of the workarounds aren't needed and several of us are trying to hack them out, no arguing that the maintenance is being a pain and there's no person that's paid specifically to work on the build system). fwiw i've started messing around with bazel for iotivity. i'm liking it in principle, but there is definitely a learning curve. easy to get the simple stuff going. now i'm working on the connectivity srcs. not so easy. but my take is that the difficulty exposes the badness of the code structure. implementing a different build system forces a rethink of code organization, which is at least a useful exercise.
_______________________________________________ iotivity-dev mailing list [email protected] https://lists.iotivity.org/mailman/listinfo/iotivity-dev
