00:04.43 | macsforme | tupone, yes, it makes perfect sense now, thanks |
00:14.27 | macsforme | "<JeffM> he didn't want to learn a new scripting langauge....." actually I didn't know Lua either, but Cmake has a proprietary syntax that is only good for Cmake, whereas getting familiar with Lua can help us with other things we've talked about doing... but that was only one consideration |
00:17.07 | macsforme | I've used Cmake before, and I read up on some of the tools out there... the impression I got was that premake is cleaner and more elegant on the whole, even though it's less mature |
00:19.32 | macsforme | brlcad, thanks... makes sense, especially when people still ran servers on non-mainstream OSes... it looks like you can just tell premake "make this a shared library" and it works (at least on the platforms I've tried so far) |
00:29.40 | JeffM | does cmake have features that premake does not? |
00:30.10 | JeffM | and vice versa? |
00:35.42 | macsforme | I'm not sure if I could answer that in a sentence, even if my knowledge was comprehensive enough :) |
00:36.38 | macsforme | the things premake doesn't seem to have currently that we care about are 1) better support for an "install" action, 2) system library detection, and 3) better stability/wider dissemination |
00:36.58 | macsforme | cmake seems likely to have #3 |
00:38.56 | TD-Linux | no pkg-config support? |
00:42.08 | *** join/#bzflag disco-_ (~disco@unaffiliated/disco-) |
00:42.29 | blast007 | TD-Linux: referring to what? |
00:42.38 | TD-Linux | premake |
00:42.51 | TD-Linux | jumps into a build system bikeshed because that's where the fun is at |
00:54.32 | macsforme | after a quick look, Cmake appears to be similar to premake as far as an "install" action, in that you use "make" to compile but the installation is a Cmake action, not a make action... so its saving grace is that it's more likely to be available on a linux packaging system |
01:01.38 | macsforme | Cmake appears to have decent support for system library detection (there's a find_package() function), although less flexible than what autotools has... on the other hand, premake has some of that too (an os.findlib() function, and possibly more), and you can write some of your own (like trepan did IIRC in 2.99) |
01:03.31 | macsforme | perhaps the Cmake configuration is intended to always be run on the destination system, unlike premake |
01:05.41 | macsforme | as far as project filters in visual studio, I'm having a hard time seeing what I am supposed to try to emulate |
01:07.24 | macsforme | most of the projects have no filtering at all (just all the files together), while some have "Headers" and "Source", some have just "Headers", etc... there's no consistency at all |
01:07.52 | macsforme | oh, and one project has manual topical filtering of source files |
01:09.36 | macsforme | so what should the short-term goal be? automatic filtering into "Headers" and "Source?" what about projects that just have one or two files? |
01:09.59 | blast007 | bzflag, bzfs, and common should have filtering in the actual repo. your fork probably just has bzflag. |
01:11.00 | blast007 | how does premake handle files we don't build on a certain platform? |
01:11.52 | blast007 | sorry, I guess bzfs was the one that had filters originally. |
01:12.09 | blast007 | and seems to be the most organized |
01:13.14 | macsforme | yes |
01:13.38 | macsforme | premake filters some source files based on the target platform |
01:14.07 | macsforme | here's a good example: https://github.com/macsforme/bzflag/blob/premake/src/platform/premake5.lua |
01:15.34 | blast007 | had not realized there were multiple lua files in there |
01:19.47 | macsforme | apparently there is also support for including a source file in the IDE but excluding it from being compiled, if we really need that |
02:29.39 | *** join/#bzflag Zehra (~Zehra@unaffiliated/zehra) |
03:08.07 | JeffM | macsforme:that has been done before, like to include files for another platform to make editing easier, but not to build them |
03:08.17 | JeffM | So it may be viable |
04:56.33 | *** join/#bzflag a_meteorite (~a_meteori@unaffiliated/ameteorite/x-000000001) |
04:59.57 | *** join/#bzflag Shuist (~Shuist@ppp203-122-213-220.static.internode.on.net) |
05:05.00 | *** join/#bzflag a_meteor_ (~a_meteori@unaffiliated/ameteorite/x-000000001) |
07:21.24 | *** join/#bzflag a_meteorite (~a_meteori@unaffiliated/ameteorite/x-000000001) |
07:42.48 | *** join/#bzflag a_meteorite (~a_meteori@unaffiliated/ameteorite/x-000000001) |
09:55.51 | *** join/#bzflag leny (~zuii@BC0663EF.catv.pool.telekom.hu) |
12:44.24 | *** join/#bzflag nadir (uid134094@gateway/web/irccloud.com/x-bvyzjcmsblsnjsap) |
14:22.37 | *** join/#bzflag [dmp] (~dennis@unaffiliated/dmp/x-546784) |
15:45.35 | *** join/#bzflag [dmp] (~dennis@unaffiliated/dmp/x-546784) |
15:51.56 | *** join/#bzflag [dmp] (~dennis@unaffiliated/dmp/x-546784) |
16:21.40 | JeffM | macsforme: I agree the current projects are not consisenent in filters, we lost some of the filter data I added long ago. I'd like to make it be consistent. |
16:21.56 | JeffM | at the very least headers and sources filters would be good |
16:22.31 | JeffM | then maybe some grouping by functionality for specific known files. |
16:23.36 | JeffM | and resources and stuf f in a res filter |
16:25.20 | JeffM | this is how a default win32 app looks in VC2015 https://usercontent.irccloud-cdn.com/file/3B8J8Oyc/ |
16:26.26 | JeffM | it applies that formating to every proejct, notice the lib I added got the same formatin, https://usercontent.irccloud-cdn.com/file/XvJ3uI8o/ |
16:26.40 | JeffM | that'd be an excellent starting point for premake to emulate. |
16:27.20 | JeffM | well any build system really |
16:27.33 | JeffM | even the current static proejcts |
17:29.31 | *** join/#bzflag a_meteorite (~a_meteori@unaffiliated/ameteorite/x-000000001) |
17:41.55 | kierra | ~blast007++ |
19:44.25 | JeffM | dunno why your builds took so long macsforme I get fullbuild in under a min : ) https://usercontent.irccloud-cdn.com/file/91YkMrBs/ |
19:47.25 | *** join/#bzflag BZnotify (~BZnotify@192.30.252.40) |
19:47.26 | BZnotify | [13bzflag] 15JeffM2501 opened pull request #68: Update VC14 projects with reasonable default filters (folders) (062.4...062.4_MSVC_Filters) 02https://git.io/vDYVE |
19:47.26 | *** part/#bzflag BZnotify (~BZnotify@192.30.252.40) |
19:48.19 | JeffM | that should make it much more common across all the projects. |
19:56.38 | *** join/#bzflag nadir (uid134094@gateway/web/irccloud.com/x-kwypzxjhwnhkqwme) |
20:35.47 | *** join/#bzflag Zehra (~Zehra@unaffiliated/zehra) |