On 20/12/10 14:29, Christian Auby wrote: > Sure, this would be great as we wouldn't have to keep modifying our > local version to be able to use SOCI with boost.build.
Christian, Sure thing. If you could provide patches for this feature, I will submit them to the repo. CMake is the main officially maintained build configuration, but I have no problems with having others. However, I'd rather stick to portable toolsets. I dropped the Autotools as this is Unix/GNU-specific. CMake is more portable. Boost.Build is highly portable as well and I like it personally (though, it's complexity makes me having headache sometimes :-)) So, let's go for it! > There are a couple of ways you could go to integrate it in boost.build: > > 1. One jamfile at the root of SOCI with targets for the main soci lib > and one for each backend > 2. One jamfile at root and one in each folder for each backend > > In either case you can set up aliases in the root which adds both main > lib and backend (since both are required). Understood. > We currently use 1 as it's a bit easier to maintain and you only have to > add a single file to SOCI to add boost.build integration. Sounds good. Let's start with something what's already being used and tested. > We currently use a SOCI checkout from February 10th 2010. The only local > changes are: > > 1. The addition of the jamfile, as per http://pastebin.ca/2024473 So, this is the only Jamfile I need to put in main/src directory? > 2. Renamed sqlite3/blob.cpp to blob_sqlite3.cpp , same for > sqlite3/session.cpp and sqlite3/statement.cpp as these create object > naming collisions in visual studio (can't have two source files with the > same name, even if they are in different directories) > 3. Changed const char nextChar = query_[pos + placeholder.size()]; > to > const char nextChar = query_.c_str()[pos + placeholder.size()]; > In statement.cpp as the previous would throw a debug assertion if a > placeholder was put at the end of a query string I will take a look at these two issues tonight. > I'm not sure how many of the local changes we made are still required > (how much has changed since february?) but I am willing to investigate > this if it is of use to you. Great, thanks! > IMO it would be in SOCI's best interest to > work out of the box on as many compilers and platforms as possible. Agreed. > Note that the jamfile above only supports the sqlite backend as that's > what we use. I can add the rest during Christmas break if you are > interested. That would be fantastic, but if you use SQLite3 backend only, I see no problem with including Boost.Build configuration with Core + SQLite3 only enabled. You are the developer and user of this features, so draw what's included. Once more folks start using it, it will extend with help of patches and contributions. > Same goes for testing on the various compilers we use if > SOCI is heading towards a 3.1.0 release. I'm hoping we are close to 3.1.0. In fact, I'd consider the source code as ready, the only thing is the documentation that needs to be updated. Work in progress. > I've been toying with the idea of writing a tool that automatically > generates C++ objects with SOCI insert, update and delete support based > on YAML definition files. Is this something that would be interesting > for SOCI or is it out of scope of the project? Sounds like an interesting extension to SOCI. I think it would be good to host contributed extensions within SOCI codebase, assuming they are not intrusive to the base code too much. Let's discuss it, but once the release is out. At least, I can't spend time on it now. Best regards, -- Mateusz Loskot, http://mateusz.loskot.net Charter Member of OSGeo, http://osgeo.org Member of ACCU, http://accu.org ------------------------------------------------------------------------------ Lotusphere 2011 Register now for Lotusphere 2011 and learn how to connect the dots, take your collaborative environment to the next level, and enter the era of Social Business. http://p.sf.net/sfu/lotusphere-d2d _______________________________________________ Soci-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/soci-users
