[1] <- That's what you are looking for in terms of CLang and pthread no?
[1] http://stackoverflow.com/questions/2391194/what-is-gs-pthread-equiv-in-clang Cheers Daniel On Thu, Oct 13, 2011 at 10:17 AM, Giorgio Zoppi <giorgio.zo...@gmail.com> wrote: > 2011/10/13 Jean-Sebastien Delfino <jsdelf...@apache.org>: >> On Tue, Oct 11, 2011 at 1:58 AM, Giorgio Zoppi <giorgio.zo...@gmail.com> >> wrote: >>> >>> > Hi there! a few thoughts: >>> > Tuscany-cpp has a hard dependency on HTTPD, used as runtime container >>> > instead or writing my own. >>> > Not sure if HTTPD mods can be easily ported to LightHTTPD. If it's >>> > feasible >>> > and people want to try, I can help with any questions you have on the >>> > Tuscany HTTPD mods. >>> > Some sizing info posted to the Tuscany user list last year, showing that >>> > HTTPD can be built small: >>> > http://marc.info/?l=tuscany-user&m=128031058024758&w=2 >>> > Hope this helps. >>> >>> Hi Jean Sebastian, >>> some thoughts about SCA native. The roading map might be: >>> + remove pthread dependency in parallell.hpp with the new c++ >>> concurrent features. g++, Intel C++, MS C++ support really well. > Simply a thread could be created: > > #include <thread> > #include <iostream> > void my_thread_func() > { > std::cout<<"hello"<<std::endl; > } > > int main() > { > std::thread t(my_thread_func); > t.join(); > } > > and compiled: > > g++ thread.cpp -o thread -Wall -std=c++0x -lpthread > on linux for example. > > For the mutex: > http://www.devx.com/SpecialReports/Article/38883/1954 > The enviroment could be different and pthread not supported. > >> Do you have a pointer to the equivalent features in g++, for example? > g++ support threads, mutex. > >> Any equivalent in Clang? IIRC Daniel was trying to port the whole thing to >> Clang and I'm interested in that too. > no. > >> >>> >>> + remove Axis/C dependency with gSOAP. Axis/C relies on java runtime, >>> afaik. >> >> Huh, you may want to double check that statement... > yes. > >>> >>> This remove as well Apache2 dependency >> >> ... and that one too :) > Yes. >>> >>> + valuate if we can remove Curl dependency. >>> In my idea there is the option to use boost at some extent. net-cpp >>> based on boost asio, >>> works as curl. >> >> Are you saying that net-cpp provides features equivalent to curl? got a >> pointer to some docs with a feature comparison? > > http://github.com/downloads/mikhailberis/cpp-netlib-boostcon-paper/cpp-netlib.pdf > http://cpp-netlib.github.com/ > >>> >>> + replace the python dependency with PyMite. >>> + remove any dependency on Java. >>> + move to autoconf tools to CMake. >>> + remove any SQL dependencies. >>> + introduce regression tests Boost:Test >>> + provide a flexible way for managing memory. You use apache pools. I >>> am not sure if you can use in a stricted memory enviroment, >>> with 512 kb/1M for example. >> >> Not sure if you've realized that, but -- with the exception of Curl, HTTPD >> and APR -- all the 'dependencies' you've listed there are already optional >> integration points. For example you only need Axis2/C if you decide to build >> the Tuscany Axis2/C integration component, you only need Python if you >> decide to build the support for Python components, only need PostgreSQL if >> you decide to build the PostgreSQL integration component. > Realized yesterday. >> In other words the Tuscany runtime does *not* depend on Axis2/C, Python, >> PostgreSQL, etc. > >>> The idea is to branch from your native and starting to removing >>> things. Now I am thinking to a client. >> >> Yeah it's probably feasible to come up with a different runtime branch with >> the 'server code' removed for use in a client-only environment. I'm not sure >> how much code you'll be able to reuse eventually after you do that, so >> another approach could be to start fresh for the client-only runtime and >> pull bits of existing code where it actually helps... > I keep only one branch and add feature that allows to customize the runtime. >