
Hi, Today, I tried to extract smart pointers library from Boost tree using bcp tool. Everything seems to work well: 1. I checkouted latest Boost CVS 2. I build bcp without any problems, using VC++ 8.0 3. I run bcp --cvs --list to see how many files are related to smart_ptr.hpp (and shared_ptr.hpp too). 4. Finally, I extracted smart pointers library: d:\boost_cvs> bcp --cvs smart_ptr.hpp d:\tmp\boost-smart_ptr Next, I compiled some examples using this extraction and everything works well. My only question is if this is normal that smart_ptr extraction weight is about 2.8MB ? Are there any options that can be used to make this package smaller? Here is a linsg (looong) of files that I got copied during the extraction process. Could anyone take a look at it and see if there are some files not used which can be safely removed? //////////////////////////////////////////////////////// // START OF THE LIST ./boost/assert.hpp ./boost/checked_delete.hpp ./boost/config ./boost/config/abi ./boost/config/abi/borland_prefix.hpp ./boost/config/abi/borland_suffix.hpp ./boost/config/abi/msvc_prefix.hpp ./boost/config/abi/msvc_suffix.hpp ./boost/config/abi_prefix.hpp ./boost/config/abi_suffix.hpp ./boost/config/auto_link.hpp ./boost/config/compiler ./boost/config/compiler/borland.hpp ./boost/config/compiler/comeau.hpp ./boost/config/compiler/common_edg.hpp ./boost/config/compiler/compaq_cxx.hpp ./boost/config/compiler/digitalmars.hpp ./boost/config/compiler/gcc.hpp ./boost/config/compiler/gcc_xml.hpp ./boost/config/compiler/greenhills.hpp ./boost/config/compiler/hp_acc.hpp ./boost/config/compiler/intel.hpp ./boost/config/compiler/kai.hpp ./boost/config/compiler/metrowerks.hpp ./boost/config/compiler/mpw.hpp ./boost/config/compiler/sgi_mipspro.hpp ./boost/config/compiler/sunpro_cc.hpp ./boost/config/compiler/vacpp.hpp ./boost/config/compiler/visualc.hpp ./boost/config/no_tr1 ./boost/config/no_tr1/complex.hpp ./boost/config/no_tr1/functional.hpp ./boost/config/no_tr1/memory.hpp ./boost/config/no_tr1/utility.hpp ./boost/config/platform ./boost/config/platform/aix.hpp ./boost/config/platform/amigaos.hpp ./boost/config/platform/beos.hpp ./boost/config/platform/bsd.hpp ./boost/config/platform/cygwin.hpp ./boost/config/platform/hpux.hpp ./boost/config/platform/irix.hpp ./boost/config/platform/linux.hpp ./boost/config/platform/macos.hpp ./boost/config/platform/qnxnto.hpp ./boost/config/platform/solaris.hpp ./boost/config/platform/win32.hpp ./boost/config/posix_features.hpp ./boost/config/requires_threads.hpp ./boost/config/select_compiler_config.hpp ./boost/config/select_platform_config.hpp ./boost/config/select_stdlib_config.hpp ./boost/config/stdlib ./boost/config/stdlib/dinkumware.hpp ./boost/config/stdlib/libcomo.hpp ./boost/config/stdlib/libstdcpp3.hpp ./boost/config/stdlib/modena.hpp ./boost/config/stdlib/msl.hpp ./boost/config/stdlib/roguewave.hpp ./boost/config/stdlib/sgi.hpp ./boost/config/stdlib/stlport.hpp ./boost/config/stdlib/vacpp.hpp ./boost/config/suffix.hpp ./boost/config/user.hpp ./boost/config.hpp ./boost/current_function.hpp ./boost/detail ./boost/detail/atomic_count.hpp ./boost/detail/atomic_count_gcc.hpp ./boost/detail/atomic_count_pthreads.hpp ./boost/detail/atomic_count_win32.hpp ./boost/detail/bad_weak_ptr.hpp ./boost/detail/interlocked.hpp ./boost/detail/lightweight_mutex.hpp ./boost/detail/lwm_nop.hpp ./boost/detail/lwm_pthreads.hpp ./boost/detail/lwm_win32_cs.hpp ./boost/detail/quick_allocator.hpp ./boost/detail/shared_array_nmt.hpp ./boost/detail/shared_count.hpp ./boost/detail/shared_ptr_nmt.hpp ./boost/detail/sp_counted_base.hpp ./boost/detail/sp_counted_base_cw_ppc.hpp ./boost/detail/sp_counted_base_gcc_ia64.hpp ./boost/detail/sp_counted_base_gcc_ppc.hpp ./boost/detail/sp_counted_base_gcc_x86.hpp ./boost/detail/sp_counted_base_nt.hpp ./boost/detail/sp_counted_base_pt.hpp ./boost/detail/sp_counted_base_w32.hpp ./boost/detail/sp_counted_impl.hpp ./boost/detail/workaround.hpp ./boost/enable_shared_from_this.hpp ./boost/intrusive_ptr.hpp ./boost/mpl ./boost/mpl/aux_ ./boost/mpl/aux_/adl_barrier.hpp ./boost/mpl/aux_/arity.hpp ./boost/mpl/aux_/config ./boost/mpl/aux_/config/adl.hpp ./boost/mpl/aux_/config/arrays.hpp ./boost/mpl/aux_/config/ctps.hpp ./boost/mpl/aux_/config/dtp.hpp ./boost/mpl/aux_/config/eti.hpp ./boost/mpl/aux_/config/gcc.hpp ./boost/mpl/aux_/config/integral.hpp ./boost/mpl/aux_/config/intel.hpp ./boost/mpl/aux_/config/lambda.hpp ./boost/mpl/aux_/config/msvc.hpp ./boost/mpl/aux_/config/nttp.hpp ./boost/mpl/aux_/config/overload_resolution.hpp ./boost/mpl/aux_/config/preprocessor.hpp ./boost/mpl/aux_/config/static_constant.hpp ./boost/mpl/aux_/config/ttp.hpp ./boost/mpl/aux_/config/workaround.hpp ./boost/mpl/aux_/integral_wrapper.hpp ./boost/mpl/aux_/lambda_arity_param.hpp ./boost/mpl/aux_/lambda_support.hpp ./boost/mpl/aux_/na.hpp ./boost/mpl/aux_/na_fwd.hpp ./boost/mpl/aux_/na_spec.hpp ./boost/mpl/aux_/nttp_decl.hpp ./boost/mpl/aux_/preprocessor ./boost/mpl/aux_/preprocessor/def_params_tail.hpp ./boost/mpl/aux_/preprocessor/enum.hpp ./boost/mpl/aux_/preprocessor/filter_params.hpp ./boost/mpl/aux_/preprocessor/params.hpp ./boost/mpl/aux_/preprocessor/sub.hpp ./boost/mpl/aux_/preprocessor/tuple.hpp ./boost/mpl/aux_/static_cast.hpp ./boost/mpl/aux_/template_arity_fwd.hpp ./boost/mpl/aux_/value_wknd.hpp ./boost/mpl/aux_/yes_no.hpp ./boost/mpl/bool.hpp ./boost/mpl/bool_fwd.hpp ./boost/mpl/if.hpp ./boost/mpl/int.hpp ./boost/mpl/integral_c.hpp ./boost/mpl/integral_c_fwd.hpp ./boost/mpl/integral_c_tag.hpp ./boost/mpl/int_fwd.hpp ./boost/mpl/lambda_fwd.hpp ./boost/mpl/limits ./boost/mpl/limits/arity.hpp ./boost/mpl/size_t.hpp ./boost/mpl/size_t_fwd.hpp ./boost/mpl/void_fwd.hpp ./boost/non_type.hpp ./boost/preprocessor ./boost/preprocessor/arithmetic ./boost/preprocessor/arithmetic/add.hpp ./boost/preprocessor/arithmetic/dec.hpp ./boost/preprocessor/arithmetic/inc.hpp ./boost/preprocessor/arithmetic/sub.hpp ./boost/preprocessor/array ./boost/preprocessor/array/data.hpp ./boost/preprocessor/array/elem.hpp ./boost/preprocessor/array/size.hpp ./boost/preprocessor/cat.hpp ./boost/preprocessor/comma_if.hpp ./boost/preprocessor/config ./boost/preprocessor/config/config.hpp ./boost/preprocessor/control ./boost/preprocessor/control/detail ./boost/preprocessor/control/detail/dmc ./boost/preprocessor/control/detail/dmc/while.hpp ./boost/preprocessor/control/detail/edg ./boost/preprocessor/control/detail/edg/while.hpp ./boost/preprocessor/control/detail/msvc ./boost/preprocessor/control/detail/msvc/while.hpp ./boost/preprocessor/control/detail/while.hpp ./boost/preprocessor/control/expr_iif.hpp ./boost/preprocessor/control/if.hpp ./boost/preprocessor/control/iif.hpp ./boost/preprocessor/control/while.hpp ./boost/preprocessor/debug ./boost/preprocessor/debug/error.hpp ./boost/preprocessor/detail ./boost/preprocessor/detail/auto_rec.hpp ./boost/preprocessor/detail/check.hpp ./boost/preprocessor/detail/dmc ./boost/preprocessor/detail/dmc/auto_rec.hpp ./boost/preprocessor/detail/is_binary.hpp ./boost/preprocessor/empty.hpp ./boost/preprocessor/enum_params.hpp ./boost/preprocessor/facilities ./boost/preprocessor/facilities/empty.hpp ./boost/preprocessor/facilities/identity.hpp ./boost/preprocessor/identity.hpp ./boost/preprocessor/inc.hpp ./boost/preprocessor/iterate.hpp ./boost/preprocessor/iteration ./boost/preprocessor/iteration/detail ./boost/preprocessor/iteration/detail/bounds ./boost/preprocessor/iteration/detail/bounds/lower1.hpp ./boost/preprocessor/iteration/detail/bounds/lower2.hpp ./boost/preprocessor/iteration/detail/bounds/lower3.hpp ./boost/preprocessor/iteration/detail/bounds/lower4.hpp ./boost/preprocessor/iteration/detail/bounds/lower5.hpp ./boost/preprocessor/iteration/detail/bounds/upper1.hpp ./boost/preprocessor/iteration/detail/bounds/upper2.hpp ./boost/preprocessor/iteration/detail/bounds/upper3.hpp ./boost/preprocessor/iteration/detail/bounds/upper4.hpp ./boost/preprocessor/iteration/detail/bounds/upper5.hpp ./boost/preprocessor/iteration/detail/finish.hpp ./boost/preprocessor/iteration/detail/iter ./boost/preprocessor/iteration/detail/iter/forward1.hpp ./boost/preprocessor/iteration/detail/iter/forward2.hpp ./boost/preprocessor/iteration/detail/iter/forward3.hpp ./boost/preprocessor/iteration/detail/iter/forward4.hpp ./boost/preprocessor/iteration/detail/iter/forward5.hpp ./boost/preprocessor/iteration/detail/iter/reverse1.hpp ./boost/preprocessor/iteration/detail/iter/reverse2.hpp ./boost/preprocessor/iteration/detail/iter/reverse3.hpp ./boost/preprocessor/iteration/detail/iter/reverse4.hpp ./boost/preprocessor/iteration/detail/iter/reverse5.hpp ./boost/preprocessor/iteration/detail/local.hpp ./boost/preprocessor/iteration/detail/rlocal.hpp ./boost/preprocessor/iteration/detail/self.hpp ./boost/preprocessor/iteration/detail/start.hpp ./boost/preprocessor/iteration/iterate.hpp ./boost/preprocessor/iteration/local.hpp ./boost/preprocessor/iteration/self.hpp ./boost/preprocessor/list ./boost/preprocessor/list/adt.hpp ./boost/preprocessor/list/append.hpp ./boost/preprocessor/list/detail ./boost/preprocessor/list/detail/dmc ./boost/preprocessor/list/detail/dmc/fold_left.hpp ./boost/preprocessor/list/detail/edg ./boost/preprocessor/list/detail/edg/fold_left.hpp ./boost/preprocessor/list/detail/edg/fold_right.hpp ./boost/preprocessor/list/detail/fold_left.hpp ./boost/preprocessor/list/detail/fold_right.hpp ./boost/preprocessor/list/fold_left.hpp ./boost/preprocessor/list/fold_right.hpp ./boost/preprocessor/list/for_each_i.hpp ./boost/preprocessor/list/reverse.hpp ./boost/preprocessor/list/transform.hpp ./boost/preprocessor/logical ./boost/preprocessor/logical/and.hpp ./boost/preprocessor/logical/bitand.hpp ./boost/preprocessor/logical/bool.hpp ./boost/preprocessor/logical/compl.hpp ./boost/preprocessor/punctuation ./boost/preprocessor/punctuation/comma.hpp ./boost/preprocessor/punctuation/comma_if.hpp ./boost/preprocessor/repeat.hpp ./boost/preprocessor/repetition ./boost/preprocessor/repetition/detail ./boost/preprocessor/repetition/detail/dmc ./boost/preprocessor/repetition/detail/dmc/for.hpp ./boost/preprocessor/repetition/detail/edg ./boost/preprocessor/repetition/detail/edg/for.hpp ./boost/preprocessor/repetition/detail/for.hpp ./boost/preprocessor/repetition/detail/msvc ./boost/preprocessor/repetition/detail/msvc/for.hpp ./boost/preprocessor/repetition/enum_params.hpp ./boost/preprocessor/repetition/for.hpp ./boost/preprocessor/repetition/repeat.hpp ./boost/preprocessor/slot ./boost/preprocessor/slot/detail ./boost/preprocessor/slot/detail/counter.hpp ./boost/preprocessor/slot/detail/def.hpp ./boost/preprocessor/slot/detail/shared.hpp ./boost/preprocessor/slot/detail/slot1.hpp ./boost/preprocessor/slot/detail/slot2.hpp ./boost/preprocessor/slot/detail/slot3.hpp ./boost/preprocessor/slot/detail/slot4.hpp ./boost/preprocessor/slot/detail/slot5.hpp ./boost/preprocessor/slot/slot.hpp ./boost/preprocessor/tuple ./boost/preprocessor/tuple/eat.hpp ./boost/preprocessor/tuple/elem.hpp ./boost/preprocessor/tuple/rem.hpp ./boost/preprocessor/tuple/to_list.hpp ./boost/scoped_array.hpp ./boost/scoped_ptr.hpp ./boost/shared_array.hpp ./boost/shared_ptr.hpp ./boost/smart_ptr.hpp ./boost/static_assert.hpp ./boost/throw_exception.hpp ./boost/type.hpp ./boost/type_traits ./boost/type_traits/add_reference.hpp ./boost/type_traits/alignment_of.hpp ./boost/type_traits/broken_compiler_spec.hpp ./boost/type_traits/config.hpp ./boost/type_traits/detail ./boost/type_traits/detail/bool_trait_def.hpp ./boost/type_traits/detail/bool_trait_undef.hpp ./boost/type_traits/detail/cv_traits_impl.hpp ./boost/type_traits/detail/false_result.hpp ./boost/type_traits/detail/ice_and.hpp ./boost/type_traits/detail/ice_eq.hpp ./boost/type_traits/detail/ice_not.hpp ./boost/type_traits/detail/ice_or.hpp ./boost/type_traits/detail/is_function_ptr_helper.hpp ./boost/type_traits/detail/is_function_ptr_tester.hpp ./boost/type_traits/detail/is_mem_fun_pointer_impl.hpp ./boost/type_traits/detail/is_mem_fun_pointer_tester.hpp ./boost/type_traits/detail/size_t_trait_def.hpp ./boost/type_traits/detail/size_t_trait_undef.hpp ./boost/type_traits/detail/template_arity_spec.hpp ./boost/type_traits/detail/type_trait_def.hpp ./boost/type_traits/detail/type_trait_undef.hpp ./boost/type_traits/detail/wrap.hpp ./boost/type_traits/detail/yes_no_type.hpp ./boost/type_traits/ice.hpp ./boost/type_traits/integral_constant.hpp ./boost/type_traits/intrinsics.hpp ./boost/type_traits/is_abstract.hpp ./boost/type_traits/is_arithmetic.hpp ./boost/type_traits/is_array.hpp ./boost/type_traits/is_class.hpp ./boost/type_traits/is_convertible.hpp ./boost/type_traits/is_enum.hpp ./boost/type_traits/is_float.hpp ./boost/type_traits/is_function.hpp ./boost/type_traits/is_integral.hpp ./boost/type_traits/is_member_function_pointer.hpp ./boost/type_traits/is_member_pointer.hpp ./boost/type_traits/is_pod.hpp ./boost/type_traits/is_pointer.hpp ./boost/type_traits/is_polymorphic.hpp ./boost/type_traits/is_reference.hpp ./boost/type_traits/is_same.hpp ./boost/type_traits/is_scalar.hpp ./boost/type_traits/is_union.hpp ./boost/type_traits/is_void.hpp ./boost/type_traits/remove_cv.hpp ./boost/type_traits/remove_reference.hpp ./boost/type_traits/type_with_alignment.hpp ./boost/version.hpp ./boost/weak_ptr.hpp ./libs/smart_ptr ./libs/smart_ptr/src ./libs/smart_ptr/src/sp_collector.cpp ./libs/smart_ptr/src/sp_debug_hooks.cpp // END OF THE LIST //////////////////////////////////////////////////////// Thanks in advance -- Mateusz Łoskot http://mateusz.loskot.net