Merging files to one

Norbert Thiebaud nthiebaud at gmail.com
Tue Nov 12 19:23:02 PST 2013


On Tue, Nov 12, 2013 at 8:52 PM, Jose Guilherme Vanz
<vanz at libreoffice.org> wrote:
> Hi, All!
>
> These days when studying the source code to try solve the #43089 -
> Syntax highlighting for Math. I found 5 source files with the same name
> "impedit.cxx". Like this:
> http://opengrok.libreoffice.org/search?q=impedit&project=core&defs=&refs=&path=&hist=
>
> Can we merge theses 5 files to just one source file?

It was broken in 5 files most like to keep the file at a 'reasonable' length...
combined they would represent a 16143 lines for 664K

a quick scan of the source show the source that are above 6K lines


    6068 ./sw/source/ui/docvw/edtwin.cxx
    6149 ./vcl/source/window/menu.cxx
    6174 ./package/source/xstor/xstorage.cxx
    6182 ./sc/source/ui/view/gridwin.cxx
    6182 ./sw/source/filter/ww8/ww8par6.cxx
    6202 ./vcl/win/source/window/salframe.cxx
    6218 ./workdir/CustomTarget/i18npool/collator/collator_zh_zhuyin.cxx
    6219 ./sc/source/core/data/document.cxx
    6240 ./sw/source/filter/ww8/docxattributeoutput.cxx
    6293 ./sw/source/filter/ww8/ww8par.cxx
    6340 ./sal/qa/osl/file/osl_File.cxx
    6418 ./workdir/CustomTarget/i18npool/collator/collator_zh_charset.cxx
    6418 ./workdir/CustomTarget/i18npool/collator/collator_zh_stroke.cxx
    6419 ./workdir/CustomTarget/i18npool/collator/collator_zh_pinyin.cxx
    6613 ./toolkit/source/awt/vclxwindows.cxx
    6866 ./workdir/CustomTarget/i18npool/collator/collator_ja_phonetic_alphanumeric_first.cxx
    6898 ./workdir/CustomTarget/i18npool/collator/collator_ja_charset.cxx
    7024 ./workdir/CustomTarget/i18npool/collator/collator_ja_phonetic_alphanumeric_last.cxx
    7027 ./workdir/LexTarget/connectivity/source/parse/sqlflex.cxx
    7332 ./filter/source/msfilter/msdffimp.cxx
    7391 ./sw/source/filter/ww8/ww8scan.cxx
    7427 ./workdir/CustomTarget/i18npool/collator/collator_zh_TW_charset.cxx
    7547 ./sw/source/core/layout/paintfrm.cxx
    7745 ./vcl/source/gdi/outdev3.cxx
    7755 ./filter/source/msfilter/svdfppt.cxx
    8059 ./workdir/CustomTarget/i18npool/collator/collator_zh_TW_radical.cxx
    8059 ./workdir/CustomTarget/i18npool/collator/collator_zh_radical.cxx
    8066 ./workdir/CustomTarget/i18npool/collator/collator_zh_TW_stroke.cxx
    8417 ./sc/source/core/tool/interpr1.cxx
    8565 ./oox/source/drawingml/customshapepresets4.cxx
    8565 ./svx/source/customshapes/EnhancedCustomShapeGeometry.cxx
    8936 ./oox/source/drawingml/customshapepresets2.cxx
    9288 ./oox/source/drawingml/customshapepresets3.cxx
    9453 ./workdir/CustomTarget/writerfilter/source/OOXMLFactory_wml.cxx
    9714 ./oox/source/drawingml/customshapepresets5.cxx
    9760 ./vcl/source/window/window.cxx
    9792 ./oox/source/drawingml/customshapepresets1.cxx
    9876 ./sc/source/ui/unoobj/cellsuno.cxx
   10745 ./workdir/CustomTarget/i18npool/collator/collator_ko_charset.cxx
   10884 ./workdir/YaccTarget/connectivity/source/parse/sqlbison.cxx
   12028 ./vcl/source/gdi/pdfwriter_impl.cxx
   16355 ./sal/qa/OStringBuffer/rtl_OStringBuffer.cxx
   19676 ./workdir/UnpackedTarball/hunspell/src/hunspell/utf_info.cxx
   24509 ./workdir/CustomTarget/i18npool/breakiterator/dict_ja.cxx
   54048 ./workdir/CustomTarget/i18npool/breakiterator/dict_zh.cxx

here the source that are 300k+
304    ./oox/source/drawingml/customshapepresets4.cxx
312    ./filter/source/msfilter/msdffimp.cxx
320    ./oox/source/drawingml/customshapepresets2.cxx
328    ./filter/source/msfilter/svdfppt.cxx
328    ./oox/source/drawingml/customshapepresets3.cxx
328    ./workdir/CustomTarget/i18npool/collator/collator_my_dictionary.cxx
344    ./oox/source/drawingml/customshapepresets5.cxx
344    ./vcl/source/window/window.cxx
352    ./oox/source/drawingml/customshapepresets1.cxx
368    ./svx/source/customshapes/EnhancedCustomShapeGeometry.cxx
408    ./sc/source/ui/unoobj/cellsuno.cxx
456    ./vcl/source/gdi/pdfwriter_impl.cxx
512    ./sal/qa/OStringBuffer/rtl_OStringBuffer.cxx
528    ./workdir/YaccTarget/connectivity/source/parse/sqlbison.cxx
544    ./workdir/UnpackedTarball/hunspell/src/hunspell/utf_info.cxx
552    ./workdir/CustomTarget/i18npool/textconversion/stc_char.cxx
648    ./workdir/CustomTarget/writerfilter/source/OOXMLFactory_wml.cxx
792    ./workdir/CustomTarget/i18npool/collator/collator_zh_zhuyin.cxx
816    ./workdir/CustomTarget/i18npool/collator/collator_zh_charset.cxx
816    ./workdir/CustomTarget/i18npool/collator/collator_zh_pinyin.cxx
816    ./workdir/CustomTarget/i18npool/collator/collator_zh_stroke.cxx
872    ./workdir/CustomTarget/i18npool/collator/collator_ja_phonetic_alphanumeric_first.cxx
880    ./workdir/CustomTarget/i18npool/collator/collator_ja_charset.cxx
896    ./workdir/CustomTarget/i18npool/collator/collator_ja_phonetic_alphanumeric_last.cxx
944    ./workdir/CustomTarget/i18npool/collator/collator_zh_TW_charset.cxx
1024    ./workdir/CustomTarget/i18npool/collator/collator_zh_TW_radical.cxx
1024    ./workdir/CustomTarget/i18npool/collator/collator_zh_TW_stroke.cxx
1024    ./workdir/CustomTarget/i18npool/collator/collator_zh_radical.cxx
1368    ./workdir/CustomTarget/i18npool/collator/collator_ko_charset.cxx
3136    ./workdir/CustomTarget/i18npool/breakiterator/dict_ja.cxx
7032    ./workdir/CustomTarget/i18npool/breakiterator/dict_zh.cxx

Note that the breakiterator monster are actually not really code...
but just a big 5 or 6 big static array of data.
Note the customshapepresets<n>.cxx that where broken up. originally
that was just one file, but it was killing the compiler....

combining impedit would make it the biggest non-generated source...

Not that this in itself would prevent doing that... but there maybe
unintended consequences....

Norbert


More information about the LibreOffice mailing list