To comment on the following update, log in, then open the issue:
http://www.openoffice.org/issues/show_bug.cgi?id=110200
                 Issue #|110200
                 Summary|solenv: EXTERNAL_LINKFLAGS
               Component|tools
                 Version|DEV300m75
                Platform|All
                     URL|
              OS/Version|All
                  Status|NEW
       Status whiteboard|
                Keywords|
              Resolution|
              Issue type|ENHANCEMENT
                Priority|P3
            Subcomponent|solenv
             Assigned to|sb
             Reported by|sb





------- Additional comments from s...@openoffice.org Wed Mar 17 16:43:53 +0000 
2010 -------
The attached external_linkflags.patch (DEV300_m75-based CWS sb121) was a
misguided attempt at fixing issue 106985 by passing a -Wl,-z,noexecstack from
solenv/inc/unxlng.mk to external modules.

Though the attempt was misguided and thus abandoned (see issue 106985 for
details), the conceived mechanism to pass on certain linker flags (that are not
only relevant for building genuine OOo modules, but also for building external
modules) from solenv/inc to external modules is probably worth implementing, 
anyway:

- Platform-specific solenv/inc/*.mk set new EXTERNAL_LINKFLAGS to those linker
flags that are not only relevant for building genuine OOo modules, but also for
building external modules.  This probably covers unxmacx.mk's EXTRA_LINKFLAGS
and unxsolu4.mk's ARCH_FLAGS.

- makefile.mks of external modules pass EXTERNAL_LINKFLAGS, potentially extended
with module-specific flags, on to their CONFIGURE/BUILD_ACTIONs.  The canonic
way to do this would be
  my_ldflags = $(EXTERNAL_LINKFLAGS)
  ...
  my_ldflags += ...
  ...
  CONFIGURE_FLAGS += LDFLAGS='$(my_ldflags)'
(This depends on the OOo build system itself not using LDFLAGS, not setting it
in set_soenv.in and not using it in any makefiles, except to pass it to
CONFIGURE/BUILD_ACTIONs of external modules.  If this ever changes, the correct
thing would probably be to use LDFLAGS='$(LDFLAGS) $(my_ldflags)' in the last
line above.)

The attached external_linkflags.patch does this, partially.  I stopped when I
noticed that within moz, LDFLAGS (i.e., disabling execstack) was only propagated
to part of the built directories (i.e., some of the resulting libs correctly had
no execstack, while others erroneously still had)---something similar to the
patch to nss/nss.patch would probably be necessary there.  Also, exporting
MACOSX EXTRA_LINKFLAGS as LDFLAGS in solenv/inc/tg_ext.mk would have to be
removed, but it would also have to be checked that all relevant external modules
do receive correct LDFLAGS through their makefile.mks (a way to do this might be
to do "LDFLAGS=BAD_VALUE build --all" and see where it breaks).

---------------------------------------------------------------------
Please do not reply to this automatically generated notification from
Issue Tracker. Please log onto the website and enter your comments.
http://qa.openoffice.org/issue_handling/project_issues.html#notification

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@tools.openoffice.org
For additional commands, e-mail: issues-h...@tools.openoffice.org


---------------------------------------------------------------------
To unsubscribe, e-mail: allbugs-unsubscr...@openoffice.org
For additional commands, e-mail: allbugs-h...@openoffice.org

Reply via email to