Hullo List,
In tracking down another issue, I've run across a number of object files
that we appear to build but not use. Example:
g++ -o sal/unxlngx6/obj/bootstrap.o [...]
A few lines later in the build, we build this, with a few extra g++
arguments. This is the version that actually gets used elsewhere in the
build:
g++ -o sal/unxlngx6/slo/bootstrap.o [...] \
-fpic \
-DSHAREDLIB \
-D_DLL_
Question: what's the point of building the first one (if any)?
If it's not supposed to be built, I'll leave "fixing" the build system
to some other interested party as I'm not particularly keen on diving in
when I'm thick into another problem. For reference, based on my
build.log and the attached (inefficient) shell script, I believe this
list of 112 object files are all good _candidates_ for the "built but
unused" category
Thanks,
Kevin
# This list of files suggests *candidates* of unnecessary compilation. I
# don't know for sure that they aren't used after compilation, but I suspect
# so given my build.log and this rather innefficient shell/perl script combo.
$ cat get_files_of_interest.pl
#!/usr/bin/env perl
use strict;
use warnings;
while ( <STDIN> ) { # store each input line into $_
>--if ( s/.* -o (\S+).*/$1/ ) { # if a substition made, then
>-->--# $_ was a compile line with "-o ...." in it. i.e.
>-->--# we're looking for the object file lines
>-->--# Now, only print the line if the output of above was
>-->--# at least two directories deep. i.e. if it at least
>-->--# has a form like dir/dir/file.so or dir/dir/file.o
>-->--# this will not match lines like "-o dir/file.o" or
>-->--# "-o file.o"
>-->--print if s|.*/(\w+/\w+/\w+\.s?o)|$1|;
>--}
}
$ for i in $(./get_files_of_interest.pl < build.log | sort -u); do
COUNT=$(\grep -c "$i" build.log)
[[ "1" == "$COUNT" ]] && find . -path "*/$i"
done | sort > unused_object_files.txt
Begin files:
========================================
./bean/unxlngx6/slo/officebean_version.o
./bridges/unxlngx6/slo/java_uno_version.o
./connectivity/unxlngx6/slo/hsqldb_version.o
./connectivity/unxlngx6/slo/mozab_dflt_version.o
./connectivity/unxlngx6/slo/mozabdrv_dflt_version.o
./desktop/unxlngx6/obj/copyright_ascii_ooo.o
./desktop/unxlngx6/obj/copyright_ascii_sun.o
./desktop/unxlngx6/slo/dp_activepackages.o
./desktop/unxlngx6/slo/dp_commandenvironments.o
./desktop/unxlngx6/slo/dp_configurationbackenddb.o
./desktop/unxlngx6/slo/dp_configuration.o
./desktop/unxlngx6/slo/dp_executablebackenddb.o
./desktop/unxlngx6/slo/dp_executable.o
./desktop/unxlngx6/slo/dp_extbackenddb.o
./desktop/unxlngx6/slo/dp_extensionmanager.o
./desktop/unxlngx6/slo/dp_informationprovider.o
./desktop/unxlngx6/slo/dp_managerfac.o
./desktop/unxlngx6/slo/dp_manager.o
./desktop/unxlngx6/slo/dp_package.o
./desktop/unxlngx6/slo/dp_properties.o
./javaunohelper/unxlngx6/slo/juh_version.o
./javaunohelper/unxlngx6/slo/juhx_version.o
./jurt/unxlngx6/slo/jpipe_version.o
./sal/unxlngx6/obj/alloc_arena.o
./sal/unxlngx6/obj/alloc_cache.o
./sal/unxlngx6/obj/alloc_fini.o
./sal/unxlngx6/obj/alloc_global.o
./sal/unxlngx6/obj/bootstrap.o
./sal/unxlngx6/obj/byteseq.o
./sal/unxlngx6/obj/cipher.o
./sal/unxlngx6/obj/cmdargs.o
./sal/unxlngx6/obj/conditn.o
./sal/unxlngx6/obj/context.o
./sal/unxlngx6/obj/convertbig5hkscs.o
./sal/unxlngx6/obj/converter.o
./sal/unxlngx6/obj/converteuctw.o
./sal/unxlngx6/obj/convertgb18030.o
./sal/unxlngx6/obj/convertiso2022cn.o
./sal/unxlngx6/obj/convertiso2022jp.o
./sal/unxlngx6/obj/convertiso2022kr.o
./sal/unxlngx6/obj/convertsinglebytetobmpunicode.o
./sal/unxlngx6/obj/crc.o
./sal/unxlngx6/obj/debugbase.o
./sal/unxlngx6/obj/diagnose.o
./sal/unxlngx6/obj/digest.o
./sal/unxlngx6/obj/file_error_transl.o
./sal/unxlngx6/obj/file_misc.o
./sal/unxlngx6/obj/file_path_helper.o
./sal/unxlngx6/obj/filepath.o
./sal/unxlngx6/obj/file_stat.o
./sal/unxlngx6/obj/file_url.o
./sal/unxlngx6/obj/file_volume.o
./sal/unxlngx6/obj/hash.o
./sal/unxlngx6/obj/interlck.o
./sal/unxlngx6/obj/loadmodulerelative.o
./sal/unxlngx6/obj/locale.o
./sal/unxlngx6/obj/logfile.o
./sal/unxlngx6/obj/math.o
./sal/unxlngx6/obj/memory.o
./sal/unxlngx6/obj/module.o
./sal/unxlngx6/obj/mutex.o
./sal/unxlngx6/obj/nlsupport.o
./sal/unxlngx6/obj/pipe.o
./sal/unxlngx6/obj/printtrace.o
./sal/unxlngx6/obj/process_impl.o
./sal/unxlngx6/obj/process.o
./sal/unxlngx6/obj/profile.o
./sal/unxlngx6/obj/random.o
./sal/unxlngx6/obj/readwrite_helper.o
./sal/unxlngx6/obj/rtl_process.o
./sal/unxlngx6/obj/salinit.o
./sal/unxlngx6/obj/security.o
./sal/unxlngx6/obj/semaphor.o
./sal/unxlngx6/obj/signal.o
./sal/unxlngx6/obj/socket.o
./sal/unxlngx6/obj/strbuf.o
./sal/unxlngx6/obj/strimp.o
./sal/unxlngx6/obj/string.o
./sal/unxlngx6/obj/system.o
./sal/unxlngx6/obj/tables.o
./sal/unxlngx6/obj/tcvtbyte.o
./sal/unxlngx6/obj/tcvtmb.o
./sal/unxlngx6/obj/tcvtutf7.o
./sal/unxlngx6/obj/tcvtutf8.o
./sal/unxlngx6/obj/tempfile.o
./sal/unxlngx6/obj/tenchelp.o
./sal/unxlngx6/obj/tencinfo.o
./sal/unxlngx6/obj/textcvt.o
./sal/unxlngx6/obj/textenc.o
./sal/unxlngx6/obj/thread.o
./sal/unxlngx6/obj/time.o
./sal/unxlngx6/obj/tres.o
./sal/unxlngx6/obj/unichars.o
./sal/unxlngx6/obj/unload.o
./sal/unxlngx6/obj/uri.o
./sal/unxlngx6/obj/ustrbuf.o
./sal/unxlngx6/obj/ustring.o
./sal/unxlngx6/obj/utility.o
./sal/unxlngx6/obj/util.o
./sal/unxlngx6/obj/uuid.o
./sal/unxlngx6/obj/uunxapi.o
./setup_native/unxlngx6/slo/ulfconv.o
./soltools/unxlngx6/obj/gen_info.o
./soltools/unxlngx6/obj/gi_list.o
./soltools/unxlngx6/obj/gi_parse.o
./soltools/unxlngx6/obj/simstr.o
./soltools/unxlngx6/obj/st_gilrw.o
./soltools/unxlngx6/slo/gen_info.o
./soltools/unxlngx6/slo/gi_list.o
./soltools/unxlngx6/slo/gi_parse.o
./soltools/unxlngx6/slo/simstr.o
./soltools/unxlngx6/slo/st_gilrw.o
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice