{"action":"created","issue":{"url":"https://api.github.com/repos/fastbuild/fastbuild/issues/102","repository_url":"https://api.github.com/repos/fastbuild/fastbuild","labels_url":"https://api.github.com/repos/fastbuild/fastbuild/issues/102/labels{/name}","comments_url":"https://api.github.com/repos/fastbuild/fastbuild/issues/102/comments","events_url":"https://api.github.com/repos/fastbuild/fastbuild/issues/102/events","html_url":"https://github.com/fastbuild/fastbuild/issues/102","id":158898392,"number":102,"title":"Dynamic environment variable without reparsing? (DLL Hot Reload)","user":{"login":"beepdavid","id":1021638,"avatar_url":"https://avatars.githubusercontent.com/u/1021638?v=3","gravatar_id":"","url":"https://api.github.com/users/beepdavid","html_url":"https://github.com/beepdavid","followers_url":"https://api.github.com/users/beepdavid/followers","following_url":"https://api.github.com/users/beepdavid/following{/other_user}","gists_url":"https://api.github.com/users/beepdavid/gists{/gist_id}","starred_url":"https://api.github.com/users/beepdavid/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/beepdavid/subscriptions","organizations_url":"https://api.github.com/users/beepdavid/orgs","repos_url":"https://api.github.com/users/beepdavid/repos","events_url":"https://api.github.com/users/beepdavid/events{/privacy}","received_events_url":"https://api.github.com/users/beepdavid/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/fastbuild/fastbuild/labels/Question","name":"Question","color":"159818"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-06-07T11:18:41Z","updated_at":"2016-06-10T10:12:29Z","closed_at":"2016-06-10T10:12:29Z","body":"Hi, I'm currently evaluating fastbuild to replace our game engine build system. I've got everything setup and building ok but for one area.\r\n\r\nWe support runtime compiling of a game dll module which can be hot loaded while the game is being debugged in visual studio. To do this I need to be able to change the name of the game.pdb file on each dll compilation as visual studio will lock the current one.\r\n\r\nI've got this working using and environment import to randomise the name, but doing this causes a reparsing of the .bff to occur and all dependencies to also be rebuilt. I thought this would be ok with a special dll declaration with dependencies removed for the rtc, but it also triggers a full game rebuild when you next come to build and run through visual studio (which is not going to fly)\r\n\r\nI can't  see a solution to this at the moment other than the extra .bff dependency work mentioned in #55. Any ideas?"},"comment":{"url":"https://api.github.com/repos/fastbuild/fastbuild/issues/comments/225145686","html_url":"https://github.com/fastbuild/fastbuild/issues/102#issuecomment-225145686","issue_url":"https://api.github.com/repos/fastbuild/fastbuild/issues/102","id":225145686,"user":{"login":"beepdavid","id":1021638,"avatar_url":"https://avatars.githubusercontent.com/u/1021638?v=3","gravatar_id":"","url":"https://api.github.com/users/beepdavid","html_url":"https://github.com/beepdavid","followers_url":"https://api.github.com/users/beepdavid/followers","following_url":"https://api.github.com/users/beepdavid/following{/other_user}","gists_url":"https://api.github.com/users/beepdavid/gists{/gist_id}","starred_url":"https://api.github.com/users/beepdavid/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/beepdavid/subscriptions","organizations_url":"https://api.github.com/users/beepdavid/orgs","repos_url":"https://api.github.com/users/beepdavid/repos","events_url":"https://api.github.com/users/beepdavid/events{/privacy}","received_events_url":"https://api.github.com/users/beepdavid/received_events","type":"User","site_admin":false},"created_at":"2016-06-10T10:12:29Z","updated_at":"2016-06-10T10:12:29Z","body":"Hi, thankyou for the detailed reply :) \r\n\r\nI initially thought the pdb location was hardcoded into the dll, but I can see on msdn now that if it missing at this location it will next search in the same folder as the copied dll, so that can work out great!\r\n\r\nThe copied dll's pdb will still be locked by vs if you are in a debugging season, so I will have to randomise the folder location, but as this is all done game side and non-intrusively to the .bff that is fine.\r\n\r\nOur initial use cast for fastbuild was to have a single build setup that can be used for inside visual studio and for the runtime compile, but i'm really impressed by how much snappier building in vs feels as well. Looking forward to some extra unity build features for git users down the road.\r\n\r\nNote to anyone else trying out runtime compiling with fast build: the LIBPATH set through vcvarsall.bat is subtly different to what is set from running through visual studio directly. If you have a batch file to call the rtc from inside vs it will be different to what vs sets for NMake use. To get around this we launch vs with the /useenv switch to prevent a rebuild from the path change"}}
{"actor":{"display_login":"beepdavid"}}