Hey Joel, Could you guys post some examples of how to use VPC to add files to projects so that they work across Windows/Mac/Linux? Also, why are the Linux Makefiles so big? Why not just use a simple Makefile for Linux/Mac that uses more implicit rules, perhaps something like this: LIBS := tier1.a tier2.a ...CLI_OBJS := hl2mp_player.o ...$(CLI_OBJS): CPPFLAGS += -DSOME_CLIENT_FLAGSclien.so($(CLI_OBJS)): $(CLI_OBJS) $(LIBS)VPATH += src/game/client src/game/server src/game/shared .... This could eliminate an Xcode dependency (Xcode's build format/schemas will change faster than you like), it would make it easier to support Mac and Linux simultaneously, and it would make the Unix makefiles much more understandable :) Best,Eric
From: wave....@hotmail.com To: hlcoders@list.valvesoftware.com Date: Mon, 14 Apr 2014 20:40:41 +0000 Subject: Re: [hlcoders] Working on multiple devices Yeah, I know. There’s also .filters files for the folder structure inside the projects, but for now, I’ve decided to make changes to .vpc files instead of modifying solution/project files because of easier porting later on (also due to the suggestion of that Valve? developer, http://steamcommunity.com/app/211/discussions/1/630800445305139250/?insideModal=1). If I become more familiar with the formats, I might write a little tool for that, so I don’t have to add files and filters manually, but for now, that’ll do. From: Joel R. Sent: Monday, 14 April, 2014 20:53 To: hlcoders@list.valvesoftware.com The project files are like this: The .sln and .vcproj files contain the project folder structure, dependencies, references, etc. These you should be committing. However, make sure to edit property stuff like the Debug Command Line paths to use Environment Variables. You can easily call env vars by doing $(ENV_NAME). Create a readme.txt/setup.txt that lists these env vars and commit it, so you/others know what to setup. The ones that are more user specific, with things like color schemes, syntax highlighting, etc. would be in the .suo file. These are usually hidden files, but might not be, and you can have git/svn ignore these. You can also ignore all the build stuff like obj/property folders. .pdb files are usually quite large, so you can ignore them too, unless you have a stable build and you need it for debugging purposes. On Mon, Apr 14, 2014 at 1:25 PM, Krzysztof Lesiak <wave....@hotmail.com> wrote: Ok, this question is more management-related: I’m keeping my modified SDK code in a Github repo, but I’d like to be able to work on multiple devices. By default, project files are not synced, so the problem is, that while I sync all my source files and have them e.g. on my laptop, they are not in their respective places in the project and I’d have to add them manually on the other device, which is tedious and not really possible when I’m away from my PC, since I don't remember the exact place where I’ve put them. This brings me to my question: should I just sync project/solution/filters files OR should I add some lines to the .vpc file every time I add a new file/filter? The latter seems to be a good solution when attempting to compile on Linux at a later point, but I’d probably have to write a tool for that, since adding filenames manually is tedious and error prone. What’s your opinion on that? Krzysztof _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders
_______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: https://list.valvesoftware.com/cgi-bin/mailman/listinfo/hlcoders