00:34:27  <bnoordhuis>creationix: good news, i can get libsmjs.a and the js shell to build in release and debug mode
00:35:10  <bnoordhuis>build and run, i should add :)
01:42:50  <piscisaureus_>bnoordhuis: gypified?
01:43:27  <bnoordhuis>piscisaureus_: yep
01:43:52  <bnoordhuis>you'll probably have to tweak it a little for windows
01:45:37  <creationix>cool, thanks
01:47:07  <piscisaureus_>cool
01:47:32  <piscisaureus_>bnoordhuis: your github account?
01:47:53  <bnoordhuis>piscisaureus_: yes
02:45:20  * bnoordhuisquit (Ping timeout: 272 seconds)
04:11:19  * piscisaureus_quit (Ping timeout: 244 seconds)
09:50:19  * creationixquit (*.net *.split)
09:55:48  * creationixjoined
12:23:36  * bnoordhuisjoined
14:47:06  * piscisaureus_joined
19:31:09  <piscisaureus_>bnoordhuis: when I build it it doesn't find the includes in mfbt
19:31:14  <bnoordhuis>piscisaureus_: mfbt is indirectly on the include path, there's a symlink in conf/common/
19:31:21  <bnoordhuis>*config/common
19:31:25  <piscisaureus_>bnoordhuis: meh
19:31:33  <piscisaureus_>bnoordhuis: git for windows does not support symlinks
19:31:56  <bnoordhuis>it's kind of annoying, smjs expects those paths...
19:32:14  <bnoordhuis>the other option is to duplicate them but that's also annoying
19:32:21  * isaacsjoined
19:32:34  <bnoordhuis>that isaacs guy is such a stalker
19:32:35  <piscisaureus_>bnoordhuis: in theory I could chop up vcbuild.bat and make the symlinks
19:32:40  <piscisaureus_>why?
19:32:58  <bnoordhuis>sneakily following us into #luvmonkey
19:33:03  <isaacs>bnoordhuis: i just saw there was a new channel in /whois bnoordhuis
19:33:08  <bnoordhuis>oh hah
19:33:09  <piscisaureus_>ghehe lol
19:33:27  <piscisaureus_>bnoordhuis: let's continue is #overthrowisaacs
19:34:13  <creationix>whois is a great way to find cool channels
19:34:35  <piscisaureus_>bnoordhuis: are you like 100% sure that there is no other way fix these paths?
19:34:50  <bnoordhuis>piscisaureus_: i don't think so
19:35:02  <bnoordhuis>unless msvc lets you define aliases for include paths
19:35:11  <creationix>fwiw, even "make install" in the official sm system is broken
19:35:15  <piscisaureus_>bnoordhuis: i mean, does it hardcode #include "config/windows/mfbt/attribute.h" ?
19:35:51  <bnoordhuis>piscisaureus_: no, but smjs does #include "mozilla/Foo.h" in a couple of places
19:35:59  <bnoordhuis>where mozilla/ is really the public/ directory
19:37:43  <bnoordhuis>piscisaureus_: i suppose i could rename public/ to mozilla/
19:37:53  <piscisaureus_>bnoordhuis: hold on a bit
19:38:01  * bnoordhuisholds on a bit
19:38:08  <piscisaureus_>bnoordhuis: why is there a "js" symlink in that folder btw?
19:38:15  <bnoordhuis>more or less the same reason
19:38:34  <bnoordhuis>mozilla's build system copies a number of header files around when it starts building
19:38:40  <piscisaureus_>ah, right
19:39:36  <piscisaureus_>bnoordhuis: config/common is an awkward name for that purpose. should be "alias" or something
19:40:39  <bnoordhuis>yeah... it was a good name when i started
19:40:50  <bnoordhuis>but the goals kind of shifted :)
19:41:55  <piscisaureus_>bnoordhuis: msvc has "include_alias" so I could try with that
19:43:52  <bnoordhuis>piscisaureus_: fetch and check 8cdc340
19:44:00  <bnoordhuis>i moved the files around
19:47:22  <piscisaureus_>bnoordhuis: does this not make your life more difficult when you have to merge with upstream again?
19:48:24  <bnoordhuis>piscisaureus_: yes, but my life is already a heap of difficulties, a little more won't hurt (much)
19:51:24  <piscisaureus_>bnoordhuis: shit, your vcbuild.bat replaced mine
19:51:28  <piscisaureus_>ANGER ANGER
19:51:55  <piscisaureus_>bnoordhuis: and it dropped gyp off my machine
19:52:59  <bnoordhuis>wut?
19:53:36  <piscisaureus_>bnoordhuis: I made symlink from build/gyp to my gyp installation
19:53:56  <bnoordhuis>my vcbuild.bat doesn't use build/gyp, it expects gyp.bat to be on the path
19:54:26  <piscisaureus_>bnoordhuis: but git reset --hard 8cdc340 made gyp follow the symlink(!) and recursively wipe it out
19:54:45  <piscisaureus_>hmm, maybe it is symlinks in general
19:54:53  <bnoordhuis>oh hah, your windows is so awesome
19:55:41  <bnoordhuis>piscisaureus_: btw, you might want to rebase, i flattened the file hierarchy
19:55:51  <bnoordhuis>now i'll stop tinkering
20:00:13  <piscisaureus_>bnoordhuis: https://github.com/martine/gyp
20:00:19  <piscisaureus_>finally a maintained github clone
20:04:27  <bnoordhuis>i maintain mine :(
20:16:58  <bnoordhuis>piscisaureus_: how's it going?
20:17:50  <piscisaureus_>bnoordhuis: stop touching it!!1
20:17:52  <piscisaureus_>bnoordhuis: good
20:27:21  <piscisaureus_>bnoordhuis: what should it build? static or so?
20:29:10  <bnoordhuis>piscisaureus_: static_library
20:29:17  <bnoordhuis>plus the shell
20:29:33  <piscisaureus_>bnoordhuis: ok - so no switches, just always static.
20:29:34  <piscisaureus_>good
20:43:21  <piscisaureus_>bnoordhuis: almost there
20:43:24  <piscisaureus_>bnoordhuis: but:
20:43:24  <piscisaureus_>js\src\frontend\FoldConstants.cpp(414): error C2440: 'return' : cannot convert
20:43:25  <piscisaureus_>from '_MEDIA_TYPE' to 'Truthiness' [D:\smjs\smjs.vcxproj]
20:44:47  <bnoordhuis>piscisaureus_: i suspect that's a conflict with windows system headers
20:45:00  <bnoordhuis>maybe define WIN32_MEAN_AND_LEAN somewhere?
20:45:20  <bnoordhuis>or whatever you do to stop windows from exporting and defining the complete universe
20:48:09  <piscisaureus_>bnoordhuis: there are ways
20:51:48  <piscisaureus_>bnoordhuis: the issue is basically that it does not include enough
21:16:59  <piscisaureus_>bnoordhuis: why are you not incliding js-confdefs.h?
21:17:29  <bnoordhuis>piscisaureus_: i'm working on that
21:17:44  <bnoordhuis>it's curious, i somehow don't need it when compiling standalone
21:17:47  <piscisaureus_>bnoordhuis: ok. this has to work for windows.
21:55:48  <piscisaureus_>bnoordhuis: got any further?
21:56:52  <bnoordhuis>piscisaureus_: meh, not really
21:57:13  <bnoordhuis>trying to bundle smjs with luvmonkey on os x but it doesn't compile yet
21:58:31  <piscisaureus_>bnoordhuis: what if I just force the inclusion of js-config.h and js-confdefs.h on all platforms?
21:59:07  <bnoordhuis>piscisaureus_: try it
21:59:36  <bnoordhuis>piscisaureus_: but there's some pretty system specific stuff in there, like HAVE_VA_LIST_AS_ARRAY
21:59:41  <piscisaureus_>bnoordhuis: or rather, only js-confdefs.h
21:59:47  <piscisaureus_>because that is what the makefile does
21:59:50  <piscisaureus_>_DEFINES_CFLAGS='-include $(DEPTH)/js-confdefs.h -DMOZILLA_CLIENT'
21:59:56  <bnoordhuis>yeah
22:00:16  <bnoordhuis>the stuff that js-config.h used to define is handled in the gyp file
22:00:43  <piscisaureus_>bnoordhuis: we can also put everything in the gyp file
22:00:55  <piscisaureus_>but the number of defines gets so long :-/
22:01:22  <bnoordhuis>yes
22:01:27  <bnoordhuis>i've toyed with the idea though :)
22:02:48  <bnoordhuis>deps/smjs/src/jsapi.cpp:386: error: cannot convert '__va_list_tag**' to '__va_list_tag (*)[1]' for argument '5' to 'JSBool TryArgumentFormatter(JSContext*, const char**, JSBool, jsval**, __va_list_tag (*)[1])'
22:02:55  <bnoordhuis>that error is the bane of my existence...
22:03:25  <bnoordhuis>the annoying part is that smjs builds perfectly okay standalone
22:05:01  * isaacsquit (Read error: Connection reset by peer)
22:05:36  * isaacsjoined
22:23:52  <piscisaureus_>1>d:\smjs\js\src\yarr/BumpPointerAllocator.h(134): warning C4291: 'void *WTF::BumpPointerPool::operator new(size_t,const WTF::PageAllocation &)' : no matching operator delete found; memory will not be freed if initialization throws an exception
22:24:10  <piscisaureus_>WTF indeed
22:42:37  <bnoordhuis>heh
22:47:03  <piscisaureus_>sigh
22:47:15  <piscisaureus_>ForcedIncludeFiles seems to be ignored by gyp
22:47:20  <piscisaureus_>although there is a code path for it, apparently
22:47:24  <piscisaureus_>in gyp itself
22:47:58  <bnoordhuis>fix it?
22:48:16  <bnoordhuis>that's the thing with bleeding edge software
22:48:32  <bnoordhuis>it breaks often and no one is going to fix it for you...
22:51:06  <bnoordhuis>woo! i got luvmonkey + smjs to compile
22:51:08  <bnoordhuis>go me!
22:51:34  <piscisaureus_>ik jubel
22:51:39  <bnoordhuis>it even works, i can talk to test-tcp.js
22:51:44  <bnoordhuis>nu jij nog, bertje
22:59:34  <bnoordhuis>piscisaureus_: https://github.com/bnoordhuis/smjs/commits/master
23:08:57  <piscisaureus_>yeah
23:09:09  <piscisaureus_>unfortunately I end up porting smjs itself to windows
23:09:11  <piscisaureus_>:-(
23:09:19  <bnoordhuis>of course, now that it compiles on os x, it no longer compiles on linux
23:10:05  <piscisaureus_>bnoordhuis: so you are dropping confdefs.h?
23:10:10  <bnoordhuis>yes
23:10:14  <piscisaureus_>meh
23:10:18  <piscisaureus_>I am not :-)
23:10:25  <piscisaureus_>this means we are forked
23:10:28  <bnoordhuis>haha
23:10:32  <bnoordhuis>good luck with that!
23:10:44  <bnoordhuis>turns out we only need a couple of defines
23:11:00  <piscisaureus_>bnoordhuis: but don't you think that it might negatively impact performance
23:11:07  <piscisaureus_>it'll do something like
23:11:15  <piscisaureus_>#ifdef HAVE_NICE_FEATURE
23:11:16  <piscisaureus_>fast()
23:11:17  <piscisaureus_>#else
23:11:20  <piscisaureus_>slow()
23:11:21  <piscisaureus_>#endif
23:11:31  <bnoordhuis>maybe
23:11:57  <bnoordhuis>let's start with getting it to compile and not crash on linux, os x and windows
23:12:01  <bnoordhuis>on ia32 and x64
23:14:44  <piscisaureus_>#if WTF_OS_WINDOWS
23:14:44  <piscisaureus_>#include <malloc.h>
23:14:44  <piscisaureus_>#include <windows.h>
23:14:44  <piscisaureus_>#endif
23:21:31  <piscisaureus_>bnoordhuis: we should probably have a posix.gypi instead of a forced include file.
23:22:37  <bnoordhuis>i can live with that
23:22:45  <piscisaureus_>bnoordhuis: but we can do that later
23:22:57  <piscisaureus_>I will add all the defines I need to the gyp file
23:23:02  <piscisaureus_>but I feel this is more of the gyp way
23:39:13  <piscisaureus_>bnoordhuis: es geht
23:39:23  <bnoordhuis>ja?
23:39:31  <piscisaureus_>jep
23:39:37  <piscisaureus_>now to polish my commits
23:39:47  <piscisaureus_>and undo unnecessary stuff
23:45:31  <piscisaureus_>yep
23:45:31  <piscisaureus_>D:\smjs>debug\shell
23:45:31  <piscisaureus_>js> console.log('hi');
23:45:31  <piscisaureus_>typein:1: ReferenceError: console is not defined
23:45:31  <piscisaureus_>js>