Re: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
I quote from my previous e-mail: Firstly, are there any hopes of the SDK source code being accessible via the Linux Steam client too sometime, maybe as a game restricted to HL2 buyers? I deduced from the readme file that this should be now possible if a username and password is supplied. Secondly, I have been trying to port VBSP to Linux. Unfortunately, there is one stone of the puzzle of actually being able to compile and link it, and that's utils/common/threads.cpp. Currently, it seems that only the Win32 threading system is included in the file, and since I expect e.g. the Linux dedicated server supporting multiple threads and, consequentially, Valve having a file with the pthread bindings somewhere, I would like to politely ask the Valve employees who monitor this list if they could include it in the upcoming SDK beta. ~~ Ondra Hosek Alfred Reynolds wrote: What pleas? We are working on an update to get the code base to compile under VS.NET 2005, this should help with GCC 4.x also. - Alfred Ondrej Hošek wrote: It went along the lines of make it compile, copy server_i486.so over to the server and ./srcds_run. Purely trial-and-error. Seems like the ABI differences are minimal, if any. (I hope it'll stay that way for the next few versions.) If Valve decides to move to GCC 4, I'm ready to trade a .diff file for a thank you (and maybe the right to brag about having been helpful ;-)). As I said, I just need to try compiling with Microsoft's C++ compiler first, since it's not my objective to destroy things for one group just to make them work for the other. (At least not in this case.) Any chances of my two pleas having been heard by the higher powers? Have a nice day, ~~ Ondra Hosek Alfred Reynolds wrote: The C++ ABI differs in GCC 4.x from GCC 3.x, last time I tried it was not possible to run a mod compiled with 4.x (as C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? - Alfred Ondrej Hošek wrote: Greetings to fellow list members, Recently, I have managed to coerce the code released with the Half-Life 2 SDK to compile on Linux with GCC 4.0.2 without -fpermissive and with -Wall -Werror (both mod and plugin targets). I will release this modified code later on after incorporating the changes of the upcoming SDK beta and ensuring that the code still compiles with Microsoft's C++ compiler. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
The SDK launcher application does more than just deliver the SDK Source files, it processes them also. So no, it wouldn't make sense to deliver them via the linux client, you need to copy them yourself. As for utils/common/threads.cpp, we don't have a Linux port of that file as we don't have any Linux programs that use it. You would have to port it yourself. For dedicated server threading we actually use a different support library (in the tier0 binary), we have moved our toolset to use this functionality yet. - Alfred Ondrej Hošek wrote: I quote from my previous e-mail: Firstly, are there any hopes of the SDK source code being accessible via the Linux Steam client too sometime, maybe as a game restricted to HL2 buyers? I deduced from the readme file that this should be now possible if a username and password is supplied. Secondly, I have been trying to port VBSP to Linux. Unfortunately, there is one stone of the puzzle of actually being able to compile and link it, and that's utils/common/threads.cpp. Currently, it seems that only the Win32 threading system is included in the file, and since I expect e.g. the Linux dedicated server supporting multiple threads and, consequentially, Valve having a file with the pthread bindings somewhere, I would like to politely ask the Valve employees who monitor this list if they could include it in the upcoming SDK beta. ~~ Ondra Hosek Alfred Reynolds wrote: What pleas? We are working on an update to get the code base to compile under VS.NET 2005, this should help with GCC 4.x also. - Alfred Ondrej Hošek wrote: It went along the lines of make it compile, copy server_i486.so over to the server and ./srcds_run. Purely trial-and-error. Seems like the ABI differences are minimal, if any. (I hope it'll stay that way for the next few versions.) If Valve decides to move to GCC 4, I'm ready to trade a .diff file for a thank you (and maybe the right to brag about having been helpful ;-)). As I said, I just need to try compiling with Microsoft's C++ compiler first, since it's not my objective to destroy things for one group just to make them work for the other. (At least not in this case.) Any chances of my two pleas having been heard by the higher powers? Have a nice day, ~~ Ondra Hosek Alfred Reynolds wrote: The C++ ABI differs in GCC 4.x from GCC 3.x, last time I tried it was not possible to run a mod compiled with 4.x (as C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? - Alfred Ondrej Hošek wrote: Greetings to fellow list members, Recently, I have managed to coerce the code released with the Half-Life 2 SDK to compile on Linux with GCC 4.0.2 without -fpermissive and with -Wall -Werror (both mod and plugin targets). I will release this modified code later on after incorporating the changes of the upcoming SDK beta and ensuring that the code still compiles with Microsoft's C++ compiler. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
Yes, VS.NET 2003 is still our primary development platform. VS.NET 2005 is a part of our 64-bit port efforts. - Alfred Teddy wrote: Will the SDK still be compaible with VS.NET 2003? On 11/16/05, Alfred Reynolds [EMAIL PROTECTED] wrote: What pleas? We are working on an update to get the code base to compile under VS.NET 2005, this should help with GCC 4.x also. - Alfred Ondrej Hošek wrote: It went along the lines of make it compile, copy server_i486.so over to the server and ./srcds_run. Purely trial-and-error. Seems like the ABI differences are minimal, if any. (I hope it'll stay that way for the next few versions.) If Valve decides to move to GCC 4, I'm ready to trade a .diff file for a thank you (and maybe the right to brag about having been helpful ;-)). As I said, I just need to try compiling with Microsoft's C++ compiler first, since it's not my objective to destroy things for one group just to make them work for the other. (At least not in this case.) Any chances of my two pleas having been heard by the higher powers? Have a nice day, ~~ Ondra Hosek Alfred Reynolds wrote: The C++ ABI differs in GCC 4.x from GCC 3.x, last time I tried it was not possible to run a mod compiled with 4.x (as C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? - Alfred Ondrej Hošek wrote: Greetings to fellow list members, Recently, I have managed to coerce the code released with the Half-Life 2 SDK to compile on Linux with GCC 4.0.2 without -fpermissive and with -Wall -Werror (both mod and plugin targets). I will release this modified code later on after incorporating the changes of the upcoming SDK beta and ensuring that the code still compiles with Microsoft's C++ compiler. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
-- [ Picked text/plain from multipart/alternative ] Just a quick Q: Alfred, sorry to take this offtopic. I watched a Microsoft research show done by a couple of the valve guys(I belive it was Mike Dunkle(sp)) and there was talks of getting some level of integration going on between VSExpress and the SDK. Do you have any idea how we will get this and will it be included in the beta update. Thanks if you answer this. On 11/16/05, Alfred Reynolds [EMAIL PROTECTED] wrote: Yes, VS.NET http://VS.NET 2003 is still our primary development platform. VS.NET http://VS.NET 2005 is a part of our 64-bit port efforts. - Alfred Teddy wrote: Will the SDK still be compaible with VS.NET http://VS.NET 2003? On 11/16/05, Alfred Reynolds [EMAIL PROTECTED] wrote: What pleas? We are working on an update to get the code base to compile under VS.NET http://VS.NET 2005, this should help with GCC 4.x also. - Alfred Ondrej Hošek wrote: It went along the lines of make it compile, copy server_i486.so over to the server and ./srcds_run. Purely trial-and-error. Seems like the ABI differences are minimal, if any. (I hope it'll stay that way for the next few versions.) If Valve decides to move to GCC 4, I'm ready to trade a .diff file for a thank you (and maybe the right to brag about having been helpful ;-)). As I said, I just need to try compiling with Microsoft's C++ compiler first, since it's not my objective to destroy things for one group just to make them work for the other. (At least not in this case.) Any chances of my two pleas having been heard by the higher powers? Have a nice day, ~~ Ondra Hosek Alfred Reynolds wrote: The C++ ABI differs in GCC 4.x from GCC 3.x, last time I tried it was not possible to run a mod compiled with 4.x (as C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? - Alfred Ondrej Hošek wrote: Greetings to fellow list members, Recently, I have managed to coerce the code released with the Half-Life 2 SDK to compile on Linux with GCC 4.0.2 without -fpermissive and with -Wall -Werror (both mod and plugin targets). I will release this modified code later on after incorporating the changes of the upcoming SDK beta and ensuring that the code still compiles with Microsoft's C++ compiler. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders -- - Ben Davison - http://www.shadow-phoenix.com -- ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
That extension will be distributed by Microsoft as part of their express program. I don't know when that would happen. - Alfred Benjamin Davison wrote: -- [ Picked text/plain from multipart/alternative ] Just a quick Q: Alfred, sorry to take this offtopic. I watched a Microsoft research show done by a couple of the valve guys(I belive it was Mike Dunkle(sp)) and there was talks of getting some level of integration going on between VSExpress and the SDK. Do you have any idea how we will get this and will it be included in the beta update. Thanks if you answer this. On 11/16/05, Alfred Reynolds [EMAIL PROTECTED] wrote: Yes, VS.NET http://VS.NET 2003 is still our primary development platform. VS.NET http://VS.NET 2005 is a part of our 64-bit port efforts. - Alfred Teddy wrote: Will the SDK still be compaible with VS.NET http://VS.NET 2003? On 11/16/05, Alfred Reynolds [EMAIL PROTECTED] wrote: What pleas? We are working on an update to get the code base to compile under VS.NET http://VS.NET 2005, this should help with GCC 4.x also. - Alfred Ondrej Hošek wrote: It went along the lines of make it compile, copy server_i486.so over to the server and ./srcds_run. Purely trial-and-error. Seems like the ABI differences are minimal, if any. (I hope it'll stay that way for the next few versions.) If Valve decides to move to GCC 4, I'm ready to trade a .diff file for a thank you (and maybe the right to brag about having been helpful ;-)). As I said, I just need to try compiling with Microsoft's C++ compiler first, since it's not my objective to destroy things for one group just to make them work for the other. (At least not in this case.) Any chances of my two pleas having been heard by the higher powers? Have a nice day, ~~ Ondra Hosek Alfred Reynolds wrote: The C++ ABI differs in GCC 4.x from GCC 3.x, last time I tried it was not possible to run a mod compiled with 4.x (as C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? - Alfred Ondrej Hošek wrote: Greetings to fellow list members, Recently, I have managed to coerce the code released with the Half-Life 2 SDK to compile on Linux with GCC 4.0.2 without -fpermissive and with -Wall -Werror (both mod and plugin targets). I will release this modified code later on after incorporating the changes of the upcoming SDK beta and ensuring that the code still compiles with Microsoft's C++ compiler. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders -- - Ben Davison - http://www.shadow-phoenix.com -- ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
The C++ ABI differs in GCC 4.x from GCC 3.x, last time I tried it was not possible to run a mod compiled with 4.x (as C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? - Alfred Ondrej Hošek wrote: Greetings to fellow list members, Recently, I have managed to coerce the code released with the Half-Life 2 SDK to compile on Linux with GCC 4.0.2 without -fpermissive and with -Wall -Werror (both mod and plugin targets). I will release this modified code later on after incorporating the changes of the upcoming SDK beta and ensuring that the code still compiles with Microsoft's C++ compiler. Apart from this news, I have two questions best classified as wishes. Firstly, are there any hopes of the SDK source code being accessible via the Linux Steam client too sometime, maybe as a game restricted to HL2 buyers? I deduced from the readme file that this should be now possible if a username and password is supplied. Secondly, I have been trying to port VBSP to Linux. Unfortunately, there is one stone of the puzzle of actually being able to compile and link it, and that's utils/common/threads.cpp. Currently, it seems that only the Win32 threading system is included in the file, and since I expect e.g. the Linux dedicated server supporting multiple threads and, consequentially, Valve having a file with the pthread bindings somewhere, I would like to politely ask the Valve employees who monitor this list if they could include it in the upcoming SDK beta. Thank you, ~~ Ondra Hosek (VDC's RavuAlHemio) ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
On Tue, 2005-11-15 at 13:51 -0800, Alfred Reynolds wrote: C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? gcc-4.0 and gcc-3.4 share the same C++ ABI, so that should not be a problem. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
On 11/16/05, Marcelo Bezerra [EMAIL PROTECTED] wrote: On Tue, 2005-11-15 at 13:51 -0800, Alfred Reynolds wrote: C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? gcc-4.0 and gcc-3.4 share the same C++ ABI, so that should not be a problem. There where ABI change between gcc 3.1 and 3.3 and then between 3.3 and gcc 3.4; so if the tools Valve are using are pre 3.4 then it will be different. Note that it may be possible to get objects using different ABI's to link, however it is not possible to determine if there will be any strange run time behaviour without extensive testing. Is that crash due to a bug in the SDK or a run time ABI clash? Welcome to ABI hell ;) Valve dudes, which 3.x version of gcc are you using? The x being pretty important give the (expletive words) practice of changing the ABI in minor versions :/ -- Jeff Fearn Postmodernism: Once more without feeling. -- Geoffrey Nunberg ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
The Source engine and Steam client are compiled with 3.4.1 currently. - Alfred Jeff Fearn wrote: On 11/16/05, Marcelo Bezerra [EMAIL PROTECTED] wrote: On Tue, 2005-11-15 at 13:51 -0800, Alfred Reynolds wrote: C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? gcc-4.0 and gcc-3.4 share the same C++ ABI, so that should not be a problem. There where ABI change between gcc 3.1 and 3.3 and then between 3.3 and gcc 3.4; so if the tools Valve are using are pre 3.4 then it will be different. Note that it may be possible to get objects using different ABI's to link, however it is not possible to determine if there will be any strange run time behaviour without extensive testing. Is that crash due to a bug in the SDK or a run time ABI clash? Welcome to ABI hell ;) Valve dudes, which 3.x version of gcc are you using? The x being pretty important give the (expletive words) practice of changing the ABI in minor versions :/ -- Jeff Fearn Postmodernism: Once more without feeling. -- Geoffrey Nunberg ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
Source SDK requires gcc-3.4, so we should be safe with gcc-4.0. The main problem is that gcc-4.0 complais about a lot of stuff in the sdk that 3.4 does not :) I would really like to experiment recompiling my stuff with gcc 4.0 and see if the code it generates is faster. On Wed, 2005-11-16 at 09:49 +1000, Jeff Fearn wrote: On 11/16/05, Marcelo Bezerra [EMAIL PROTECTED] wrote: On Tue, 2005-11-15 at 13:51 -0800, Alfred Reynolds wrote: C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? gcc-4.0 and gcc-3.4 share the same C++ ABI, so that should not be a problem. There where ABI change between gcc 3.1 and 3.3 and then between 3.3 and gcc 3.4; so if the tools Valve are using are pre 3.4 then it will be different. Note that it may be possible to get objects using different ABI's to link, however it is not possible to determine if there will be any strange run time behaviour without extensive testing. Is that crash due to a bug in the SDK or a run time ABI clash? Welcome to ABI hell ;) Valve dudes, which 3.x version of gcc are you using? The x being pretty important give the (expletive words) practice of changing the ABI in minor versions :/ -- Jeff Fearn Postmodernism: Once more without feeling. -- Geoffrey Nunberg ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
It went along the lines of make it compile, copy server_i486.so over to the server and ./srcds_run. Purely trial-and-error. Seems like the ABI differences are minimal, if any. (I hope it'll stay that way for the next few versions.) If Valve decides to move to GCC 4, I'm ready to trade a .diff file for a thank you (and maybe the right to brag about having been helpful ;-)). As I said, I just need to try compiling with Microsoft's C++ compiler first, since it's not my objective to destroy things for one group just to make them work for the other. (At least not in this case.) Any chances of my two pleas having been heard by the higher powers? Have a nice day, ~~ Ondra Hosek Alfred Reynolds wrote: The C++ ABI differs in GCC 4.x from GCC 3.x, last time I tried it was not possible to run a mod compiled with 4.x (as C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? - Alfred Ondrej Hošek wrote: Greetings to fellow list members, Recently, I have managed to coerce the code released with the Half-Life 2 SDK to compile on Linux with GCC 4.0.2 without -fpermissive and with -Wall -Werror (both mod and plugin targets). I will release this modified code later on after incorporating the changes of the upcoming SDK beta and ensuring that the code still compiles with Microsoft's C++ compiler. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Compiling on GCC4, threads.cpp with pthread implementation?
What pleas? We are working on an update to get the code base to compile under VS.NET 2005, this should help with GCC 4.x also. - Alfred Ondrej Hošek wrote: It went along the lines of make it compile, copy server_i486.so over to the server and ./srcds_run. Purely trial-and-error. Seems like the ABI differences are minimal, if any. (I hope it'll stay that way for the next few versions.) If Valve decides to move to GCC 4, I'm ready to trade a .diff file for a thank you (and maybe the right to brag about having been helpful ;-)). As I said, I just need to try compiling with Microsoft's C++ compiler first, since it's not my objective to destroy things for one group just to make them work for the other. (At least not in this case.) Any chances of my two pleas having been heard by the higher powers? Have a nice day, ~~ Ondra Hosek Alfred Reynolds wrote: The C++ ABI differs in GCC 4.x from GCC 3.x, last time I tried it was not possible to run a mod compiled with 4.x (as C++ interfaces are passed from it to our GCC 3.x compiled binaries). How did you solve that? - Alfred Ondrej Hošek wrote: Greetings to fellow list members, Recently, I have managed to coerce the code released with the Half-Life 2 SDK to compile on Linux with GCC 4.0.2 without -fpermissive and with -Wall -Werror (both mod and plugin targets). I will release this modified code later on after incorporating the changes of the upcoming SDK beta and ensuring that the code still compiles with Microsoft's C++ compiler. ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders