Hello, it's first report for project "Provide an alternative to libstdc++ with libc++"[0], mentored by Sylvestre Ledru.
Libc++ is new C++ standard library, with some nice features, described in my proposal[0] and project's website[1]. But it's writed on Mac, for MacOS X, and need some coding and porting to work on Debian. Also, aim is to provide user-friendly way to use this library, so I packaging it. For better platform-independence, libc++ built on top of some low-level code, that realizes so-called ABI - memory allocation, exceptions support, and so on. Libc++ can use libstdc++ ABI functions, but can use new ABI library - libc++abi[2], designed specially for libc++. So I porting libc++abi too. All code of these projects is contained in SVN repositories. So I've copied them, and periodically update. Previous two weeks I had classes, so my progress isn't great. But I've completed my classes, now I have exams at 9,16 and 25 July. Now I'm totally free (except these 3 days) and can work with full power :) At first two weeks I've builded first "dirty" package. It contains both libc++ and libc++abi. Maybe it's better to split their, and make dependency libc++->libc++abi. But libc++abi uses some headers from libc++, so build-dependency of libc++abi should contain libc++-dev. I'll consult with my mentor, what way is better. Both is compiled as shared libraries, and libc++abi must be explicit linked to application when using libc++. It isn't friendly for end-user. I've tried on this week creating static libc++abi and compile it to libc++; and libtool for auto-solving inter-library dependencies, but yet it's unsuccesful. Also, headers installed to libcxx and libcxxabi in /usr/include, and must be explicit connected to compiling application. It's isn't good, and I'll work on this. I've added modified file unwind.h from libgcc headers, because standart header version 4.6 differs from version 4.4 that used on Mac, and clang doesn't understand __unwind_word__ (in 4.4 it's simple __word__). To create package I created patches for buildit - files, that builds libraries. I heard libc++ has ported by FreeBSD[3], so I'll try find some files from this. *** Links: [0] - http://wiki.debian.org/SummerOfCode2012/StudentApplications/AndrejBelym [1] - http://libcxx.llvm.org/ [2] - http://libcxxabi.llvm.org/ [3] - http://www.phoronix.com/scan.php?page=news_item&px=MTEwNjA
_______________________________________________ Soc-coordination mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/soc-coordination
