Apache OpenOffice (AOO) Bugzilla – Issue 58852
UNXSUFFIX should be defined by the makefiles
Last modified: 2013-02-07 21:54:58 UTC
UNXSUFFIX was set up by issue 16860 to help with MACOSX but the definition is hardcoded in scp2 and now there are two flavours of MACOSX. It would be better for all platforms to take the definition from the solenv/inc/unx*mk files. Notice this usage: inc/macros.inc: #define LIBNAME(name) STRING(CONCAT5(lib,name,OFFICEUPD,DLLSUFFIX,UNXSUFFIX)) DLLSUFFIX is passed in on the command line by -DDLLSUFFIX but UNXSUFFIX is hard coded thus: #ifdef UNX #ifdef MACOSX #define UNXSUFFIX .dylib #else #define UNXSUFFIX .so #endif #endif But .dylib and .so are already defined in solenv/inc/unx*mk for example: DLLPOST=.so By copying how DLLSUFFIX is handled it may be possible to do this: (a) remove the #define UNXSUFFIX from scp2 (b) patch solenv/inc/pstrules.mk as follows: --- pstrules.mk 8 Sep 2005 09:38:11 -0000 1.37 +++ pstrules.mk 4 Dec 2005 12:52:44 -0000 @@ -201,7 +201,7 @@ .IF "$(OS)"=="SOLARIS" cpp.lcc -+ -P $(CDEFS) $(SCPDEFS) -DDLLSUFFIX=$(DLLSUFFIX) -I. -I$(INC) -I$(INCLOCAL) -I$(INCGUI) -I$(INCCOM) $(SOLARINC) $(*:b).scp > $(MISC)$/{$(subst,$(@:d:d:d), $(@:d:d))}$/$(*:b).pre .ELSE - cpp.lcc -+ -P $(CDEFS) $(SCPDEFS) -DDLLSUFFIX=$(DLLSUFFIX) -I. -I$(INC) -I$(INCLOCAL) -I$(INCGUI) -I$(INCCOM) $(SOLARINC) $(*:b).scp > $(MISC)$/{$(subst,$(@:d:d:d), $(@:d:d))}$/$(*:b).pre + cpp.lcc -+ -P $(CDEFS) $(SCPDEFS) -DDLLSUFFIX=$(DLLSUFFIX) -DUNXSUFFIX=$(DLLPOST) -I. -I$(INC) -I$(INCLOCAL) -I$(INCGUI) -I$(INCCOM) $(SOLARINC) $(*:b).scp > $(MISC)$/{$(subst,$(@:d:d:d), $(@:d:d))}$/$(*:b).pre .ENDIF .ENDIF .IF "$(common_build_srs)"!="" But need to check if this has any side effects, and have all platforms set DLLPOST correctly?
ause, this is one for you ;-)
DLLPOST is used for all platforms to assemble shared library targets. so i assume it set... your proposed change is fine if you remove the "special handling" for SOLARIS :) #i58965# gives an impression where i would like to see scp2 moving to...