Earlier quoted context omitted.
Doesn't support windows. You're better off with bazel or GN.
How do you in 2017 come up with a build system that doesn't even run on Windows.
Buck – A build system developed and used by Facebook
101–110 of 131 posts
Re: Buck – A build system developed and used by Facebook
#102Earlier quoted context omitted.
It's an unpoular opinion, but I feel that React et al are just a way for Facebook to gain developer mindshare. Likewise how Angular is a play for Google to gain developer mindshare. The big guys want developers locked into their ecosystems. It's a play out of Microsoft's book. When you realize that none of these frameworks are even an improvement over jQuery, it becomes clear what the true motivation is.
Well, IMO, React is much better than building the equivalent in jQuery.
For example, here is a SQLite playground that I built with a friend https://sql.glitch.me/. The entire frontend is only 100 lines of Javascript thanks to jQuery. I'd love to see what the React implementation looks like.
Re: Buck – A build system developed and used by Facebook
#103Earlier quoted context omitted.
GNU Make works intuitively in pattern rules, but differently for normal rules? Uh oh.
It even has builtin implicit rules. Enabled by default. Checking for the existence of files that are not found in any new project for maybe ten or twenty years (such as RCS and SCSS version control files). On. Every. Single. Run. Yup.
Often, I write a little test program in C or C++. I name the file "foo.c". Then, to build it I simply type `make foo`.
Sure the rules may be a bit stale, but there isn't much software i use today that I could use in a near identical manner 40 years ago. Make has truly stood the test of time.
Re: Buck – A build system developed and used by Facebook
#104Earlier quoted context omitted.
When Buck was created (my team created it!) there wasn't anything that supported what Facebook needed in a build tool. There still really isn't as all the Blaze work-a-likes are focusing on various different needs. I would argue Buck actually helps to solve what you are concerned about. At Facebook, everything builds with Buck (and Google with Bazel I hear)...which means you learn it once and you know it for your Obj…
> At Facebook, everything builds with Buck Looking at https://github.com/facebook you seem to be using all sorts of build tools...
Facebook uses fbshipit (https://github.com/facebook/fbshipit/) to take slices of their monorepo and publish them to GitHub.
Re: Buck – A build system developed and used by Facebook
#105Re: Buck – A build system developed and used by Facebook
#106Earlier quoted context omitted.
When Buck was created (my team created it!) there wasn't anything that supported what Facebook needed in a build tool. There still really isn't as all the Blaze work-a-likes are focusing on various different needs. I would argue Buck actually helps to solve what you are concerned about. At Facebook, everything builds with Buck (and Google with Bazel I hear)...which means you learn it once and you know it for your Obj…
Gradle?
Re: Buck – A build system developed and used by Facebook
#107Buck is a great tool but doesn't work on windows, where bazel is now starting to support. So for crossplatform builds, either GN or bazel.
Re: Buck – A build system developed and used by Facebook
#108Is there a watch command to detect file change and kick off the build steps?
Buck has a daemon that does it automatically. Often when you go to build it takes 0 seconds because the daemon has already done it before you get to it: https://buckbuild.com/command/buckd.html Note the daemon is automatically started when you `buck build`. (disclosure: my team created Buck when I was at FB)
Re: Buck – A build system developed and used by Facebook
#109Earlier quoted context omitted.
Doesn't support windows. You're better off with bazel or GN.
What about it doesn't support Windows? Not disagreeing since I haven't used it much and I'm on Linux, but they have "Quick Start" instructions for Windows. https://buckbuild.com/setup/getting_started.html