Commit Graph

335174 Commits

Author SHA1 Message Date
Michael Stahl
3f0ee22ed7 gbuild: clean up naming of PDB files for MSVC
There are 2 of these, one is written to by cl.exe and read by link.exe
and the second one written by link.exe.  Name the second one as the
linktargetname with .pdb appended, no need to substitue 5 different
crazy suffixes.

Change-Id: I2decad898ed1292b069bdda3124ce6f6c3667108
2013-09-22 11:08:34 +02:00
Michael Stahl
2cfef67cd5 gbuild: MSVC: ignore LIBS for static libraries
Not sure if it causes actual problems but all other platforms ignore
LIBS on static libraries already when linking.

Change-Id: I8a5ff4b2243b625827f82b0f64f007cea7c9d7c5
2013-09-22 11:08:34 +02:00
Michael Stahl
520c7dc9e8 gbuild: remove static libraries from OUTDIR
Refactor to find and link static libraries directly in WORKDIR.

- gb_StaticLibrary_get_target is now same as the gb_LinkTarget_get_target
- fix the StaticLibrary clean target

Change-Id: Icf29d32d6487747a2e39d4599ceebccfead04667
2013-09-22 11:08:33 +02:00
Michael Stahl
f33c8644c0 stop delivering lots of external static libraries
Change-Id: Id0c5908adbdec40346c1b62304d1f72ed077ca54
2013-09-22 11:08:33 +02:00
Michael Stahl
2f6261fa07 find lots of external static libraries in UnpackedTarball dir
Note: do NOT put file paths to static libraries into FOO_LIBS variables
that are passed to bundled externals that are built with --enable-static:
on Mac OS X this will result in .a archives that contain other .a
archives as entries, and trying to link those results in errors like:

ld: warning: ignoring file .../libodfgen-0.0.a, file was built for
archive which is not the architecture being linked (i386)

Change-Id: If2c5a458058e4da76f80b3643e55b489d1edee24
2013-09-22 11:08:33 +02:00
Michael Stahl
8b4deabeed gbuild: rename LinkTarget variable LIBS
LIBS is apparently used by autotools build system and passed to
configure at least in mythes and hunspell, where the LinkTarget variable
could cause problems by inheritance.

Change-Id: Ia267dd0a24c96914208869d7b47552b44a701735
2013-09-22 11:08:33 +02:00
Michael Stahl
f861ae6acd gbuild: change linking order on ELF platforms
If there are static libraries in $(LIBS) then things get really annoying
if they depend on other static libs that are StaticLibraries, e.g. orcus
and boost_system.  So reorder this to include $(LIBS) in the --start-group
--end-group and hope that doesn't break anything.

Hopefully $(LIBS) does not need -Wl$(COMMA)--no-as-needed, that should
only be required for $(LINKEDLIBS).

Change-Id: Ie15239a0fb7b5295f85941150e2c60912be73bfb
2013-09-22 11:08:33 +02:00
Michael Stahl
f2899508b3 gbuild: remove executables from OUTDIR and WORKDIR
Call and link executables directly in INSTDIR.

- gb_Library_get_target is now same as the gb_LinkTarget_get_target
- disable gb_Library_add_auxtarget, no auxtargets need to be copied
- adjust paths of all external executables to OUTDIR_FOR_BUILD for now
- use lazy assignment instead of := in AllLangResTarget because it's
  read before Executable
- link.exe generates an import library for lots of executables
  because they export symbols, especially since commit
  0ffab9363d
  "force 'main' to always be DLLPUBLIC."

Change-Id: I3e1ee7425dd430bb83c7cd59e265869a0541b38d
2013-09-22 11:08:32 +02:00
Michael Stahl
4c51feb06e add some dependencies on ure/services.rdb
... so that custom targets in i18npool run.  Can't remember if that is a
pre-existing problem or caused by one of my changes.

Change-Id: Ic0aa1f2b8600f4951d30a5ac6f3ade1a4fb2d313
2013-09-22 11:08:32 +02:00
Michael Stahl
764e688fcf desktop: soffice.bin and unopkg.bin cleanup
Clean up the horrible mess around unopkg.bin unopkg.com unopkg.exe and
soffice.bin soffice.exe and crashrep.com executables and associated
renaming via Packages in the desktop makefiles by simply using
RepositoryFixes to correct the names.

Change-Id: I4d3a549462cfa90a63d62b35db1b0407b25239f7
2013-09-22 11:08:32 +02:00
Michael Stahl
814ec7640f cli_ure: copy cli_basetypes to INSTDIR/sdk/bin
The library is already in the URE/bin directory, but that is not
sufficient to be able to run sdk/bin/climaker.exe.

There are apparently 4 ways for a .net/CLR executable to locate
shared libraries:
1) in the same directory as the executable
2) in some mysterious "GAC" thing in C:/Windows
   (which is presumably how it works if you actually install LO)
3) via an application configuration file entry "probing",
   which only works when it's in a sub-directory of the
   one the executable is in
4) via a DEVPATH variable, but that only works with a
   special configuration entry in a system "machine config" file
   of the .net framework

Specifically PATH is apparently ignored.  Since building on Windows is
enough of a PITA already and we don't want developers to have to edit
another config file, put another copy of the library into sdk/bin.

http://tutorials.csharp-online.net/.NET_CLR_Components%E2%80%94Resolving_Names_to_Locations
http://tutorials.csharp-online.net/.NET_CLR_Components%E2%80%94CLR_Loader

Change-Id: I511957ad9a9a918ed0c316126304a1980fb2d289
2013-09-22 11:08:32 +02:00
Michael Stahl
4ac934946e cli_ure: cleanup in Library_cli_cppuhelper_native
Change-Id: I76b4815208354e78eb3575982235b6f26f1e02fd
2013-09-22 11:08:31 +02:00
Michael Stahl
a546bf8d5b pyuno: rename the python wrapper executable
Putting it in a subdirectory on solver is no longer necessary since
python3 started delivering to INSTDIR, so lose the crazy naming.

Change-Id: I17e924e5d872768a64f6a3112f1294f3def7120e
2013-09-22 11:08:31 +02:00
Michael Stahl
70f834827b sal: rename "cppunit/cppunittester" executable
... and put it in OOO layer since it's used by the smoketest instset.

It was in subdirectory for hysteric reasons, to pick up libraries from
module local output directories in the dmake build system.

Change-Id: I73b66672b17ede52c03071eb2ddee1a23c059ea9
2013-09-22 11:08:31 +02:00
Michael Stahl
5e300e9030 odk: remove Package_bin, instead auto-install executables
This is somewhat annoying since it requires re-introducing stupid
directories in scp2, but if the executables should be put in INSTDIR
directly then the Package_bin needs to go.

Change-Id: I893694c7f9d4cb5b9ef8ec4a3d30e08536223740
2013-09-22 11:08:31 +02:00
Michael Stahl
def1a59d18 gbuild: add a SHLXTHDL layer for libraries
... because this is the time of day when one thinks, wouldn't life
simply be more awesome if there were a SHLXTHDL layer?

Change-Id: I02df8a8bf9d7d641ea060e2cfef6643fe2202353
2013-09-22 11:08:31 +02:00
Michael Stahl
70c35265f5 gbuild: remove libraries from OUTDIR and WORKDIR
Refactor everything to find and link libraries directly in INSTDIR.

- add gb_LinkTarget_get_linksearchpath_for_layer, and use it to set up
  -L paths for T_LDFLAGS in such a way that only allowed libraries
  can be linked against; i.e. it's not possible to link URE
  linktargets against OOO or not-installed libraries
- gb_Library_get_target is now same as the gb_LinkTarget_get_target
  (TODO: this needs cleanup)
- since a pattern rule won't work for linking libraries in INSTDIR,
  add a separate per-file rule for every INSTDIR lib
- pattern rule can't find link target in the clean target any more
  so add a LINKTARGET variable
- disable gb_Library_add_auxtarget, no auxtargets need to be copied
- tweak the call to gb_Library_Library_platform to pass in a path
  in sdk/lib for the versioned URE libs
- fix the Library clean target
- add LAYER parameter to gb_LinkTarget_LinkTarget
- adjust platform link commands
- MSVC link command now uses explicit -manifestfile and -pdb
  parameters to keep misc. files out of INSTDIR
- remove gb_Helper_OUTDIR_FOR_BUILDLIBDIR
- adjust Extension, CppunitTest,  JunitTest, PythonTest, Gallery,
  various CustomTargets to search INSTDIR
- remove SDK library symlinks and import libs from odk/Package_lib
- on Mac OS X, put .dylib symlinks into sdk/lib even though those
  are not packaged and would be created by the SDK configury;
  we need these to be somewhere for linking anyway
- add a (unfortunately cyclic) dependency on Package ure_install to sal

Change-Id: I70d88742f8c8232ad7b9521416275c67b64fe6cf
2013-09-22 11:08:31 +02:00
Michael Stahl
c0c7df9146 odk: remove cli_cppuhelper from Package_cli
It is actually installed by scp2/source/ooo/ure.scp already.

Change-Id: I0ca538e3d6c52b1e228f1b1191778d8fb5d84954
2013-09-22 11:08:30 +02:00
Michael Stahl
4de7b4089e unowinreg.dll is not in OOO layer
Change-Id: Ib22fcbe5e9427750196f11c512fd4d3134108731
2013-09-22 11:08:30 +02:00
Michael Stahl
1b736bf55e Repository.mk: adjust layer of libraries in smoketest instset
These are currently installed in the "program" dir, whether that is a
good idea or not.

Change-Id: I842bc0a72f9a6f78462ad18151cd42f85753aadf
2013-09-22 11:08:30 +02:00
Michael Stahl
30fe6781ea Revert "fdo#51115: gb_Extension_add_file: fix Windows build:"
This actually should no longer be necessary since AUXTARGETS were fixed
in 85b6a93cf4.

This reverts commit e818f8fa1f.
2013-09-22 11:08:30 +02:00
Michael Stahl
b4e37acb2b gbuild: remove SOVERSION variable since it is hardcoded anyway
Change-Id: I625291ea86c1c3caf7fa5400e380defa6d0d0bc8
2013-09-22 11:08:30 +02:00
Michael Stahl
d343c57f98 gbuild: make the versioned library the linktarget on Unixes
If there is a SOVERSION then the versioned library is a real file and
the unversioned one just a symlink; better to have the real file be the
target.

- add gb_Library_UDK_MAJORVER variable for SOVERSION
- remove version parameter of gb_Library_set_soversion_script;
  instead hardcode the SOVERSION since it must be included in the
  file name in gb_Library_FILENAMES anyway
- store the unversioned symlink in the ILIBTARGET variable
- via new gb_Library_get_workdir_target_versionlink function
- removed gb_Helper_install call that resulted in both versioned
  and unversioned libs in instdir

Change-Id: I2c6f1698f0e39fdb2c07964d43ed9485cbca0b30
2013-09-22 11:08:29 +02:00
Michael Stahl
d263c22a09 gbuild: make the DLL the LinkTarget of Library and CppunitTest
... instead of the import lib.  If the DLL is an auxtarget, it cannot
be deleted without annoying errors, and we want to be able to rm -r
$(INSTIDR) and build incrementally from there.

- replace DLLTARGET -> ILIBTARGET
- replace gb_Library_DLLFILENAMES -> gb_Library_FILENAMES
- replace gb_Library_FILENAMES -> gb_Library_ILIBFILENAMES
- replace gb_Library_get_dllname -> gb_Library_get_filename
- replace gb_Library_get_filename -> gb_Library_get_ilibfilename
- replace gb_CppunitTest_get_libfilename -> gb_CppunitTest_get_ilibfilename
- replace gb_LinkTarget_set_dlltarget -> gb_LinkTarget_set_ilibtarget

Change-Id: I92a2f061a653b9b5941f3232d729987b1317b6f8
2013-09-22 11:08:29 +02:00
Michael Stahl
a8ade9621d gbuild: deduplicate gb_Library_get_exports_target
and remove comment obsoleted by 170668d839

Change-Id: Iba8db6214e04480eaf45bcd069ccd8b41fd25874
2013-09-22 11:08:29 +02:00
Michael Stahl
5905dfeaff gbuild: refactor LinkTarget representation
If the link targets are not in workdir then 2 different aspects are
needed: the previously used location relative to workdir's LinkTarget
dir (for all the misc. related targets), and the full target file.

Adding an additional parameter to all LinkTarget functions would be
quite annoying, especially since it would need passing through all the
gb_LinkTarget__use functions in RepositoryExternal.mk; instead encode
both into the linktarget itself, and modify the functions
gb_LinkTarget_get_target to return the target and all others to return
the workdir linktargetname.

- replace gb_Library_get_linktargetname with either:
  * gb_Library__get_workdir_linktargetname
  * gb_Library__get_linktarget_target
  * gb_Library_get_linktarget
- similar for gb_Executable_get_linktargetname
- similar for gb_StaticLibrary_get_linktargetname
- similar for gb_CppunitTest__get_linktargetname
- add calls to gb_LinkTarget__get_workdir_linktargetname where needed

Change-Id: I917ad7957fee50ec2517a9f9cc9ff452c8d97d1b
2013-09-22 11:08:29 +02:00
Bjoern Michaelsen
031fca3aba PoC: no libs in solver
Change-Id: I8efd69d5a6f26fdfd334ff0bc38848eccc7a85fd
2013-09-22 11:08:29 +02:00
Michael Stahl
5eea07334c gbuild: document parameters of LinkTarget methods
Change-Id: Ib22df5811ab07e93a9d7e987b66b12506265bf96
2013-09-22 11:08:28 +02:00
Michael Stahl
8230c26e3d gbuild: add gb_Library_use_restarget
Change-Id: Ic0a2fd3c1adeb55ec27f6a2eb4709be598120fba
2013-09-22 11:08:28 +02:00
Michael Stahl
5fc689c9f7 gbuild: remove unused gb_LinkTarget_use_headers
Change-Id: Idce74274169970bdd35869578cc0046fe502e614
2013-09-22 11:08:28 +02:00
Michael Stahl
6977d51af3 installer: actually WINDOWSBASISROOTNAME was wrong
What _actually_ determines the prefix of the destination is the HostName
property of the scp2 Directory with Style OFFICEDIRECTORY, so check that.
The two are often the same but not when building a LibreOffice_Dev_SDK.

Change-Id: Ic127447ef40731f0967b89ece631f9c7b076720f
2013-09-22 11:08:28 +02:00
Michael Stahl
60530f4716 cppu: rename purpose environment libraries
It would not be necessary to mangle the
affine_uno_uno/log_uno_uno/unsafe_uno_uno library names in
RepositoryFixes.mk if they were simply named right in the first place.

Change-Id: I0fce919549764d2335c5501c1110878b8709fa09
2013-09-22 11:08:28 +02:00
Michael Stahl
6cad907b9e gbuild: gb_SdiObject_get_dep_target does not exist
Change-Id: Id744a6035ad60cc66d791e8ce34b60ad5b200923
2013-09-22 11:08:27 +02:00
Michael Stahl
0a7ceb47ce gbuild: ExternalPackage: fix stupid typo
Change-Id: Ie8d8ac0ead879c90557f8f76d1a63fe9fde764d0
2013-09-22 11:08:27 +02:00
Michael Stahl
adf8a55811 gb_StaticLibrary_set_generated_c_suffix does not exist
Change-Id: I933e811bc4f68ead2e39be9050d9db37a9c924a1
2013-09-22 11:08:27 +02:00
Michael Stahl
10fe27f82c undefined function warning gb_Library__set_soversion_script_platform
Change-Id: I81df2b8d2016a900bdebc0feaa33db7e587ba4bb
2013-09-22 11:08:27 +02:00
Michael Stahl
9f9a89a28a gbuild: remove gb_NoExPrecompiledHeader_get_clean_target
Obsolete since 2bf530153e.

Change-Id: I6a66e14420bd3c6cb7557932a83cf0c4b95cdd11
2013-09-22 11:08:27 +02:00
Michael Stahl
a451a69908 warning C4305: 'return' : truncation from 'int' to 'bool'
... also only deleting an object if it _is_ null is surely an error?
And if the condition were inverted it would be unnecessary too
since operator delete[] handles null fine.

Change-Id: Ib644447437864f9c6f34d13c75598f0e06d86f65
2013-09-22 11:08:26 +02:00
Eike Rathke
a727e93d10 insert on-the-fly-ID if select requested
Change-Id: I2935b211aaee345827d89c63de207c7e4fbc78f4
2013-09-22 02:53:47 +02:00
Eike Rathke
6fa84d1968 in canonicalize() an unknown LangID is temporary
Change-Id: I4ae0f04f6ba5d6d0f9668595adf0b6865a34d6ef
2013-09-22 02:53:47 +02:00
Artur Dryomov
036cf17cac Change TCP servers search blocking delay.
Change-Id: Ia25d064aa5ad030d08a4095e92c3a35fb9b2e68f
2013-09-22 01:31:22 +03:00
Artur Dryomov
7d70990265 Fix possible unexpected search stop.
An executor stops working when a single task got an exception. This
change prevents only one exception from being uncaught, if this will not
help probably everything should be caught.

Change-Id: I76a57fc0b1c759cb66bf13b5cdec7223c384bfa3
2013-09-22 01:31:22 +03:00
Artur Dryomov
13cf8f2599 Change way of saving Bluetooth state one more time.
Read a comment at the ComputersActivity.

Change-Id: I4a933d262c28a08c1e2227a2eabec54ad2cfd16e
2013-09-22 01:31:21 +03:00
Artur Dryomov
afa322020e Change slide width a bit.
Change-Id: I26bdddaf0e74e81ccb32992e70e27d0d123f7502
2013-09-22 01:31:21 +03:00
Eike Rathke
c316097af8 don't copy twice
Change-Id: I664f4fed663ee41ae8f5b857401fbc4a24d02ba5
2013-09-22 00:09:15 +02:00
Eike Rathke
0b80ff0025 handle canonicalization better and share impl
Change-Id: I82c1b899f88e348cfa798558b63b2264d997c33b
2013-09-22 00:03:07 +02:00
Andras Timar
d5295408b1 fdo#58144 - disable the ARP 'Remove' button on Windows XP
Windows installer on Windows XP cannot display messages, when the
installer database is encoded in UTF-8 and support for CTL languages
is not installed. This patch is a workaround, it disables the 'Remove'
button in Control Panel's Add or Remove Programs applet, so the user
has to choose 'Change', and has to uninstall LibreOffice with the
Wizard, which does not exhibit the problem.

Initially this bug was not expected, when we changed the enconding
from legacy codepages to UTF-8 - I would say irreversibly.
Then the severity of the bug was underestimated, because usually
uninstallation needs no user interaction, so it does not matter,
if the text is unreadable. However, in some circumstances
uninstallation needs to reboot the computer, and the user needs
to understand the question, whether to reboot now or later.

Change-Id: I7d6b4e82cbe4142d23c29313e43a90fa43944b2f
2013-09-21 23:24:10 +02:00
Eike Rathke
3acc0cc1e5 moved LANGUAGE_DONTKNOW impl detection up
Change-Id: Iba2c7f03420a709c5ee6338c1504b1133a8cb643
2013-09-21 19:54:45 +02:00
Harri Pitkänen
745f594556 Enable Drop Caps for Firefox HTML compatibility mode
Drop Caps tab was disabled in paragraph options when Firefox was
selected in HTML compatibility options and Writer was in HTML
editor mode. There is no need to do that. Firefox and all modern
browsers will display drop caps correctly if they are exported
from LibreOffice.

Change-Id: I9ee0d9647b8e8ed7c57c4b08dc4995ef1b8f91f3
Reviewed-on: https://gerrit.libreoffice.org/6013
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2013-09-21 16:27:02 +00:00
Michael Stahl
ca0169340c sfx2: fix sfx2::sidebar::Theme lifecycle
It's a horrible idea to have global VCL Images, since that will
inevitably crash on shutdown when the static dtor runs after
DeInitVCL, which breaks ~every JunitTest now.

0x00002af6750d2d51 in rtl::Reference<sfx2::sidebar::Theme>::~Reference (this=0x2af6756ceb28 <sfx2::sidebar::Theme::mpInstance>, __in_chrg=<optimized out>)

Try to fix that by moving the global sidebar::Theme instance to
SfxApplication where it can hopefully be deleted before shutdown.

Change-Id: Ia78f1e458699335b53a741b6463ce48af69584a7
2013-09-21 18:17:27 +02:00