1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-12 07:27:57 +00:00

o cosmetic changes, fix typos

o Use libart instead of GPC[1]
o Remove BROKEN for old FreeBSDs. IMHO this is too strict.

Implicitly suggested by:	 "Mikhail T." <mi@aldan.algebra.com>[1]
This commit is contained in:
Maho Nakata 2005-10-31 07:38:42 +00:00
parent 29e8c38c5a
commit 8b4daa4baa
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=146803
96 changed files with 4578 additions and 186 deletions

View File

@ -13,7 +13,10 @@ MASTER_SITES+= http://openoffice.lunarshells.com/sources/ \
ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \
${MASTER_SITE_MOZILLA:S/$/:mozsrc/}
MASTER_SITE_SUBDIR= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc
DISTFILES+= OOo_2.0.0_src.tar.gz gpc231.tar.Z:gpc
DISTFILES+= OOo_2.0.0_src.tar.gz
.if defined(WITH_GPC)
DISTFILES+= gpc231.tar.Z:gpc
.endif
EXTRACT_ONLY= OOo_2.0.0_src.tar.gz
MAINTAINER= openoffice@FreeBSD.org
@ -49,9 +52,6 @@ JAVA_VENDOR= bsdjava
.include <bsd.port.pre.mk>
.include <${FILESDIR}/Makefile.localized>
.if (${OSVERSION} < 503001 && ${OSVERSION} >= 500000) || (${OSVERSION} <= 492000)
BROKEN= "rtld depends on _end symbol. type make -DTRYBROKEN to see how to upgrade your rtld"
.endif
.if ${PERL_LEVEL} < 500600
IGNORE= Install lang/perl5.8 then try again
.endif
@ -114,7 +114,9 @@ BUILD_DEPENDS+= ${ANT}:${PORTSDIR}/devel/apache-ant
LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.endif
.if !defined(WITH_GPC)
LIB_DEPENDS= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl2
.endif
GNU_CONFIGURE= yes
WRKSRC= ${WRKDIR}/OOo_2.0.0rc3_src
CONFIGURE_WRKSRC= ${WRKSRC}/config_office
@ -124,7 +126,7 @@ TCSH?= /bin/tcsh
PKGMESSAGE= ${WRKDIR}/pkg-message
NUMOFPROCESSES?= 1
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype --enable-crashdump=yes --enable-symbols=SMALL
.include <${FILESDIR}/Makefile.knobs>
@ -152,9 +154,11 @@ post-extract:
.if (${OSVERSION} <= 492000)
@cd ${WRKSRC} ; ${PATCH} < ${FILESDIR}/fbsd4-workaroundpatch
.endif
.if defined(WITH_GPC)
@cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz -
@${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/
@${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/
.endif
.if !defined(WITHOUT_MOZILLA)
@${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download
.endif
@ -199,11 +203,6 @@ post-install:
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter
# python post-install script start
# consult instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
@cd ${PREFIX}/${INSTALLATION_BASEDIR}/program ; ${LN} -s python-core-2.3.4 ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core; ${LN} -s python.sh ${PREFIX}/${INSTALLATION_BASEDIR}/program/python
@${CHMOD} +x ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core-2.3.4/bin/python
# python post-install script end
@${PRINTF} "bin/openoffice.org\n" > ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST}

View File

@ -12,6 +12,10 @@ CONFIGURE_ARGS+= --with-java=gij --with-ant-home=${LOCALBASE}/ant
CONFIGURE_ARGS+= --without-java
.endif
.if !defined(WITH_GPC)
CONFIGURE_ARGS+= --enable-libart
.endif
.if defined(WITH_KDE)
CONFIGURE_ARGS+= --enable-kde QTDIR="${QT_PREFIX}"
.endif
@ -113,6 +117,11 @@ pre-fetch:
@${ECHO}
@${ECHO} "You can compile OOo to use Qt/KDE vclplug with"
@${ECHO} "make -DWITH_KDE"
.endif
.if !defined(WITH_GPC)
@${ECHO}
@${ECHO} "You can compile OOo with gpc instead of libart by"
@${ECHO} "make -DWITH_GPC"
.endif
@${ECHO}
@${ECHO} "NOTICE:"

View File

@ -1,7 +1,7 @@
Issutracker : #i53287#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Issuetracker : #i53287#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Index: python/Python-2.3.4.patch
===================================================================

View File

@ -0,0 +1,95 @@
Issuetracker : #i56946#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : An implementation of backtrace at sal/osl/unx
To pass the compilation, we had been preparing dummy function at sal.
We implemented this.
--- sal/osl/unx/backtrace.c Thu Sep 8 23:52:44 2005
+++ sal/osl/unx/backtrace.c Sun Oct 23 09:19:04 2005
@@ -129,6 +129,7 @@
#include <pthread.h>
#include <setjmp.h>
#include <stdio.h>
+#include <stddef.h>
#include "backtrace.h"
#define FRAME_PTR_OFFSET 1
@@ -136,11 +137,55 @@
int backtrace( void **buffer, int max_frames )
{
- return 1;
+ struct frame *fp;
+ jmp_buf ctx;
+ int i;
+ /* get stack- and framepointer */
+ setjmp(ctx);
+ fp = (struct frame*)(((size_t*)(ctx))[FRAME_PTR_OFFSET]);
+ for ( i=0; (i<FRAME_OFFSET) && (fp!=0); i++)
+ fp = fp->fr_savfp;
+ /* iterate through backtrace */
+ for (i=0; fp && fp->fr_savpc && i<max_frames; i++)
+ {
+ /* store frame */
+ *(buffer++) = (void *)fp->fr_savpc;
+ /* next frame */
+ fp=fp->fr_savfp;
+ }
+ return i;
}
void backtrace_symbols_fd( void **buffer, int size, int fd )
{
+ FILE *fp = fdopen( fd, "w" );
+
+ if ( fp )
+ {
+ void **pFramePtr;
+ for ( pFramePtr = buffer; size > 0 && pFramePtr && *pFramePtr; pFramePtr++, size-- )
+ {
+ Dl_info dli;
+ ptrdiff_t offset;
+
+ if ( 0 != dladdr( *pFramePtr, &dli ) )
+ {
+ if ( dli.dli_fname && dli.dli_fbase )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_fbase;
+ fprintf( fp, "%s+0x%x", dli.dli_fname, offset );
+ }
+ if ( dli.dli_sname && dli.dli_saddr )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_saddr;
+ fprintf( fp, "(%s+0x%x)", dli.dli_sname, offset );
+ }
+ }
+ fprintf( fp, "[0x%x]\n", *pFramePtr );
+ }
+ fflush( fp );
+ fclose( fp );
+ }
}
#endif /* defined FREEBSD */
--- sal/osl/unx/backtrace.h Thu Sep 8 23:52:59 2005
+++ sal/osl/unx/backtrace.h Sun Oct 23 09:19:40 2005
@@ -46,6 +46,16 @@
void backtrace_symbols_fd( void **buffer, int size, int fd );
+/* no frame.h on FreeBSD */
+#if defined FREEBSD
+struct frame {
+ long arg0[8];
+ long arg1[6];
+ struct frame *fr_savfp;
+ long fr_savpc;
+};
+#endif
+
#ifdef __cplusplus
} /* extern "C" */
#endif

View File

@ -0,0 +1,173 @@
Issuetracker : #i56947#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : update files at bridges project
catch up version up of bridge project of GNU/Linux
--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Thu Sep 8 07:20:08 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Wed Oct 26 15:10:05 2005
@@ -57,7 +57,7 @@
typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
sal_Int32 nParams, typelib_MethodParameter * pParams,
void ** pCallStack,
- sal_Int64 * pRegisterReturn /* space for register return */ )
+ void * pReturnValue )
{
// pCallStack: ret, [return ptr], this, params
char * pCppStack = (char *)(pCallStack +1);
@@ -74,7 +74,7 @@
{
if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
{
- pUnoReturn = pRegisterReturn; // direct way for simple types
+ pUnoReturn = pReturnValue; // direct way for simple types
}
else // complex return via ptr (pCppReturn)
{
@@ -215,7 +215,7 @@
uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
}
// complex return ptr is set to eax
- *(void **)pRegisterReturn = pCppReturn;
+ *static_cast< void ** >(pReturnValue) = pCppReturn;
}
if (pReturnTypeDescr)
{
@@ -228,7 +228,7 @@
//==================================================================================================
extern "C" void cpp_vtable_call(
int nFunctionIndex, int nVtableOffset, void** pCallStack,
- sal_Int64 nRegReturn )
+ void * pReturnValue )
{
OSL_ENSURE( sizeof(sal_Int32)==sizeof(void *), "### unexpected!" );
@@ -275,7 +275,7 @@
pCppI, aMemberDescr.get(),
((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
0, 0, // no params
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
else
{
@@ -290,7 +290,7 @@
pCppI, aMemberDescr.get(),
0, // indicates void return
1, &aParam,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
@@ -324,7 +324,7 @@
&pInterface, pTD, cpp_acquire );
pInterface->release();
TYPELIB_DANGER_RELEASE( pTD );
- *(void **)&nRegReturn = pCallStack[1];
+ *static_cast< void ** >(pReturnValue) = pCallStack[1];
break;
}
TYPELIB_DANGER_RELEASE( pTD );
@@ -336,7 +336,7 @@
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
--- bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Jun 1 01:32:41 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Oct 26 15:10:04 2005
@@ -9,12 +9,13 @@
.LCFIg0:
movl %esp,%ebp
.LCFIg1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret
.LFEg:
@@ -29,7 +30,7 @@
.LCFIv0:
movl %esp,%ebp
.LCFIv1:
- subl $0x8,%esp # 64bit nRegReturn
+ pushl $0 # 32bit null pointer (returnValue not used)
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
@@ -48,13 +49,14 @@
.LCFIh0:
movl %esp,%ebp
.LCFIh1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
- movl 16(%esp),%edx # 64 bit nRegReturn, upper half
+ movl 16(%esp),%eax # 64bit returnValue, lower half
+ movl 20(%esp),%edx # 64bit returnValue, upper half
leave
ret
.LFEh:
@@ -69,12 +71,13 @@
.LCFIf0:
movl %esp,%ebp
.LCFIf1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- flds 12(%esp) # 64 bit nRegReturn, lower half
+ flds 16(%esp) # 32bit returnValue
leave
ret
.LFEf:
@@ -89,12 +92,13 @@
.LCFId0:
movl %esp,%ebp
.LCFId1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- fldl 12(%esp) # 64 bit nRegReturn
+ fldl 16(%esp) # 64bit returnValue
leave
ret
.LFEd:
@@ -109,12 +113,13 @@
.LCFIc0:
movl %esp,%ebp
.LCFIc1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret $4
.LFEc:

View File

@ -1,4 +1,10 @@
--- config_office/set_soenv.in~ Thu Sep 22 23:30:56 2005
Issuetracker : #i56949#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Add conditional the case of @GCCVER@ >= 30401.
Like GNU/Linux's case, we also need the case for $CVER if @GCCVER@ is equal to or larger than 3.4.1
--- config_office/set_soenv.in Thu Sep 22 23:30:56 2005
+++ config_office/set_soenv.in Sat Oct 1 12:59:30 2005
@@ -347,6 +347,9 @@
$JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386";

View File

@ -1,7 +1,7 @@
Issutracker : #iXXXXX#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
Issuetracker : #iXXXXX#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
o FreeBSD's package manager doesn't allow multiple lines for
@exec and @unexec
o chown is at /usr/sbin/

View File

@ -0,0 +1,38 @@
Issuetracker : #i56952#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at icu project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- icu/icu-2.6.patch Fri Aug 26 20:43:35 2005
+++ icu-2.6.patch Mon Oct 24 18:18:45 2005
@@ -2747,3 +2747,29 @@
commands = pkg_appendToList(commands, NULL, uprv_strdup(stanza));
sprintf(stanza, "@$(RMV) $(TEMP_DIR)/%s", cfile+genFileOffset);
+*** misc/icu/source/config/mh-bsd-gcc Thu May 2 08:48:10 2002
+--- misc/build/icu/source/config/mh-bsd-gcc Mon Oct 24 18:16:57 2005
+***************
+*** 10,21 ****
+--- 10,30 ----
+ GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+
+ ## Flags for position independent code
++ STATICCFLAGS = -fPIC
++ STATICCXXFLAGS = -fPIC
++ STATICCPPFLAGS = -DPIC
+ SHAREDLIBCFLAGS = -fPIC
+ SHAREDLIBCXXFLAGS = -fPIC
+ SHAREDLIBCPPFLAGS = -DPIC
+
+ ## Compiler switch to embed a runtime search path
+ LD_RPATH=
++ ## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH
++ ENABLE_RPATH=YES
++ RPATHLDFLAGS=${LD_RPATH_PRE}'$$ORIGIN'
++
++ #SH# ENABLE_RPATH=YES
++ #SH# RPATHLDFLAGS="${LD_RPATH_PRE}'$$ORIGIN'"
+ LD_RPATH_PRE= -Wl,-rpath,
+
+ ## Compiler switch to embed a library name

View File

@ -1,7 +1,7 @@
Issutracker : #i53288#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : remove circular dependency
Issuetracker : #i53288#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : remove circular dependency
in this case,
core01 is depend on core02-core08, and core0[2-9] and core10

View File

@ -0,0 +1,17 @@
Issuetracker : #i56951#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : javavendors_linux.xml can be used for FreeBSD as well.
javavendors_linux.xml can be used for FreeBSD as well.
--- jvmfwk/distributions/OpenOfficeorg/makefile.mk Thu Sep 8 04:26:17 2005
+++ jvmfwk/distributions/OpenOfficeorg/makefile.mk Sat Oct 22 18:31:16 2005
@@ -49,7 +49,7 @@
.IF "$(GUI)"=="UNX"
.IF "$(OS)"=="MACOSX"
+-$(COPY) javavendors_macosx.xml $(BIN)$/javavendors_ooo.xml
-.ELIF "$(OS)"=="LINUX"
+.ELIF "$(OS)"=="LINUX" || "$(OS)"=="FREEBSD"
+-$(COPY) javavendors_linux.xml $(BIN)$/javavendors_ooo.xml
.ELSE
+-$(COPY) javavendors_unx.xml $(BIN)$/javavendors_ooo.xml

View File

@ -0,0 +1,61 @@
Issuetracker : #i56953#
CWS : N/A
Author : <maho@openoffice.org>
Description : FreeBSD porting : do not hardcode pXX of Java version and FreeBSD native Java is always superior to Linux's one.
1. we had been hard coding Java's version by p1, p2 ... etc. but apparently
it is not a good habit. in this patch we eleminate this.
2. we'd better to use FreeBSD's native Java, and not GNU/Linux's ones if both are exist
in the system. We add 100 as micro version number, so that we treat FreeBSD's version of
java 1.4.1-p10 for example to 1.4.1_110.
--- jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Thu Sep 8 04:31:40 2005
+++ jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Sat Oct 22 18:25:49 2005
@@ -208,7 +208,16 @@
return false;
#if defined(FREEBSD)
if (m_preRelease == Rel_FreeBSD) {
- m_nUpdateSpecial = *pCur;
+ pCur++; //elemnate `p'
+ if (pCur < pEnd && isdigit(*pCur))
+ if (pCur < pEnd)
+ pCur ++;
+ int len = pCur - pLast -1; //elemenate `p'
+ if (len >= 127)
+ return false;
+ strncpy(buf, (pLast+1), len); //elemenate `p'
+ buf[len] = 0;
+ m_nUpdateSpecial = atoi(buf)+100; //hack for FBSD
return true;
}
#endif
@@ -249,27 +258,7 @@
else if (! strcmp(szRelease, "rc3"))
return Rel_RC3;
#if defined (FREEBSD)
- else if (! strcmp(szRelease, "p1"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p2"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p3"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p4"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p5"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p6"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p7"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p8"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p9"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p10"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p11"))
+ else if (! strncmp(szRelease, "p", 1))
return Rel_FreeBSD;
#endif
else

View File

@ -0,0 +1,18 @@
Issuetracker : #i56954#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at libxmlsec project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- libxmlsec/makefile.mk.org Tue Oct 25 15:00:10 2005
+++ libxmlsec/makefile.mk Tue Oct 25 15:00:28 2005
@@ -89,6 +89,9 @@
.IF "$(OS)$(COM)"=="SOLARISC52"
LDFLAGS:=-Wl,-R'$$$$ORIGIN'
.ENDIF # "$(OS)$(COM)"=="SOLARISC52"
+.IF "$(OS)$(COM)"=="FREEBSDGCC"
+LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN'
+.ENDIF # "$(OS)$(COM)"=="FREEBSDGCC"
.EXPORT: LDFLAGS
.ENDIF
CONFIGURE_DIR=

View File

@ -0,0 +1,312 @@
Issuetracker : #i56955#
CWS : N/A
Author : <maho@openoffice.org>
Description : Remove instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
It is desirable to prepare minimal shellscripts as far as possible at
installation part, and possibly, no shellscripts. However,
unfortunately three things had done at shellscripts_pyuno.txt.
1. symlink to python.sh -> python
2. chmod +x program/python-core-2.3.4/bin/python
3. symlink to python-core-2.3.4 -> python-core
solution
0. apply following patch. full build confirmed for SRC680_m134, FreeBSD 5.4-RELEASE.
1. Done in scp2 project: prepare scp2/source/python/shortcut_python.scp and scp2/util/makefile.mk,
and make a symlink to python.sh -> python.
(3. is impossible to solve in this way since we only have python-core-2.3.4.zip in files in scp2.)
2. Do not use program/python-core-2.3.4/bin/python, use program/python.bin instead. python.sh
now executes program/python.bin. this is usual way; see e.g., spadmin etc.
3. change from symlinking python-core-2.3.4->python-core
to adding version number (by replacing by sed) to python.sh which invoke python in OOo,
and we don't have to make a symlink.
suggestion (and not yet done):
4. we can also remove symlink from python.sh to python and
rename python.sh to python. apparently intermidiate python.sh is unnecessary.
currently: python -> python.sh -> python.bin
suggested: python -> python.bin
delivering a shell script python can harm since we have python binary from python project
as well. but this is safe since python (shell script) and python.bin are delivered,
at the same time.
--- scp2/source/python/makefile.mk Fri Sep 9 10:43:01 2005
+++ scp2/source/python/makefile.mk Wed Oct 26 17:12:52 2005
@@ -60,7 +60,8 @@
PARFILES=\
module_python.par \
profileitem_python.par \
- file_python.par
+ file_python.par \
+ shortcut_python.par
ULFFILES= \
module_python.ulf
--- scp2/util/makefile.mk Fri Sep 9 10:52:09 2005
+++ scp2/util/makefile.mk Thu Oct 27 07:25:25 2005
@@ -87,7 +87,8 @@
file_xsltfilter.par \
module_python.par \
file_python.par \
- profileitem_python.par
+ profileitem_python.par \
+ shortcut_python.par
.IF "$(SOLAR_JAVA)"!=""
SCP1FILES += \
--- /dev/null Thu Oct 27 09:59:37 2005
+++ scp2/source/python/shortcut_python.scp Thu Oct 27 09:59:19 2005
@@ -0,0 +1,49 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: shortcut_python.scp,v $
+ *
+ * $Revision: 1.20 $
+ *
+ * last change: $Author: rt $ $Date: 2005/09/09 01:42:03 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+#include "macros.inc"
+
+#ifndef SYSTEM_PYTHON
+#ifdef UNX
+
+Shortcut gid_Shortcut_Python_Sh
+ FileID = gid_File_Python_Sh;
+ Dir = gid_Dir_Program;
+ Name = "python";
+ Styles = (RELATIVE);
+End
+
+#endif
+#endif
--- instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt Thu Aug 18 17:11:29 2005
+++ /dev/null Wed Oct 26 09:51:22 2005
@@ -1,74 +0,0 @@
-%preinstall << END
-# echo Command before installing
-exit 0
-END
-
-%postinstall << END
-# echo Command after installing
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -d $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4 ]
-then
- ln -s python-core-2.3.4 $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python.sh ]
-then
- ln -s python.sh $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python ]
-then
- chmod +x $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python
-fi
-
-exit 0
-END
-
-%preremove << END
-# echo Command before removing
-exit 0
-END
-
-%postremove << END
-# echo Command after removing
-
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-
-exit 0
-END
--- instsetoo_native/inc_openoffice/unix/packagelist.txt Wed Oct 26 17:34:58 2005
+++ instsetoo_native/inc_openoffice/unix/packagelist.txt Thu Oct 27 06:25:32 2005
@@ -233,7 +233,6 @@
Start
module = "gid_Module_Optional_Pyuno"
-script = "shellscripts_pyuno.txt"
solarispackagename = "openofficeorg-pyuno"
solarisrequires = "openofficeorg-core01"
packagename = "openoffice.org-pyuno"
--- pyuno/zipcore/python.sh Fri Sep 9 01:55:24 2005
+++ pyuno/zipcore/python.sh Thu Oct 27 14:48:08 2005
@@ -101,14 +101,14 @@
;;
esac
-PYTHONPATH="$sd_prog":"$sd_prog/python-core/lib":"$sd_prog/python-core/lib/lib-dynload":"$sd_prog/python-core/lib/lib-tk":"$PYTHONPATH"
+PYTHONPATH="$sd_prog":"$sd_prog/python-core-%%PYVERSION%%/lib":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-dynload":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-tk":"$PYTHONPATH"
export PYTHONPATH
-PYTHONHOME="$sd_prog"/python-core
+PYTHONHOME="$sd_prog"/python-core-%%PYVERSION%%
export PYTHONHOME
# set path so that other apps can be started from soffice just by name
PATH="$sd_prog":$PATH
export PATH
-exec "$sd_prog/python-core/bin/python" "$@"
+exec "$sd_prog/python.bin" "$@"
--- pyuno/zipcore/makefile.mk Thu Sep 9 01:55:34 2004
+++ pyuno/zipcore/makefile.mk Thu Oct 27 14:47:34 2005
@@ -12,7 +12,11 @@
PYDIRNAME=python-core-$(PYVERSION)
DESTROOT=$(BIN)$/python-core-$(PYVERSION)
+.IF "$(GUI)" == "UNX"
+PYTHONBINARY=$(BIN)$/python$(EXECPOST).bin
+.ELSE
PYTHONBINARY=$(DESTROOT)$/bin$/python$(EXECPOST)
+.ENDIF
FINDLIBFILES_TMP:=$(subst,/,$/ \
$(shell +$(FIND) $(SOLARLIBDIR)$/python -type f| $(GREP) -v .pyc ))
@@ -29,6 +33,8 @@
$(BIN)$/python.sh : python.sh
-rm -f $@
cat $? > $@
+ sed 's/%%PYVERSION%%/$(PYVERSION)/g' < $@ > $@.new
+ mv $@.new $@
.IF "$(GUI)" == "UNX"
chmod +x $@
.ENDIF
@@ -47,15 +53,21 @@
-rm -f $@
cat $< > $@
-$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+.IF "$(GUI)"== "UNX"
+$(BIN)$/python$(EXECPOST).bin : $(SOLARBINDIR)$/python$(EXECPOST)
-+$(MKDIRHIER) $(@:d)
-rm -f $@
cat $< > $@
-.IF "$(GUI)"== "UNX"
.IF "$(OS)" != "MACOSX"
strip $@
.ENDIF
chmod +x $@
+.ELSE
+$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+ -+$(MKDIRHIER) $(@:d)
+ -rm -f $@
+ cat $< > $@
+ strip $@
.ENDIF
.ENDIF
--- pyuno/prj/d.lst Wed Feb 16 03:46:13 2005
+++ pyuno/prj/d.lst Thu Oct 27 14:52:10 2005
@@ -22,4 +22,5 @@
..\%__SRC%\misc\pyunorc %_DEST%\lib%_EXT%\pyunorc
..\%__SRC%\misc\pyuno.ini %_DEST%\bin%_EXT%\pyuno.ini
..\%__SRC%\bin\python-core-*.zip %_DEST%\bin%_EXT%\python-core-*.zip
+..\%__SRC%\bin\python.bin %_DEST%\bin%_EXT%\python.bin
..\%__SRC%\bin\python.sh %_DEST%\bin%_EXT%\python.sh
--- scp2/source/python/module_python.scp Fri Sep 9 10:43:17 2005
+++ scp2/source/python/module_python.scp Thu Oct 27 14:54:41 2005
@@ -38,7 +38,7 @@
Module gid_Module_Optional_Pyuno
MOD_NAME_DESC ( MODULE_OPTIONAL_PYTHON );
ParentID = gid_Module_Optional;
- Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
+ Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Py_Python_Bin,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
Minimal = NO;
Default = YES;
Styles = ( );
--- scp2/source/python/file_python.scp Fri Sep 9 10:42:31 2005
+++ scp2/source/python/file_python.scp Thu Oct 27 16:41:18 2005
@@ -86,8 +86,17 @@
Name = STRING(CONCAT3(python-core-,PYVERSION,.zip));
Styles = (ARCHIVE);
End
+
+#ifdef UNX
+File gid_File_Py_Python_Bin
+ BIN_FILE_BODY;
+ Dir = gid_Dir_Program;
+ Name = "python.bin";
+ Styles = (PACKED);
+End
#endif
+#endif
// substitute for the python Windows basic scripts

View File

@ -1,4 +1,7 @@
#i54178#
Issuetracker : #i54178#
CWS : hr17
Author: :
Description :
Index: rsc/source/rscpp/makefile.mk
===================================================================

View File

@ -1,7 +1,11 @@
STLPORT_VERSION is 450 for FreeBSD
Issuetracker : #i56956#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : catch up recent version of solenv/inc/unxlngi6.mk
catch up recent version of solenv/inc/unxlngi6.mk and STLPORT_VERSION is 450 in FreeBSD
--- solenv/inc/unxfbsdi.mk~ Thu Sep 8 18:52:53 2005
+++ solenv/inc/unxfbsdi.mk Fri Sep 30 14:08:04 2005
--- solenv/inc/unxfbsdi.mk Wed Oct 5 20:33:12 2005
+++ solenv/inc/unxfbsdi.mk Mon Oct 24 11:13:39 2005
@@ -45,7 +45,7 @@
#LINKOUTPUT_FILTER=" |& $(SOLARENV)$/bin$/msg_filter"
@ -11,8 +15,6 @@ STLPORT_VERSION is 450 for FreeBSD
# enable visibility define in "sal/types.h"
.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
--- solenv/inc/unxfbsdi.mk~ Sat Oct 1 08:52:58 2005
+++ solenv/inc/unxfbsdi.mk Sat Oct 1 12:52:34 2005
@@ -190,8 +190,13 @@
LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive

View File

@ -40,4 +40,3 @@ OO.org does need $LANG to be set to a suitable value.
If you somehow run into problems, please remove the already installed
".openoffice.org2" dir in your homedir. Redo the user
installation and the problems should go away.

View File

@ -13,7 +13,10 @@ MASTER_SITES+= http://openoffice.lunarshells.com/sources/ \
ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \
${MASTER_SITE_MOZILLA:S/$/:mozsrc/}
MASTER_SITE_SUBDIR= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc
DISTFILES+= OOo_2.0.0_src.tar.gz gpc231.tar.Z:gpc
DISTFILES+= OOo_2.0.0_src.tar.gz
.if defined(WITH_GPC)
DISTFILES+= gpc231.tar.Z:gpc
.endif
EXTRACT_ONLY= OOo_2.0.0_src.tar.gz
MAINTAINER= openoffice@FreeBSD.org
@ -49,9 +52,6 @@ JAVA_VENDOR= bsdjava
.include <bsd.port.pre.mk>
.include <${FILESDIR}/Makefile.localized>
.if (${OSVERSION} < 503001 && ${OSVERSION} >= 500000) || (${OSVERSION} <= 492000)
BROKEN= "rtld depends on _end symbol. type make -DTRYBROKEN to see how to upgrade your rtld"
.endif
.if ${PERL_LEVEL} < 500600
IGNORE= Install lang/perl5.8 then try again
.endif
@ -114,7 +114,9 @@ BUILD_DEPENDS+= ${ANT}:${PORTSDIR}/devel/apache-ant
LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.endif
.if !defined(WITH_GPC)
LIB_DEPENDS= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl2
.endif
GNU_CONFIGURE= yes
WRKSRC= ${WRKDIR}/OOo_2.0.0rc3_src
CONFIGURE_WRKSRC= ${WRKSRC}/config_office
@ -124,7 +126,7 @@ TCSH?= /bin/tcsh
PKGMESSAGE= ${WRKDIR}/pkg-message
NUMOFPROCESSES?= 1
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype --enable-crashdump=yes --enable-symbols=SMALL
.include <${FILESDIR}/Makefile.knobs>
@ -152,9 +154,11 @@ post-extract:
.if (${OSVERSION} <= 492000)
@cd ${WRKSRC} ; ${PATCH} < ${FILESDIR}/fbsd4-workaroundpatch
.endif
.if defined(WITH_GPC)
@cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz -
@${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/
@${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/
.endif
.if !defined(WITHOUT_MOZILLA)
@${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download
.endif
@ -199,11 +203,6 @@ post-install:
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter
# python post-install script start
# consult instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
@cd ${PREFIX}/${INSTALLATION_BASEDIR}/program ; ${LN} -s python-core-2.3.4 ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core; ${LN} -s python.sh ${PREFIX}/${INSTALLATION_BASEDIR}/program/python
@${CHMOD} +x ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core-2.3.4/bin/python
# python post-install script end
@${PRINTF} "bin/openoffice.org\n" > ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST}

View File

@ -12,6 +12,10 @@ CONFIGURE_ARGS+= --with-java=gij --with-ant-home=${LOCALBASE}/ant
CONFIGURE_ARGS+= --without-java
.endif
.if !defined(WITH_GPC)
CONFIGURE_ARGS+= --enable-libart
.endif
.if defined(WITH_KDE)
CONFIGURE_ARGS+= --enable-kde QTDIR="${QT_PREFIX}"
.endif
@ -113,6 +117,11 @@ pre-fetch:
@${ECHO}
@${ECHO} "You can compile OOo to use Qt/KDE vclplug with"
@${ECHO} "make -DWITH_KDE"
.endif
.if !defined(WITH_GPC)
@${ECHO}
@${ECHO} "You can compile OOo with gpc instead of libart by"
@${ECHO} "make -DWITH_GPC"
.endif
@${ECHO}
@${ECHO} "NOTICE:"

View File

@ -1,7 +1,7 @@
Issutracker : #i53287#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Issuetracker : #i53287#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Index: python/Python-2.3.4.patch
===================================================================

View File

@ -0,0 +1,95 @@
Issuetracker : #i56946#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : An implementation of backtrace at sal/osl/unx
To pass the compilation, we had been preparing dummy function at sal.
We implemented this.
--- sal/osl/unx/backtrace.c Thu Sep 8 23:52:44 2005
+++ sal/osl/unx/backtrace.c Sun Oct 23 09:19:04 2005
@@ -129,6 +129,7 @@
#include <pthread.h>
#include <setjmp.h>
#include <stdio.h>
+#include <stddef.h>
#include "backtrace.h"
#define FRAME_PTR_OFFSET 1
@@ -136,11 +137,55 @@
int backtrace( void **buffer, int max_frames )
{
- return 1;
+ struct frame *fp;
+ jmp_buf ctx;
+ int i;
+ /* get stack- and framepointer */
+ setjmp(ctx);
+ fp = (struct frame*)(((size_t*)(ctx))[FRAME_PTR_OFFSET]);
+ for ( i=0; (i<FRAME_OFFSET) && (fp!=0); i++)
+ fp = fp->fr_savfp;
+ /* iterate through backtrace */
+ for (i=0; fp && fp->fr_savpc && i<max_frames; i++)
+ {
+ /* store frame */
+ *(buffer++) = (void *)fp->fr_savpc;
+ /* next frame */
+ fp=fp->fr_savfp;
+ }
+ return i;
}
void backtrace_symbols_fd( void **buffer, int size, int fd )
{
+ FILE *fp = fdopen( fd, "w" );
+
+ if ( fp )
+ {
+ void **pFramePtr;
+ for ( pFramePtr = buffer; size > 0 && pFramePtr && *pFramePtr; pFramePtr++, size-- )
+ {
+ Dl_info dli;
+ ptrdiff_t offset;
+
+ if ( 0 != dladdr( *pFramePtr, &dli ) )
+ {
+ if ( dli.dli_fname && dli.dli_fbase )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_fbase;
+ fprintf( fp, "%s+0x%x", dli.dli_fname, offset );
+ }
+ if ( dli.dli_sname && dli.dli_saddr )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_saddr;
+ fprintf( fp, "(%s+0x%x)", dli.dli_sname, offset );
+ }
+ }
+ fprintf( fp, "[0x%x]\n", *pFramePtr );
+ }
+ fflush( fp );
+ fclose( fp );
+ }
}
#endif /* defined FREEBSD */
--- sal/osl/unx/backtrace.h Thu Sep 8 23:52:59 2005
+++ sal/osl/unx/backtrace.h Sun Oct 23 09:19:40 2005
@@ -46,6 +46,16 @@
void backtrace_symbols_fd( void **buffer, int size, int fd );
+/* no frame.h on FreeBSD */
+#if defined FREEBSD
+struct frame {
+ long arg0[8];
+ long arg1[6];
+ struct frame *fr_savfp;
+ long fr_savpc;
+};
+#endif
+
#ifdef __cplusplus
} /* extern "C" */
#endif

View File

@ -0,0 +1,173 @@
Issuetracker : #i56947#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : update files at bridges project
catch up version up of bridge project of GNU/Linux
--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Thu Sep 8 07:20:08 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Wed Oct 26 15:10:05 2005
@@ -57,7 +57,7 @@
typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
sal_Int32 nParams, typelib_MethodParameter * pParams,
void ** pCallStack,
- sal_Int64 * pRegisterReturn /* space for register return */ )
+ void * pReturnValue )
{
// pCallStack: ret, [return ptr], this, params
char * pCppStack = (char *)(pCallStack +1);
@@ -74,7 +74,7 @@
{
if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
{
- pUnoReturn = pRegisterReturn; // direct way for simple types
+ pUnoReturn = pReturnValue; // direct way for simple types
}
else // complex return via ptr (pCppReturn)
{
@@ -215,7 +215,7 @@
uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
}
// complex return ptr is set to eax
- *(void **)pRegisterReturn = pCppReturn;
+ *static_cast< void ** >(pReturnValue) = pCppReturn;
}
if (pReturnTypeDescr)
{
@@ -228,7 +228,7 @@
//==================================================================================================
extern "C" void cpp_vtable_call(
int nFunctionIndex, int nVtableOffset, void** pCallStack,
- sal_Int64 nRegReturn )
+ void * pReturnValue )
{
OSL_ENSURE( sizeof(sal_Int32)==sizeof(void *), "### unexpected!" );
@@ -275,7 +275,7 @@
pCppI, aMemberDescr.get(),
((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
0, 0, // no params
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
else
{
@@ -290,7 +290,7 @@
pCppI, aMemberDescr.get(),
0, // indicates void return
1, &aParam,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
@@ -324,7 +324,7 @@
&pInterface, pTD, cpp_acquire );
pInterface->release();
TYPELIB_DANGER_RELEASE( pTD );
- *(void **)&nRegReturn = pCallStack[1];
+ *static_cast< void ** >(pReturnValue) = pCallStack[1];
break;
}
TYPELIB_DANGER_RELEASE( pTD );
@@ -336,7 +336,7 @@
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
--- bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Jun 1 01:32:41 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Oct 26 15:10:04 2005
@@ -9,12 +9,13 @@
.LCFIg0:
movl %esp,%ebp
.LCFIg1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret
.LFEg:
@@ -29,7 +30,7 @@
.LCFIv0:
movl %esp,%ebp
.LCFIv1:
- subl $0x8,%esp # 64bit nRegReturn
+ pushl $0 # 32bit null pointer (returnValue not used)
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
@@ -48,13 +49,14 @@
.LCFIh0:
movl %esp,%ebp
.LCFIh1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
- movl 16(%esp),%edx # 64 bit nRegReturn, upper half
+ movl 16(%esp),%eax # 64bit returnValue, lower half
+ movl 20(%esp),%edx # 64bit returnValue, upper half
leave
ret
.LFEh:
@@ -69,12 +71,13 @@
.LCFIf0:
movl %esp,%ebp
.LCFIf1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- flds 12(%esp) # 64 bit nRegReturn, lower half
+ flds 16(%esp) # 32bit returnValue
leave
ret
.LFEf:
@@ -89,12 +92,13 @@
.LCFId0:
movl %esp,%ebp
.LCFId1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- fldl 12(%esp) # 64 bit nRegReturn
+ fldl 16(%esp) # 64bit returnValue
leave
ret
.LFEd:
@@ -109,12 +113,13 @@
.LCFIc0:
movl %esp,%ebp
.LCFIc1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret $4
.LFEc:

View File

@ -1,4 +1,10 @@
--- config_office/set_soenv.in~ Thu Sep 22 23:30:56 2005
Issuetracker : #i56949#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Add conditional the case of @GCCVER@ >= 30401.
Like GNU/Linux's case, we also need the case for $CVER if @GCCVER@ is equal to or larger than 3.4.1
--- config_office/set_soenv.in Thu Sep 22 23:30:56 2005
+++ config_office/set_soenv.in Sat Oct 1 12:59:30 2005
@@ -347,6 +347,9 @@
$JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386";

View File

@ -1,7 +1,7 @@
Issutracker : #iXXXXX#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
Issuetracker : #iXXXXX#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
o FreeBSD's package manager doesn't allow multiple lines for
@exec and @unexec
o chown is at /usr/sbin/

View File

@ -0,0 +1,38 @@
Issuetracker : #i56952#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at icu project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- icu/icu-2.6.patch Fri Aug 26 20:43:35 2005
+++ icu-2.6.patch Mon Oct 24 18:18:45 2005
@@ -2747,3 +2747,29 @@
commands = pkg_appendToList(commands, NULL, uprv_strdup(stanza));
sprintf(stanza, "@$(RMV) $(TEMP_DIR)/%s", cfile+genFileOffset);
+*** misc/icu/source/config/mh-bsd-gcc Thu May 2 08:48:10 2002
+--- misc/build/icu/source/config/mh-bsd-gcc Mon Oct 24 18:16:57 2005
+***************
+*** 10,21 ****
+--- 10,30 ----
+ GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+
+ ## Flags for position independent code
++ STATICCFLAGS = -fPIC
++ STATICCXXFLAGS = -fPIC
++ STATICCPPFLAGS = -DPIC
+ SHAREDLIBCFLAGS = -fPIC
+ SHAREDLIBCXXFLAGS = -fPIC
+ SHAREDLIBCPPFLAGS = -DPIC
+
+ ## Compiler switch to embed a runtime search path
+ LD_RPATH=
++ ## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH
++ ENABLE_RPATH=YES
++ RPATHLDFLAGS=${LD_RPATH_PRE}'$$ORIGIN'
++
++ #SH# ENABLE_RPATH=YES
++ #SH# RPATHLDFLAGS="${LD_RPATH_PRE}'$$ORIGIN'"
+ LD_RPATH_PRE= -Wl,-rpath,
+
+ ## Compiler switch to embed a library name

View File

@ -1,7 +1,7 @@
Issutracker : #i53288#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : remove circular dependency
Issuetracker : #i53288#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : remove circular dependency
in this case,
core01 is depend on core02-core08, and core0[2-9] and core10

View File

@ -0,0 +1,17 @@
Issuetracker : #i56951#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : javavendors_linux.xml can be used for FreeBSD as well.
javavendors_linux.xml can be used for FreeBSD as well.
--- jvmfwk/distributions/OpenOfficeorg/makefile.mk Thu Sep 8 04:26:17 2005
+++ jvmfwk/distributions/OpenOfficeorg/makefile.mk Sat Oct 22 18:31:16 2005
@@ -49,7 +49,7 @@
.IF "$(GUI)"=="UNX"
.IF "$(OS)"=="MACOSX"
+-$(COPY) javavendors_macosx.xml $(BIN)$/javavendors_ooo.xml
-.ELIF "$(OS)"=="LINUX"
+.ELIF "$(OS)"=="LINUX" || "$(OS)"=="FREEBSD"
+-$(COPY) javavendors_linux.xml $(BIN)$/javavendors_ooo.xml
.ELSE
+-$(COPY) javavendors_unx.xml $(BIN)$/javavendors_ooo.xml

View File

@ -0,0 +1,61 @@
Issuetracker : #i56953#
CWS : N/A
Author : <maho@openoffice.org>
Description : FreeBSD porting : do not hardcode pXX of Java version and FreeBSD native Java is always superior to Linux's one.
1. we had been hard coding Java's version by p1, p2 ... etc. but apparently
it is not a good habit. in this patch we eleminate this.
2. we'd better to use FreeBSD's native Java, and not GNU/Linux's ones if both are exist
in the system. We add 100 as micro version number, so that we treat FreeBSD's version of
java 1.4.1-p10 for example to 1.4.1_110.
--- jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Thu Sep 8 04:31:40 2005
+++ jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Sat Oct 22 18:25:49 2005
@@ -208,7 +208,16 @@
return false;
#if defined(FREEBSD)
if (m_preRelease == Rel_FreeBSD) {
- m_nUpdateSpecial = *pCur;
+ pCur++; //elemnate `p'
+ if (pCur < pEnd && isdigit(*pCur))
+ if (pCur < pEnd)
+ pCur ++;
+ int len = pCur - pLast -1; //elemenate `p'
+ if (len >= 127)
+ return false;
+ strncpy(buf, (pLast+1), len); //elemenate `p'
+ buf[len] = 0;
+ m_nUpdateSpecial = atoi(buf)+100; //hack for FBSD
return true;
}
#endif
@@ -249,27 +258,7 @@
else if (! strcmp(szRelease, "rc3"))
return Rel_RC3;
#if defined (FREEBSD)
- else if (! strcmp(szRelease, "p1"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p2"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p3"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p4"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p5"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p6"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p7"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p8"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p9"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p10"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p11"))
+ else if (! strncmp(szRelease, "p", 1))
return Rel_FreeBSD;
#endif
else

View File

@ -0,0 +1,18 @@
Issuetracker : #i56954#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at libxmlsec project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- libxmlsec/makefile.mk.org Tue Oct 25 15:00:10 2005
+++ libxmlsec/makefile.mk Tue Oct 25 15:00:28 2005
@@ -89,6 +89,9 @@
.IF "$(OS)$(COM)"=="SOLARISC52"
LDFLAGS:=-Wl,-R'$$$$ORIGIN'
.ENDIF # "$(OS)$(COM)"=="SOLARISC52"
+.IF "$(OS)$(COM)"=="FREEBSDGCC"
+LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN'
+.ENDIF # "$(OS)$(COM)"=="FREEBSDGCC"
.EXPORT: LDFLAGS
.ENDIF
CONFIGURE_DIR=

View File

@ -0,0 +1,312 @@
Issuetracker : #i56955#
CWS : N/A
Author : <maho@openoffice.org>
Description : Remove instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
It is desirable to prepare minimal shellscripts as far as possible at
installation part, and possibly, no shellscripts. However,
unfortunately three things had done at shellscripts_pyuno.txt.
1. symlink to python.sh -> python
2. chmod +x program/python-core-2.3.4/bin/python
3. symlink to python-core-2.3.4 -> python-core
solution
0. apply following patch. full build confirmed for SRC680_m134, FreeBSD 5.4-RELEASE.
1. Done in scp2 project: prepare scp2/source/python/shortcut_python.scp and scp2/util/makefile.mk,
and make a symlink to python.sh -> python.
(3. is impossible to solve in this way since we only have python-core-2.3.4.zip in files in scp2.)
2. Do not use program/python-core-2.3.4/bin/python, use program/python.bin instead. python.sh
now executes program/python.bin. this is usual way; see e.g., spadmin etc.
3. change from symlinking python-core-2.3.4->python-core
to adding version number (by replacing by sed) to python.sh which invoke python in OOo,
and we don't have to make a symlink.
suggestion (and not yet done):
4. we can also remove symlink from python.sh to python and
rename python.sh to python. apparently intermidiate python.sh is unnecessary.
currently: python -> python.sh -> python.bin
suggested: python -> python.bin
delivering a shell script python can harm since we have python binary from python project
as well. but this is safe since python (shell script) and python.bin are delivered,
at the same time.
--- scp2/source/python/makefile.mk Fri Sep 9 10:43:01 2005
+++ scp2/source/python/makefile.mk Wed Oct 26 17:12:52 2005
@@ -60,7 +60,8 @@
PARFILES=\
module_python.par \
profileitem_python.par \
- file_python.par
+ file_python.par \
+ shortcut_python.par
ULFFILES= \
module_python.ulf
--- scp2/util/makefile.mk Fri Sep 9 10:52:09 2005
+++ scp2/util/makefile.mk Thu Oct 27 07:25:25 2005
@@ -87,7 +87,8 @@
file_xsltfilter.par \
module_python.par \
file_python.par \
- profileitem_python.par
+ profileitem_python.par \
+ shortcut_python.par
.IF "$(SOLAR_JAVA)"!=""
SCP1FILES += \
--- /dev/null Thu Oct 27 09:59:37 2005
+++ scp2/source/python/shortcut_python.scp Thu Oct 27 09:59:19 2005
@@ -0,0 +1,49 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: shortcut_python.scp,v $
+ *
+ * $Revision: 1.20 $
+ *
+ * last change: $Author: rt $ $Date: 2005/09/09 01:42:03 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+#include "macros.inc"
+
+#ifndef SYSTEM_PYTHON
+#ifdef UNX
+
+Shortcut gid_Shortcut_Python_Sh
+ FileID = gid_File_Python_Sh;
+ Dir = gid_Dir_Program;
+ Name = "python";
+ Styles = (RELATIVE);
+End
+
+#endif
+#endif
--- instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt Thu Aug 18 17:11:29 2005
+++ /dev/null Wed Oct 26 09:51:22 2005
@@ -1,74 +0,0 @@
-%preinstall << END
-# echo Command before installing
-exit 0
-END
-
-%postinstall << END
-# echo Command after installing
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -d $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4 ]
-then
- ln -s python-core-2.3.4 $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python.sh ]
-then
- ln -s python.sh $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python ]
-then
- chmod +x $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python
-fi
-
-exit 0
-END
-
-%preremove << END
-# echo Command before removing
-exit 0
-END
-
-%postremove << END
-# echo Command after removing
-
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-
-exit 0
-END
--- instsetoo_native/inc_openoffice/unix/packagelist.txt Wed Oct 26 17:34:58 2005
+++ instsetoo_native/inc_openoffice/unix/packagelist.txt Thu Oct 27 06:25:32 2005
@@ -233,7 +233,6 @@
Start
module = "gid_Module_Optional_Pyuno"
-script = "shellscripts_pyuno.txt"
solarispackagename = "openofficeorg-pyuno"
solarisrequires = "openofficeorg-core01"
packagename = "openoffice.org-pyuno"
--- pyuno/zipcore/python.sh Fri Sep 9 01:55:24 2005
+++ pyuno/zipcore/python.sh Thu Oct 27 14:48:08 2005
@@ -101,14 +101,14 @@
;;
esac
-PYTHONPATH="$sd_prog":"$sd_prog/python-core/lib":"$sd_prog/python-core/lib/lib-dynload":"$sd_prog/python-core/lib/lib-tk":"$PYTHONPATH"
+PYTHONPATH="$sd_prog":"$sd_prog/python-core-%%PYVERSION%%/lib":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-dynload":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-tk":"$PYTHONPATH"
export PYTHONPATH
-PYTHONHOME="$sd_prog"/python-core
+PYTHONHOME="$sd_prog"/python-core-%%PYVERSION%%
export PYTHONHOME
# set path so that other apps can be started from soffice just by name
PATH="$sd_prog":$PATH
export PATH
-exec "$sd_prog/python-core/bin/python" "$@"
+exec "$sd_prog/python.bin" "$@"
--- pyuno/zipcore/makefile.mk Thu Sep 9 01:55:34 2004
+++ pyuno/zipcore/makefile.mk Thu Oct 27 14:47:34 2005
@@ -12,7 +12,11 @@
PYDIRNAME=python-core-$(PYVERSION)
DESTROOT=$(BIN)$/python-core-$(PYVERSION)
+.IF "$(GUI)" == "UNX"
+PYTHONBINARY=$(BIN)$/python$(EXECPOST).bin
+.ELSE
PYTHONBINARY=$(DESTROOT)$/bin$/python$(EXECPOST)
+.ENDIF
FINDLIBFILES_TMP:=$(subst,/,$/ \
$(shell +$(FIND) $(SOLARLIBDIR)$/python -type f| $(GREP) -v .pyc ))
@@ -29,6 +33,8 @@
$(BIN)$/python.sh : python.sh
-rm -f $@
cat $? > $@
+ sed 's/%%PYVERSION%%/$(PYVERSION)/g' < $@ > $@.new
+ mv $@.new $@
.IF "$(GUI)" == "UNX"
chmod +x $@
.ENDIF
@@ -47,15 +53,21 @@
-rm -f $@
cat $< > $@
-$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+.IF "$(GUI)"== "UNX"
+$(BIN)$/python$(EXECPOST).bin : $(SOLARBINDIR)$/python$(EXECPOST)
-+$(MKDIRHIER) $(@:d)
-rm -f $@
cat $< > $@
-.IF "$(GUI)"== "UNX"
.IF "$(OS)" != "MACOSX"
strip $@
.ENDIF
chmod +x $@
+.ELSE
+$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+ -+$(MKDIRHIER) $(@:d)
+ -rm -f $@
+ cat $< > $@
+ strip $@
.ENDIF
.ENDIF
--- pyuno/prj/d.lst Wed Feb 16 03:46:13 2005
+++ pyuno/prj/d.lst Thu Oct 27 14:52:10 2005
@@ -22,4 +22,5 @@
..\%__SRC%\misc\pyunorc %_DEST%\lib%_EXT%\pyunorc
..\%__SRC%\misc\pyuno.ini %_DEST%\bin%_EXT%\pyuno.ini
..\%__SRC%\bin\python-core-*.zip %_DEST%\bin%_EXT%\python-core-*.zip
+..\%__SRC%\bin\python.bin %_DEST%\bin%_EXT%\python.bin
..\%__SRC%\bin\python.sh %_DEST%\bin%_EXT%\python.sh
--- scp2/source/python/module_python.scp Fri Sep 9 10:43:17 2005
+++ scp2/source/python/module_python.scp Thu Oct 27 14:54:41 2005
@@ -38,7 +38,7 @@
Module gid_Module_Optional_Pyuno
MOD_NAME_DESC ( MODULE_OPTIONAL_PYTHON );
ParentID = gid_Module_Optional;
- Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
+ Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Py_Python_Bin,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
Minimal = NO;
Default = YES;
Styles = ( );
--- scp2/source/python/file_python.scp Fri Sep 9 10:42:31 2005
+++ scp2/source/python/file_python.scp Thu Oct 27 16:41:18 2005
@@ -86,8 +86,17 @@
Name = STRING(CONCAT3(python-core-,PYVERSION,.zip));
Styles = (ARCHIVE);
End
+
+#ifdef UNX
+File gid_File_Py_Python_Bin
+ BIN_FILE_BODY;
+ Dir = gid_Dir_Program;
+ Name = "python.bin";
+ Styles = (PACKED);
+End
#endif
+#endif
// substitute for the python Windows basic scripts

View File

@ -1,4 +1,7 @@
#i54178#
Issuetracker : #i54178#
CWS : hr17
Author: :
Description :
Index: rsc/source/rscpp/makefile.mk
===================================================================

View File

@ -1,7 +1,11 @@
STLPORT_VERSION is 450 for FreeBSD
Issuetracker : #i56956#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : catch up recent version of solenv/inc/unxlngi6.mk
catch up recent version of solenv/inc/unxlngi6.mk and STLPORT_VERSION is 450 in FreeBSD
--- solenv/inc/unxfbsdi.mk~ Thu Sep 8 18:52:53 2005
+++ solenv/inc/unxfbsdi.mk Fri Sep 30 14:08:04 2005
--- solenv/inc/unxfbsdi.mk Wed Oct 5 20:33:12 2005
+++ solenv/inc/unxfbsdi.mk Mon Oct 24 11:13:39 2005
@@ -45,7 +45,7 @@
#LINKOUTPUT_FILTER=" |& $(SOLARENV)$/bin$/msg_filter"
@ -11,8 +15,6 @@ STLPORT_VERSION is 450 for FreeBSD
# enable visibility define in "sal/types.h"
.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
--- solenv/inc/unxfbsdi.mk~ Sat Oct 1 08:52:58 2005
+++ solenv/inc/unxfbsdi.mk Sat Oct 1 12:52:34 2005
@@ -190,8 +190,13 @@
LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive

View File

@ -40,4 +40,3 @@ OO.org does need $LANG to be set to a suitable value.
If you somehow run into problems, please remove the already installed
".openoffice.org2" dir in your homedir. Redo the user
installation and the problems should go away.

View File

@ -13,7 +13,10 @@ MASTER_SITES+= http://openoffice.lunarshells.com/sources/ \
ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \
${MASTER_SITE_MOZILLA:S/$/:mozsrc/}
MASTER_SITE_SUBDIR= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc
DISTFILES+= OOo_2.0.0_src.tar.gz gpc231.tar.Z:gpc
DISTFILES+= OOo_2.0.0_src.tar.gz
.if defined(WITH_GPC)
DISTFILES+= gpc231.tar.Z:gpc
.endif
EXTRACT_ONLY= OOo_2.0.0_src.tar.gz
MAINTAINER= openoffice@FreeBSD.org
@ -49,9 +52,6 @@ JAVA_VENDOR= bsdjava
.include <bsd.port.pre.mk>
.include <${FILESDIR}/Makefile.localized>
.if (${OSVERSION} < 503001 && ${OSVERSION} >= 500000) || (${OSVERSION} <= 492000)
BROKEN= "rtld depends on _end symbol. type make -DTRYBROKEN to see how to upgrade your rtld"
.endif
.if ${PERL_LEVEL} < 500600
IGNORE= Install lang/perl5.8 then try again
.endif
@ -114,7 +114,9 @@ BUILD_DEPENDS+= ${ANT}:${PORTSDIR}/devel/apache-ant
LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.endif
.if !defined(WITH_GPC)
LIB_DEPENDS= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl2
.endif
GNU_CONFIGURE= yes
WRKSRC= ${WRKDIR}/OOo_2.0.0rc3_src
CONFIGURE_WRKSRC= ${WRKSRC}/config_office
@ -124,7 +126,7 @@ TCSH?= /bin/tcsh
PKGMESSAGE= ${WRKDIR}/pkg-message
NUMOFPROCESSES?= 1
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype --enable-crashdump=yes --enable-symbols=SMALL
.include <${FILESDIR}/Makefile.knobs>
@ -152,9 +154,11 @@ post-extract:
.if (${OSVERSION} <= 492000)
@cd ${WRKSRC} ; ${PATCH} < ${FILESDIR}/fbsd4-workaroundpatch
.endif
.if defined(WITH_GPC)
@cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz -
@${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/
@${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/
.endif
.if !defined(WITHOUT_MOZILLA)
@${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download
.endif
@ -199,11 +203,6 @@ post-install:
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter
# python post-install script start
# consult instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
@cd ${PREFIX}/${INSTALLATION_BASEDIR}/program ; ${LN} -s python-core-2.3.4 ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core; ${LN} -s python.sh ${PREFIX}/${INSTALLATION_BASEDIR}/program/python
@${CHMOD} +x ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core-2.3.4/bin/python
# python post-install script end
@${PRINTF} "bin/openoffice.org\n" > ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST}

View File

@ -12,6 +12,10 @@ CONFIGURE_ARGS+= --with-java=gij --with-ant-home=${LOCALBASE}/ant
CONFIGURE_ARGS+= --without-java
.endif
.if !defined(WITH_GPC)
CONFIGURE_ARGS+= --enable-libart
.endif
.if defined(WITH_KDE)
CONFIGURE_ARGS+= --enable-kde QTDIR="${QT_PREFIX}"
.endif
@ -113,6 +117,11 @@ pre-fetch:
@${ECHO}
@${ECHO} "You can compile OOo to use Qt/KDE vclplug with"
@${ECHO} "make -DWITH_KDE"
.endif
.if !defined(WITH_GPC)
@${ECHO}
@${ECHO} "You can compile OOo with gpc instead of libart by"
@${ECHO} "make -DWITH_GPC"
.endif
@${ECHO}
@${ECHO} "NOTICE:"

View File

@ -1,7 +1,7 @@
Issutracker : #i53287#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Issuetracker : #i53287#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Index: python/Python-2.3.4.patch
===================================================================

View File

@ -0,0 +1,95 @@
Issuetracker : #i56946#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : An implementation of backtrace at sal/osl/unx
To pass the compilation, we had been preparing dummy function at sal.
We implemented this.
--- sal/osl/unx/backtrace.c Thu Sep 8 23:52:44 2005
+++ sal/osl/unx/backtrace.c Sun Oct 23 09:19:04 2005
@@ -129,6 +129,7 @@
#include <pthread.h>
#include <setjmp.h>
#include <stdio.h>
+#include <stddef.h>
#include "backtrace.h"
#define FRAME_PTR_OFFSET 1
@@ -136,11 +137,55 @@
int backtrace( void **buffer, int max_frames )
{
- return 1;
+ struct frame *fp;
+ jmp_buf ctx;
+ int i;
+ /* get stack- and framepointer */
+ setjmp(ctx);
+ fp = (struct frame*)(((size_t*)(ctx))[FRAME_PTR_OFFSET]);
+ for ( i=0; (i<FRAME_OFFSET) && (fp!=0); i++)
+ fp = fp->fr_savfp;
+ /* iterate through backtrace */
+ for (i=0; fp && fp->fr_savpc && i<max_frames; i++)
+ {
+ /* store frame */
+ *(buffer++) = (void *)fp->fr_savpc;
+ /* next frame */
+ fp=fp->fr_savfp;
+ }
+ return i;
}
void backtrace_symbols_fd( void **buffer, int size, int fd )
{
+ FILE *fp = fdopen( fd, "w" );
+
+ if ( fp )
+ {
+ void **pFramePtr;
+ for ( pFramePtr = buffer; size > 0 && pFramePtr && *pFramePtr; pFramePtr++, size-- )
+ {
+ Dl_info dli;
+ ptrdiff_t offset;
+
+ if ( 0 != dladdr( *pFramePtr, &dli ) )
+ {
+ if ( dli.dli_fname && dli.dli_fbase )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_fbase;
+ fprintf( fp, "%s+0x%x", dli.dli_fname, offset );
+ }
+ if ( dli.dli_sname && dli.dli_saddr )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_saddr;
+ fprintf( fp, "(%s+0x%x)", dli.dli_sname, offset );
+ }
+ }
+ fprintf( fp, "[0x%x]\n", *pFramePtr );
+ }
+ fflush( fp );
+ fclose( fp );
+ }
}
#endif /* defined FREEBSD */
--- sal/osl/unx/backtrace.h Thu Sep 8 23:52:59 2005
+++ sal/osl/unx/backtrace.h Sun Oct 23 09:19:40 2005
@@ -46,6 +46,16 @@
void backtrace_symbols_fd( void **buffer, int size, int fd );
+/* no frame.h on FreeBSD */
+#if defined FREEBSD
+struct frame {
+ long arg0[8];
+ long arg1[6];
+ struct frame *fr_savfp;
+ long fr_savpc;
+};
+#endif
+
#ifdef __cplusplus
} /* extern "C" */
#endif

View File

@ -0,0 +1,173 @@
Issuetracker : #i56947#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : update files at bridges project
catch up version up of bridge project of GNU/Linux
--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Thu Sep 8 07:20:08 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Wed Oct 26 15:10:05 2005
@@ -57,7 +57,7 @@
typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
sal_Int32 nParams, typelib_MethodParameter * pParams,
void ** pCallStack,
- sal_Int64 * pRegisterReturn /* space for register return */ )
+ void * pReturnValue )
{
// pCallStack: ret, [return ptr], this, params
char * pCppStack = (char *)(pCallStack +1);
@@ -74,7 +74,7 @@
{
if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
{
- pUnoReturn = pRegisterReturn; // direct way for simple types
+ pUnoReturn = pReturnValue; // direct way for simple types
}
else // complex return via ptr (pCppReturn)
{
@@ -215,7 +215,7 @@
uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
}
// complex return ptr is set to eax
- *(void **)pRegisterReturn = pCppReturn;
+ *static_cast< void ** >(pReturnValue) = pCppReturn;
}
if (pReturnTypeDescr)
{
@@ -228,7 +228,7 @@
//==================================================================================================
extern "C" void cpp_vtable_call(
int nFunctionIndex, int nVtableOffset, void** pCallStack,
- sal_Int64 nRegReturn )
+ void * pReturnValue )
{
OSL_ENSURE( sizeof(sal_Int32)==sizeof(void *), "### unexpected!" );
@@ -275,7 +275,7 @@
pCppI, aMemberDescr.get(),
((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
0, 0, // no params
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
else
{
@@ -290,7 +290,7 @@
pCppI, aMemberDescr.get(),
0, // indicates void return
1, &aParam,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
@@ -324,7 +324,7 @@
&pInterface, pTD, cpp_acquire );
pInterface->release();
TYPELIB_DANGER_RELEASE( pTD );
- *(void **)&nRegReturn = pCallStack[1];
+ *static_cast< void ** >(pReturnValue) = pCallStack[1];
break;
}
TYPELIB_DANGER_RELEASE( pTD );
@@ -336,7 +336,7 @@
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
--- bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Jun 1 01:32:41 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Oct 26 15:10:04 2005
@@ -9,12 +9,13 @@
.LCFIg0:
movl %esp,%ebp
.LCFIg1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret
.LFEg:
@@ -29,7 +30,7 @@
.LCFIv0:
movl %esp,%ebp
.LCFIv1:
- subl $0x8,%esp # 64bit nRegReturn
+ pushl $0 # 32bit null pointer (returnValue not used)
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
@@ -48,13 +49,14 @@
.LCFIh0:
movl %esp,%ebp
.LCFIh1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
- movl 16(%esp),%edx # 64 bit nRegReturn, upper half
+ movl 16(%esp),%eax # 64bit returnValue, lower half
+ movl 20(%esp),%edx # 64bit returnValue, upper half
leave
ret
.LFEh:
@@ -69,12 +71,13 @@
.LCFIf0:
movl %esp,%ebp
.LCFIf1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- flds 12(%esp) # 64 bit nRegReturn, lower half
+ flds 16(%esp) # 32bit returnValue
leave
ret
.LFEf:
@@ -89,12 +92,13 @@
.LCFId0:
movl %esp,%ebp
.LCFId1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- fldl 12(%esp) # 64 bit nRegReturn
+ fldl 16(%esp) # 64bit returnValue
leave
ret
.LFEd:
@@ -109,12 +113,13 @@
.LCFIc0:
movl %esp,%ebp
.LCFIc1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret $4
.LFEc:

View File

@ -1,4 +1,10 @@
--- config_office/set_soenv.in~ Thu Sep 22 23:30:56 2005
Issuetracker : #i56949#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Add conditional the case of @GCCVER@ >= 30401.
Like GNU/Linux's case, we also need the case for $CVER if @GCCVER@ is equal to or larger than 3.4.1
--- config_office/set_soenv.in Thu Sep 22 23:30:56 2005
+++ config_office/set_soenv.in Sat Oct 1 12:59:30 2005
@@ -347,6 +347,9 @@
$JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386";

View File

@ -1,7 +1,7 @@
Issutracker : #iXXXXX#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
Issuetracker : #iXXXXX#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
o FreeBSD's package manager doesn't allow multiple lines for
@exec and @unexec
o chown is at /usr/sbin/

View File

@ -0,0 +1,38 @@
Issuetracker : #i56952#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at icu project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- icu/icu-2.6.patch Fri Aug 26 20:43:35 2005
+++ icu-2.6.patch Mon Oct 24 18:18:45 2005
@@ -2747,3 +2747,29 @@
commands = pkg_appendToList(commands, NULL, uprv_strdup(stanza));
sprintf(stanza, "@$(RMV) $(TEMP_DIR)/%s", cfile+genFileOffset);
+*** misc/icu/source/config/mh-bsd-gcc Thu May 2 08:48:10 2002
+--- misc/build/icu/source/config/mh-bsd-gcc Mon Oct 24 18:16:57 2005
+***************
+*** 10,21 ****
+--- 10,30 ----
+ GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+
+ ## Flags for position independent code
++ STATICCFLAGS = -fPIC
++ STATICCXXFLAGS = -fPIC
++ STATICCPPFLAGS = -DPIC
+ SHAREDLIBCFLAGS = -fPIC
+ SHAREDLIBCXXFLAGS = -fPIC
+ SHAREDLIBCPPFLAGS = -DPIC
+
+ ## Compiler switch to embed a runtime search path
+ LD_RPATH=
++ ## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH
++ ENABLE_RPATH=YES
++ RPATHLDFLAGS=${LD_RPATH_PRE}'$$ORIGIN'
++
++ #SH# ENABLE_RPATH=YES
++ #SH# RPATHLDFLAGS="${LD_RPATH_PRE}'$$ORIGIN'"
+ LD_RPATH_PRE= -Wl,-rpath,
+
+ ## Compiler switch to embed a library name

View File

@ -1,7 +1,7 @@
Issutracker : #i53288#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : remove circular dependency
Issuetracker : #i53288#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : remove circular dependency
in this case,
core01 is depend on core02-core08, and core0[2-9] and core10

View File

@ -0,0 +1,17 @@
Issuetracker : #i56951#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : javavendors_linux.xml can be used for FreeBSD as well.
javavendors_linux.xml can be used for FreeBSD as well.
--- jvmfwk/distributions/OpenOfficeorg/makefile.mk Thu Sep 8 04:26:17 2005
+++ jvmfwk/distributions/OpenOfficeorg/makefile.mk Sat Oct 22 18:31:16 2005
@@ -49,7 +49,7 @@
.IF "$(GUI)"=="UNX"
.IF "$(OS)"=="MACOSX"
+-$(COPY) javavendors_macosx.xml $(BIN)$/javavendors_ooo.xml
-.ELIF "$(OS)"=="LINUX"
+.ELIF "$(OS)"=="LINUX" || "$(OS)"=="FREEBSD"
+-$(COPY) javavendors_linux.xml $(BIN)$/javavendors_ooo.xml
.ELSE
+-$(COPY) javavendors_unx.xml $(BIN)$/javavendors_ooo.xml

View File

@ -0,0 +1,61 @@
Issuetracker : #i56953#
CWS : N/A
Author : <maho@openoffice.org>
Description : FreeBSD porting : do not hardcode pXX of Java version and FreeBSD native Java is always superior to Linux's one.
1. we had been hard coding Java's version by p1, p2 ... etc. but apparently
it is not a good habit. in this patch we eleminate this.
2. we'd better to use FreeBSD's native Java, and not GNU/Linux's ones if both are exist
in the system. We add 100 as micro version number, so that we treat FreeBSD's version of
java 1.4.1-p10 for example to 1.4.1_110.
--- jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Thu Sep 8 04:31:40 2005
+++ jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Sat Oct 22 18:25:49 2005
@@ -208,7 +208,16 @@
return false;
#if defined(FREEBSD)
if (m_preRelease == Rel_FreeBSD) {
- m_nUpdateSpecial = *pCur;
+ pCur++; //elemnate `p'
+ if (pCur < pEnd && isdigit(*pCur))
+ if (pCur < pEnd)
+ pCur ++;
+ int len = pCur - pLast -1; //elemenate `p'
+ if (len >= 127)
+ return false;
+ strncpy(buf, (pLast+1), len); //elemenate `p'
+ buf[len] = 0;
+ m_nUpdateSpecial = atoi(buf)+100; //hack for FBSD
return true;
}
#endif
@@ -249,27 +258,7 @@
else if (! strcmp(szRelease, "rc3"))
return Rel_RC3;
#if defined (FREEBSD)
- else if (! strcmp(szRelease, "p1"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p2"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p3"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p4"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p5"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p6"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p7"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p8"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p9"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p10"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p11"))
+ else if (! strncmp(szRelease, "p", 1))
return Rel_FreeBSD;
#endif
else

View File

@ -0,0 +1,18 @@
Issuetracker : #i56954#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at libxmlsec project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- libxmlsec/makefile.mk.org Tue Oct 25 15:00:10 2005
+++ libxmlsec/makefile.mk Tue Oct 25 15:00:28 2005
@@ -89,6 +89,9 @@
.IF "$(OS)$(COM)"=="SOLARISC52"
LDFLAGS:=-Wl,-R'$$$$ORIGIN'
.ENDIF # "$(OS)$(COM)"=="SOLARISC52"
+.IF "$(OS)$(COM)"=="FREEBSDGCC"
+LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN'
+.ENDIF # "$(OS)$(COM)"=="FREEBSDGCC"
.EXPORT: LDFLAGS
.ENDIF
CONFIGURE_DIR=

View File

@ -0,0 +1,312 @@
Issuetracker : #i56955#
CWS : N/A
Author : <maho@openoffice.org>
Description : Remove instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
It is desirable to prepare minimal shellscripts as far as possible at
installation part, and possibly, no shellscripts. However,
unfortunately three things had done at shellscripts_pyuno.txt.
1. symlink to python.sh -> python
2. chmod +x program/python-core-2.3.4/bin/python
3. symlink to python-core-2.3.4 -> python-core
solution
0. apply following patch. full build confirmed for SRC680_m134, FreeBSD 5.4-RELEASE.
1. Done in scp2 project: prepare scp2/source/python/shortcut_python.scp and scp2/util/makefile.mk,
and make a symlink to python.sh -> python.
(3. is impossible to solve in this way since we only have python-core-2.3.4.zip in files in scp2.)
2. Do not use program/python-core-2.3.4/bin/python, use program/python.bin instead. python.sh
now executes program/python.bin. this is usual way; see e.g., spadmin etc.
3. change from symlinking python-core-2.3.4->python-core
to adding version number (by replacing by sed) to python.sh which invoke python in OOo,
and we don't have to make a symlink.
suggestion (and not yet done):
4. we can also remove symlink from python.sh to python and
rename python.sh to python. apparently intermidiate python.sh is unnecessary.
currently: python -> python.sh -> python.bin
suggested: python -> python.bin
delivering a shell script python can harm since we have python binary from python project
as well. but this is safe since python (shell script) and python.bin are delivered,
at the same time.
--- scp2/source/python/makefile.mk Fri Sep 9 10:43:01 2005
+++ scp2/source/python/makefile.mk Wed Oct 26 17:12:52 2005
@@ -60,7 +60,8 @@
PARFILES=\
module_python.par \
profileitem_python.par \
- file_python.par
+ file_python.par \
+ shortcut_python.par
ULFFILES= \
module_python.ulf
--- scp2/util/makefile.mk Fri Sep 9 10:52:09 2005
+++ scp2/util/makefile.mk Thu Oct 27 07:25:25 2005
@@ -87,7 +87,8 @@
file_xsltfilter.par \
module_python.par \
file_python.par \
- profileitem_python.par
+ profileitem_python.par \
+ shortcut_python.par
.IF "$(SOLAR_JAVA)"!=""
SCP1FILES += \
--- /dev/null Thu Oct 27 09:59:37 2005
+++ scp2/source/python/shortcut_python.scp Thu Oct 27 09:59:19 2005
@@ -0,0 +1,49 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: shortcut_python.scp,v $
+ *
+ * $Revision: 1.20 $
+ *
+ * last change: $Author: rt $ $Date: 2005/09/09 01:42:03 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+#include "macros.inc"
+
+#ifndef SYSTEM_PYTHON
+#ifdef UNX
+
+Shortcut gid_Shortcut_Python_Sh
+ FileID = gid_File_Python_Sh;
+ Dir = gid_Dir_Program;
+ Name = "python";
+ Styles = (RELATIVE);
+End
+
+#endif
+#endif
--- instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt Thu Aug 18 17:11:29 2005
+++ /dev/null Wed Oct 26 09:51:22 2005
@@ -1,74 +0,0 @@
-%preinstall << END
-# echo Command before installing
-exit 0
-END
-
-%postinstall << END
-# echo Command after installing
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -d $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4 ]
-then
- ln -s python-core-2.3.4 $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python.sh ]
-then
- ln -s python.sh $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python ]
-then
- chmod +x $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python
-fi
-
-exit 0
-END
-
-%preremove << END
-# echo Command before removing
-exit 0
-END
-
-%postremove << END
-# echo Command after removing
-
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-
-exit 0
-END
--- instsetoo_native/inc_openoffice/unix/packagelist.txt Wed Oct 26 17:34:58 2005
+++ instsetoo_native/inc_openoffice/unix/packagelist.txt Thu Oct 27 06:25:32 2005
@@ -233,7 +233,6 @@
Start
module = "gid_Module_Optional_Pyuno"
-script = "shellscripts_pyuno.txt"
solarispackagename = "openofficeorg-pyuno"
solarisrequires = "openofficeorg-core01"
packagename = "openoffice.org-pyuno"
--- pyuno/zipcore/python.sh Fri Sep 9 01:55:24 2005
+++ pyuno/zipcore/python.sh Thu Oct 27 14:48:08 2005
@@ -101,14 +101,14 @@
;;
esac
-PYTHONPATH="$sd_prog":"$sd_prog/python-core/lib":"$sd_prog/python-core/lib/lib-dynload":"$sd_prog/python-core/lib/lib-tk":"$PYTHONPATH"
+PYTHONPATH="$sd_prog":"$sd_prog/python-core-%%PYVERSION%%/lib":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-dynload":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-tk":"$PYTHONPATH"
export PYTHONPATH
-PYTHONHOME="$sd_prog"/python-core
+PYTHONHOME="$sd_prog"/python-core-%%PYVERSION%%
export PYTHONHOME
# set path so that other apps can be started from soffice just by name
PATH="$sd_prog":$PATH
export PATH
-exec "$sd_prog/python-core/bin/python" "$@"
+exec "$sd_prog/python.bin" "$@"
--- pyuno/zipcore/makefile.mk Thu Sep 9 01:55:34 2004
+++ pyuno/zipcore/makefile.mk Thu Oct 27 14:47:34 2005
@@ -12,7 +12,11 @@
PYDIRNAME=python-core-$(PYVERSION)
DESTROOT=$(BIN)$/python-core-$(PYVERSION)
+.IF "$(GUI)" == "UNX"
+PYTHONBINARY=$(BIN)$/python$(EXECPOST).bin
+.ELSE
PYTHONBINARY=$(DESTROOT)$/bin$/python$(EXECPOST)
+.ENDIF
FINDLIBFILES_TMP:=$(subst,/,$/ \
$(shell +$(FIND) $(SOLARLIBDIR)$/python -type f| $(GREP) -v .pyc ))
@@ -29,6 +33,8 @@
$(BIN)$/python.sh : python.sh
-rm -f $@
cat $? > $@
+ sed 's/%%PYVERSION%%/$(PYVERSION)/g' < $@ > $@.new
+ mv $@.new $@
.IF "$(GUI)" == "UNX"
chmod +x $@
.ENDIF
@@ -47,15 +53,21 @@
-rm -f $@
cat $< > $@
-$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+.IF "$(GUI)"== "UNX"
+$(BIN)$/python$(EXECPOST).bin : $(SOLARBINDIR)$/python$(EXECPOST)
-+$(MKDIRHIER) $(@:d)
-rm -f $@
cat $< > $@
-.IF "$(GUI)"== "UNX"
.IF "$(OS)" != "MACOSX"
strip $@
.ENDIF
chmod +x $@
+.ELSE
+$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+ -+$(MKDIRHIER) $(@:d)
+ -rm -f $@
+ cat $< > $@
+ strip $@
.ENDIF
.ENDIF
--- pyuno/prj/d.lst Wed Feb 16 03:46:13 2005
+++ pyuno/prj/d.lst Thu Oct 27 14:52:10 2005
@@ -22,4 +22,5 @@
..\%__SRC%\misc\pyunorc %_DEST%\lib%_EXT%\pyunorc
..\%__SRC%\misc\pyuno.ini %_DEST%\bin%_EXT%\pyuno.ini
..\%__SRC%\bin\python-core-*.zip %_DEST%\bin%_EXT%\python-core-*.zip
+..\%__SRC%\bin\python.bin %_DEST%\bin%_EXT%\python.bin
..\%__SRC%\bin\python.sh %_DEST%\bin%_EXT%\python.sh
--- scp2/source/python/module_python.scp Fri Sep 9 10:43:17 2005
+++ scp2/source/python/module_python.scp Thu Oct 27 14:54:41 2005
@@ -38,7 +38,7 @@
Module gid_Module_Optional_Pyuno
MOD_NAME_DESC ( MODULE_OPTIONAL_PYTHON );
ParentID = gid_Module_Optional;
- Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
+ Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Py_Python_Bin,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
Minimal = NO;
Default = YES;
Styles = ( );
--- scp2/source/python/file_python.scp Fri Sep 9 10:42:31 2005
+++ scp2/source/python/file_python.scp Thu Oct 27 16:41:18 2005
@@ -86,8 +86,17 @@
Name = STRING(CONCAT3(python-core-,PYVERSION,.zip));
Styles = (ARCHIVE);
End
+
+#ifdef UNX
+File gid_File_Py_Python_Bin
+ BIN_FILE_BODY;
+ Dir = gid_Dir_Program;
+ Name = "python.bin";
+ Styles = (PACKED);
+End
#endif
+#endif
// substitute for the python Windows basic scripts

View File

@ -1,4 +1,7 @@
#i54178#
Issuetracker : #i54178#
CWS : hr17
Author: :
Description :
Index: rsc/source/rscpp/makefile.mk
===================================================================

View File

@ -1,7 +1,11 @@
STLPORT_VERSION is 450 for FreeBSD
Issuetracker : #i56956#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : catch up recent version of solenv/inc/unxlngi6.mk
catch up recent version of solenv/inc/unxlngi6.mk and STLPORT_VERSION is 450 in FreeBSD
--- solenv/inc/unxfbsdi.mk~ Thu Sep 8 18:52:53 2005
+++ solenv/inc/unxfbsdi.mk Fri Sep 30 14:08:04 2005
--- solenv/inc/unxfbsdi.mk Wed Oct 5 20:33:12 2005
+++ solenv/inc/unxfbsdi.mk Mon Oct 24 11:13:39 2005
@@ -45,7 +45,7 @@
#LINKOUTPUT_FILTER=" |& $(SOLARENV)$/bin$/msg_filter"
@ -11,8 +15,6 @@ STLPORT_VERSION is 450 for FreeBSD
# enable visibility define in "sal/types.h"
.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
--- solenv/inc/unxfbsdi.mk~ Sat Oct 1 08:52:58 2005
+++ solenv/inc/unxfbsdi.mk Sat Oct 1 12:52:34 2005
@@ -190,8 +190,13 @@
LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive

View File

@ -40,4 +40,3 @@ OO.org does need $LANG to be set to a suitable value.
If you somehow run into problems, please remove the already installed
".openoffice.org2" dir in your homedir. Redo the user
installation and the problems should go away.

View File

@ -13,7 +13,10 @@ MASTER_SITES+= http://openoffice.lunarshells.com/sources/ \
ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \
${MASTER_SITE_MOZILLA:S/$/:mozsrc/}
MASTER_SITE_SUBDIR= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc
DISTFILES+= OOo_2.0.0_src.tar.gz gpc231.tar.Z:gpc
DISTFILES+= OOo_2.0.0_src.tar.gz
.if defined(WITH_GPC)
DISTFILES+= gpc231.tar.Z:gpc
.endif
EXTRACT_ONLY= OOo_2.0.0_src.tar.gz
MAINTAINER= openoffice@FreeBSD.org
@ -49,9 +52,6 @@ JAVA_VENDOR= bsdjava
.include <bsd.port.pre.mk>
.include <${FILESDIR}/Makefile.localized>
.if (${OSVERSION} < 503001 && ${OSVERSION} >= 500000) || (${OSVERSION} <= 492000)
BROKEN= "rtld depends on _end symbol. type make -DTRYBROKEN to see how to upgrade your rtld"
.endif
.if ${PERL_LEVEL} < 500600
IGNORE= Install lang/perl5.8 then try again
.endif
@ -114,7 +114,9 @@ BUILD_DEPENDS+= ${ANT}:${PORTSDIR}/devel/apache-ant
LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.endif
.if !defined(WITH_GPC)
LIB_DEPENDS= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl2
.endif
GNU_CONFIGURE= yes
WRKSRC= ${WRKDIR}/OOo_2.0.0rc3_src
CONFIGURE_WRKSRC= ${WRKSRC}/config_office
@ -124,7 +126,7 @@ TCSH?= /bin/tcsh
PKGMESSAGE= ${WRKDIR}/pkg-message
NUMOFPROCESSES?= 1
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype --enable-crashdump=yes --enable-symbols=SMALL
.include <${FILESDIR}/Makefile.knobs>
@ -152,9 +154,11 @@ post-extract:
.if (${OSVERSION} <= 492000)
@cd ${WRKSRC} ; ${PATCH} < ${FILESDIR}/fbsd4-workaroundpatch
.endif
.if defined(WITH_GPC)
@cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz -
@${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/
@${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/
.endif
.if !defined(WITHOUT_MOZILLA)
@${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download
.endif
@ -199,11 +203,6 @@ post-install:
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter
# python post-install script start
# consult instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
@cd ${PREFIX}/${INSTALLATION_BASEDIR}/program ; ${LN} -s python-core-2.3.4 ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core; ${LN} -s python.sh ${PREFIX}/${INSTALLATION_BASEDIR}/program/python
@${CHMOD} +x ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core-2.3.4/bin/python
# python post-install script end
@${PRINTF} "bin/openoffice.org\n" > ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST}

View File

@ -12,6 +12,10 @@ CONFIGURE_ARGS+= --with-java=gij --with-ant-home=${LOCALBASE}/ant
CONFIGURE_ARGS+= --without-java
.endif
.if !defined(WITH_GPC)
CONFIGURE_ARGS+= --enable-libart
.endif
.if defined(WITH_KDE)
CONFIGURE_ARGS+= --enable-kde QTDIR="${QT_PREFIX}"
.endif
@ -113,6 +117,11 @@ pre-fetch:
@${ECHO}
@${ECHO} "You can compile OOo to use Qt/KDE vclplug with"
@${ECHO} "make -DWITH_KDE"
.endif
.if !defined(WITH_GPC)
@${ECHO}
@${ECHO} "You can compile OOo with gpc instead of libart by"
@${ECHO} "make -DWITH_GPC"
.endif
@${ECHO}
@${ECHO} "NOTICE:"

View File

@ -1,7 +1,7 @@
Issutracker : #i53287#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Issuetracker : #i53287#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Index: python/Python-2.3.4.patch
===================================================================

View File

@ -0,0 +1,95 @@
Issuetracker : #i56946#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : An implementation of backtrace at sal/osl/unx
To pass the compilation, we had been preparing dummy function at sal.
We implemented this.
--- sal/osl/unx/backtrace.c Thu Sep 8 23:52:44 2005
+++ sal/osl/unx/backtrace.c Sun Oct 23 09:19:04 2005
@@ -129,6 +129,7 @@
#include <pthread.h>
#include <setjmp.h>
#include <stdio.h>
+#include <stddef.h>
#include "backtrace.h"
#define FRAME_PTR_OFFSET 1
@@ -136,11 +137,55 @@
int backtrace( void **buffer, int max_frames )
{
- return 1;
+ struct frame *fp;
+ jmp_buf ctx;
+ int i;
+ /* get stack- and framepointer */
+ setjmp(ctx);
+ fp = (struct frame*)(((size_t*)(ctx))[FRAME_PTR_OFFSET]);
+ for ( i=0; (i<FRAME_OFFSET) && (fp!=0); i++)
+ fp = fp->fr_savfp;
+ /* iterate through backtrace */
+ for (i=0; fp && fp->fr_savpc && i<max_frames; i++)
+ {
+ /* store frame */
+ *(buffer++) = (void *)fp->fr_savpc;
+ /* next frame */
+ fp=fp->fr_savfp;
+ }
+ return i;
}
void backtrace_symbols_fd( void **buffer, int size, int fd )
{
+ FILE *fp = fdopen( fd, "w" );
+
+ if ( fp )
+ {
+ void **pFramePtr;
+ for ( pFramePtr = buffer; size > 0 && pFramePtr && *pFramePtr; pFramePtr++, size-- )
+ {
+ Dl_info dli;
+ ptrdiff_t offset;
+
+ if ( 0 != dladdr( *pFramePtr, &dli ) )
+ {
+ if ( dli.dli_fname && dli.dli_fbase )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_fbase;
+ fprintf( fp, "%s+0x%x", dli.dli_fname, offset );
+ }
+ if ( dli.dli_sname && dli.dli_saddr )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_saddr;
+ fprintf( fp, "(%s+0x%x)", dli.dli_sname, offset );
+ }
+ }
+ fprintf( fp, "[0x%x]\n", *pFramePtr );
+ }
+ fflush( fp );
+ fclose( fp );
+ }
}
#endif /* defined FREEBSD */
--- sal/osl/unx/backtrace.h Thu Sep 8 23:52:59 2005
+++ sal/osl/unx/backtrace.h Sun Oct 23 09:19:40 2005
@@ -46,6 +46,16 @@
void backtrace_symbols_fd( void **buffer, int size, int fd );
+/* no frame.h on FreeBSD */
+#if defined FREEBSD
+struct frame {
+ long arg0[8];
+ long arg1[6];
+ struct frame *fr_savfp;
+ long fr_savpc;
+};
+#endif
+
#ifdef __cplusplus
} /* extern "C" */
#endif

View File

@ -0,0 +1,173 @@
Issuetracker : #i56947#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : update files at bridges project
catch up version up of bridge project of GNU/Linux
--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Thu Sep 8 07:20:08 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Wed Oct 26 15:10:05 2005
@@ -57,7 +57,7 @@
typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
sal_Int32 nParams, typelib_MethodParameter * pParams,
void ** pCallStack,
- sal_Int64 * pRegisterReturn /* space for register return */ )
+ void * pReturnValue )
{
// pCallStack: ret, [return ptr], this, params
char * pCppStack = (char *)(pCallStack +1);
@@ -74,7 +74,7 @@
{
if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
{
- pUnoReturn = pRegisterReturn; // direct way for simple types
+ pUnoReturn = pReturnValue; // direct way for simple types
}
else // complex return via ptr (pCppReturn)
{
@@ -215,7 +215,7 @@
uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
}
// complex return ptr is set to eax
- *(void **)pRegisterReturn = pCppReturn;
+ *static_cast< void ** >(pReturnValue) = pCppReturn;
}
if (pReturnTypeDescr)
{
@@ -228,7 +228,7 @@
//==================================================================================================
extern "C" void cpp_vtable_call(
int nFunctionIndex, int nVtableOffset, void** pCallStack,
- sal_Int64 nRegReturn )
+ void * pReturnValue )
{
OSL_ENSURE( sizeof(sal_Int32)==sizeof(void *), "### unexpected!" );
@@ -275,7 +275,7 @@
pCppI, aMemberDescr.get(),
((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
0, 0, // no params
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
else
{
@@ -290,7 +290,7 @@
pCppI, aMemberDescr.get(),
0, // indicates void return
1, &aParam,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
@@ -324,7 +324,7 @@
&pInterface, pTD, cpp_acquire );
pInterface->release();
TYPELIB_DANGER_RELEASE( pTD );
- *(void **)&nRegReturn = pCallStack[1];
+ *static_cast< void ** >(pReturnValue) = pCallStack[1];
break;
}
TYPELIB_DANGER_RELEASE( pTD );
@@ -336,7 +336,7 @@
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
--- bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Jun 1 01:32:41 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Oct 26 15:10:04 2005
@@ -9,12 +9,13 @@
.LCFIg0:
movl %esp,%ebp
.LCFIg1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret
.LFEg:
@@ -29,7 +30,7 @@
.LCFIv0:
movl %esp,%ebp
.LCFIv1:
- subl $0x8,%esp # 64bit nRegReturn
+ pushl $0 # 32bit null pointer (returnValue not used)
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
@@ -48,13 +49,14 @@
.LCFIh0:
movl %esp,%ebp
.LCFIh1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
- movl 16(%esp),%edx # 64 bit nRegReturn, upper half
+ movl 16(%esp),%eax # 64bit returnValue, lower half
+ movl 20(%esp),%edx # 64bit returnValue, upper half
leave
ret
.LFEh:
@@ -69,12 +71,13 @@
.LCFIf0:
movl %esp,%ebp
.LCFIf1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- flds 12(%esp) # 64 bit nRegReturn, lower half
+ flds 16(%esp) # 32bit returnValue
leave
ret
.LFEf:
@@ -89,12 +92,13 @@
.LCFId0:
movl %esp,%ebp
.LCFId1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- fldl 12(%esp) # 64 bit nRegReturn
+ fldl 16(%esp) # 64bit returnValue
leave
ret
.LFEd:
@@ -109,12 +113,13 @@
.LCFIc0:
movl %esp,%ebp
.LCFIc1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret $4
.LFEc:

View File

@ -1,4 +1,10 @@
--- config_office/set_soenv.in~ Thu Sep 22 23:30:56 2005
Issuetracker : #i56949#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Add conditional the case of @GCCVER@ >= 30401.
Like GNU/Linux's case, we also need the case for $CVER if @GCCVER@ is equal to or larger than 3.4.1
--- config_office/set_soenv.in Thu Sep 22 23:30:56 2005
+++ config_office/set_soenv.in Sat Oct 1 12:59:30 2005
@@ -347,6 +347,9 @@
$JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386";

View File

@ -1,7 +1,7 @@
Issutracker : #iXXXXX#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
Issuetracker : #iXXXXX#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
o FreeBSD's package manager doesn't allow multiple lines for
@exec and @unexec
o chown is at /usr/sbin/

View File

@ -0,0 +1,38 @@
Issuetracker : #i56952#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at icu project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- icu/icu-2.6.patch Fri Aug 26 20:43:35 2005
+++ icu-2.6.patch Mon Oct 24 18:18:45 2005
@@ -2747,3 +2747,29 @@
commands = pkg_appendToList(commands, NULL, uprv_strdup(stanza));
sprintf(stanza, "@$(RMV) $(TEMP_DIR)/%s", cfile+genFileOffset);
+*** misc/icu/source/config/mh-bsd-gcc Thu May 2 08:48:10 2002
+--- misc/build/icu/source/config/mh-bsd-gcc Mon Oct 24 18:16:57 2005
+***************
+*** 10,21 ****
+--- 10,30 ----
+ GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+
+ ## Flags for position independent code
++ STATICCFLAGS = -fPIC
++ STATICCXXFLAGS = -fPIC
++ STATICCPPFLAGS = -DPIC
+ SHAREDLIBCFLAGS = -fPIC
+ SHAREDLIBCXXFLAGS = -fPIC
+ SHAREDLIBCPPFLAGS = -DPIC
+
+ ## Compiler switch to embed a runtime search path
+ LD_RPATH=
++ ## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH
++ ENABLE_RPATH=YES
++ RPATHLDFLAGS=${LD_RPATH_PRE}'$$ORIGIN'
++
++ #SH# ENABLE_RPATH=YES
++ #SH# RPATHLDFLAGS="${LD_RPATH_PRE}'$$ORIGIN'"
+ LD_RPATH_PRE= -Wl,-rpath,
+
+ ## Compiler switch to embed a library name

View File

@ -1,7 +1,7 @@
Issutracker : #i53288#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : remove circular dependency
Issuetracker : #i53288#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : remove circular dependency
in this case,
core01 is depend on core02-core08, and core0[2-9] and core10

View File

@ -0,0 +1,17 @@
Issuetracker : #i56951#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : javavendors_linux.xml can be used for FreeBSD as well.
javavendors_linux.xml can be used for FreeBSD as well.
--- jvmfwk/distributions/OpenOfficeorg/makefile.mk Thu Sep 8 04:26:17 2005
+++ jvmfwk/distributions/OpenOfficeorg/makefile.mk Sat Oct 22 18:31:16 2005
@@ -49,7 +49,7 @@
.IF "$(GUI)"=="UNX"
.IF "$(OS)"=="MACOSX"
+-$(COPY) javavendors_macosx.xml $(BIN)$/javavendors_ooo.xml
-.ELIF "$(OS)"=="LINUX"
+.ELIF "$(OS)"=="LINUX" || "$(OS)"=="FREEBSD"
+-$(COPY) javavendors_linux.xml $(BIN)$/javavendors_ooo.xml
.ELSE
+-$(COPY) javavendors_unx.xml $(BIN)$/javavendors_ooo.xml

View File

@ -0,0 +1,61 @@
Issuetracker : #i56953#
CWS : N/A
Author : <maho@openoffice.org>
Description : FreeBSD porting : do not hardcode pXX of Java version and FreeBSD native Java is always superior to Linux's one.
1. we had been hard coding Java's version by p1, p2 ... etc. but apparently
it is not a good habit. in this patch we eleminate this.
2. we'd better to use FreeBSD's native Java, and not GNU/Linux's ones if both are exist
in the system. We add 100 as micro version number, so that we treat FreeBSD's version of
java 1.4.1-p10 for example to 1.4.1_110.
--- jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Thu Sep 8 04:31:40 2005
+++ jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Sat Oct 22 18:25:49 2005
@@ -208,7 +208,16 @@
return false;
#if defined(FREEBSD)
if (m_preRelease == Rel_FreeBSD) {
- m_nUpdateSpecial = *pCur;
+ pCur++; //elemnate `p'
+ if (pCur < pEnd && isdigit(*pCur))
+ if (pCur < pEnd)
+ pCur ++;
+ int len = pCur - pLast -1; //elemenate `p'
+ if (len >= 127)
+ return false;
+ strncpy(buf, (pLast+1), len); //elemenate `p'
+ buf[len] = 0;
+ m_nUpdateSpecial = atoi(buf)+100; //hack for FBSD
return true;
}
#endif
@@ -249,27 +258,7 @@
else if (! strcmp(szRelease, "rc3"))
return Rel_RC3;
#if defined (FREEBSD)
- else if (! strcmp(szRelease, "p1"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p2"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p3"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p4"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p5"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p6"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p7"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p8"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p9"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p10"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p11"))
+ else if (! strncmp(szRelease, "p", 1))
return Rel_FreeBSD;
#endif
else

View File

@ -0,0 +1,18 @@
Issuetracker : #i56954#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at libxmlsec project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- libxmlsec/makefile.mk.org Tue Oct 25 15:00:10 2005
+++ libxmlsec/makefile.mk Tue Oct 25 15:00:28 2005
@@ -89,6 +89,9 @@
.IF "$(OS)$(COM)"=="SOLARISC52"
LDFLAGS:=-Wl,-R'$$$$ORIGIN'
.ENDIF # "$(OS)$(COM)"=="SOLARISC52"
+.IF "$(OS)$(COM)"=="FREEBSDGCC"
+LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN'
+.ENDIF # "$(OS)$(COM)"=="FREEBSDGCC"
.EXPORT: LDFLAGS
.ENDIF
CONFIGURE_DIR=

View File

@ -0,0 +1,312 @@
Issuetracker : #i56955#
CWS : N/A
Author : <maho@openoffice.org>
Description : Remove instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
It is desirable to prepare minimal shellscripts as far as possible at
installation part, and possibly, no shellscripts. However,
unfortunately three things had done at shellscripts_pyuno.txt.
1. symlink to python.sh -> python
2. chmod +x program/python-core-2.3.4/bin/python
3. symlink to python-core-2.3.4 -> python-core
solution
0. apply following patch. full build confirmed for SRC680_m134, FreeBSD 5.4-RELEASE.
1. Done in scp2 project: prepare scp2/source/python/shortcut_python.scp and scp2/util/makefile.mk,
and make a symlink to python.sh -> python.
(3. is impossible to solve in this way since we only have python-core-2.3.4.zip in files in scp2.)
2. Do not use program/python-core-2.3.4/bin/python, use program/python.bin instead. python.sh
now executes program/python.bin. this is usual way; see e.g., spadmin etc.
3. change from symlinking python-core-2.3.4->python-core
to adding version number (by replacing by sed) to python.sh which invoke python in OOo,
and we don't have to make a symlink.
suggestion (and not yet done):
4. we can also remove symlink from python.sh to python and
rename python.sh to python. apparently intermidiate python.sh is unnecessary.
currently: python -> python.sh -> python.bin
suggested: python -> python.bin
delivering a shell script python can harm since we have python binary from python project
as well. but this is safe since python (shell script) and python.bin are delivered,
at the same time.
--- scp2/source/python/makefile.mk Fri Sep 9 10:43:01 2005
+++ scp2/source/python/makefile.mk Wed Oct 26 17:12:52 2005
@@ -60,7 +60,8 @@
PARFILES=\
module_python.par \
profileitem_python.par \
- file_python.par
+ file_python.par \
+ shortcut_python.par
ULFFILES= \
module_python.ulf
--- scp2/util/makefile.mk Fri Sep 9 10:52:09 2005
+++ scp2/util/makefile.mk Thu Oct 27 07:25:25 2005
@@ -87,7 +87,8 @@
file_xsltfilter.par \
module_python.par \
file_python.par \
- profileitem_python.par
+ profileitem_python.par \
+ shortcut_python.par
.IF "$(SOLAR_JAVA)"!=""
SCP1FILES += \
--- /dev/null Thu Oct 27 09:59:37 2005
+++ scp2/source/python/shortcut_python.scp Thu Oct 27 09:59:19 2005
@@ -0,0 +1,49 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: shortcut_python.scp,v $
+ *
+ * $Revision: 1.20 $
+ *
+ * last change: $Author: rt $ $Date: 2005/09/09 01:42:03 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+#include "macros.inc"
+
+#ifndef SYSTEM_PYTHON
+#ifdef UNX
+
+Shortcut gid_Shortcut_Python_Sh
+ FileID = gid_File_Python_Sh;
+ Dir = gid_Dir_Program;
+ Name = "python";
+ Styles = (RELATIVE);
+End
+
+#endif
+#endif
--- instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt Thu Aug 18 17:11:29 2005
+++ /dev/null Wed Oct 26 09:51:22 2005
@@ -1,74 +0,0 @@
-%preinstall << END
-# echo Command before installing
-exit 0
-END
-
-%postinstall << END
-# echo Command after installing
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -d $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4 ]
-then
- ln -s python-core-2.3.4 $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python.sh ]
-then
- ln -s python.sh $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python ]
-then
- chmod +x $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python
-fi
-
-exit 0
-END
-
-%preremove << END
-# echo Command before removing
-exit 0
-END
-
-%postremove << END
-# echo Command after removing
-
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-
-exit 0
-END
--- instsetoo_native/inc_openoffice/unix/packagelist.txt Wed Oct 26 17:34:58 2005
+++ instsetoo_native/inc_openoffice/unix/packagelist.txt Thu Oct 27 06:25:32 2005
@@ -233,7 +233,6 @@
Start
module = "gid_Module_Optional_Pyuno"
-script = "shellscripts_pyuno.txt"
solarispackagename = "openofficeorg-pyuno"
solarisrequires = "openofficeorg-core01"
packagename = "openoffice.org-pyuno"
--- pyuno/zipcore/python.sh Fri Sep 9 01:55:24 2005
+++ pyuno/zipcore/python.sh Thu Oct 27 14:48:08 2005
@@ -101,14 +101,14 @@
;;
esac
-PYTHONPATH="$sd_prog":"$sd_prog/python-core/lib":"$sd_prog/python-core/lib/lib-dynload":"$sd_prog/python-core/lib/lib-tk":"$PYTHONPATH"
+PYTHONPATH="$sd_prog":"$sd_prog/python-core-%%PYVERSION%%/lib":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-dynload":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-tk":"$PYTHONPATH"
export PYTHONPATH
-PYTHONHOME="$sd_prog"/python-core
+PYTHONHOME="$sd_prog"/python-core-%%PYVERSION%%
export PYTHONHOME
# set path so that other apps can be started from soffice just by name
PATH="$sd_prog":$PATH
export PATH
-exec "$sd_prog/python-core/bin/python" "$@"
+exec "$sd_prog/python.bin" "$@"
--- pyuno/zipcore/makefile.mk Thu Sep 9 01:55:34 2004
+++ pyuno/zipcore/makefile.mk Thu Oct 27 14:47:34 2005
@@ -12,7 +12,11 @@
PYDIRNAME=python-core-$(PYVERSION)
DESTROOT=$(BIN)$/python-core-$(PYVERSION)
+.IF "$(GUI)" == "UNX"
+PYTHONBINARY=$(BIN)$/python$(EXECPOST).bin
+.ELSE
PYTHONBINARY=$(DESTROOT)$/bin$/python$(EXECPOST)
+.ENDIF
FINDLIBFILES_TMP:=$(subst,/,$/ \
$(shell +$(FIND) $(SOLARLIBDIR)$/python -type f| $(GREP) -v .pyc ))
@@ -29,6 +33,8 @@
$(BIN)$/python.sh : python.sh
-rm -f $@
cat $? > $@
+ sed 's/%%PYVERSION%%/$(PYVERSION)/g' < $@ > $@.new
+ mv $@.new $@
.IF "$(GUI)" == "UNX"
chmod +x $@
.ENDIF
@@ -47,15 +53,21 @@
-rm -f $@
cat $< > $@
-$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+.IF "$(GUI)"== "UNX"
+$(BIN)$/python$(EXECPOST).bin : $(SOLARBINDIR)$/python$(EXECPOST)
-+$(MKDIRHIER) $(@:d)
-rm -f $@
cat $< > $@
-.IF "$(GUI)"== "UNX"
.IF "$(OS)" != "MACOSX"
strip $@
.ENDIF
chmod +x $@
+.ELSE
+$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+ -+$(MKDIRHIER) $(@:d)
+ -rm -f $@
+ cat $< > $@
+ strip $@
.ENDIF
.ENDIF
--- pyuno/prj/d.lst Wed Feb 16 03:46:13 2005
+++ pyuno/prj/d.lst Thu Oct 27 14:52:10 2005
@@ -22,4 +22,5 @@
..\%__SRC%\misc\pyunorc %_DEST%\lib%_EXT%\pyunorc
..\%__SRC%\misc\pyuno.ini %_DEST%\bin%_EXT%\pyuno.ini
..\%__SRC%\bin\python-core-*.zip %_DEST%\bin%_EXT%\python-core-*.zip
+..\%__SRC%\bin\python.bin %_DEST%\bin%_EXT%\python.bin
..\%__SRC%\bin\python.sh %_DEST%\bin%_EXT%\python.sh
--- scp2/source/python/module_python.scp Fri Sep 9 10:43:17 2005
+++ scp2/source/python/module_python.scp Thu Oct 27 14:54:41 2005
@@ -38,7 +38,7 @@
Module gid_Module_Optional_Pyuno
MOD_NAME_DESC ( MODULE_OPTIONAL_PYTHON );
ParentID = gid_Module_Optional;
- Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
+ Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Py_Python_Bin,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
Minimal = NO;
Default = YES;
Styles = ( );
--- scp2/source/python/file_python.scp Fri Sep 9 10:42:31 2005
+++ scp2/source/python/file_python.scp Thu Oct 27 16:41:18 2005
@@ -86,8 +86,17 @@
Name = STRING(CONCAT3(python-core-,PYVERSION,.zip));
Styles = (ARCHIVE);
End
+
+#ifdef UNX
+File gid_File_Py_Python_Bin
+ BIN_FILE_BODY;
+ Dir = gid_Dir_Program;
+ Name = "python.bin";
+ Styles = (PACKED);
+End
#endif
+#endif
// substitute for the python Windows basic scripts

View File

@ -1,4 +1,7 @@
#i54178#
Issuetracker : #i54178#
CWS : hr17
Author: :
Description :
Index: rsc/source/rscpp/makefile.mk
===================================================================

View File

@ -1,7 +1,11 @@
STLPORT_VERSION is 450 for FreeBSD
Issuetracker : #i56956#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : catch up recent version of solenv/inc/unxlngi6.mk
catch up recent version of solenv/inc/unxlngi6.mk and STLPORT_VERSION is 450 in FreeBSD
--- solenv/inc/unxfbsdi.mk~ Thu Sep 8 18:52:53 2005
+++ solenv/inc/unxfbsdi.mk Fri Sep 30 14:08:04 2005
--- solenv/inc/unxfbsdi.mk Wed Oct 5 20:33:12 2005
+++ solenv/inc/unxfbsdi.mk Mon Oct 24 11:13:39 2005
@@ -45,7 +45,7 @@
#LINKOUTPUT_FILTER=" |& $(SOLARENV)$/bin$/msg_filter"
@ -11,8 +15,6 @@ STLPORT_VERSION is 450 for FreeBSD
# enable visibility define in "sal/types.h"
.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
--- solenv/inc/unxfbsdi.mk~ Sat Oct 1 08:52:58 2005
+++ solenv/inc/unxfbsdi.mk Sat Oct 1 12:52:34 2005
@@ -190,8 +190,13 @@
LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive

View File

@ -40,4 +40,3 @@ OO.org does need $LANG to be set to a suitable value.
If you somehow run into problems, please remove the already installed
".openoffice.org2" dir in your homedir. Redo the user
installation and the problems should go away.

View File

@ -13,7 +13,10 @@ MASTER_SITES+= http://openoffice.lunarshells.com/sources/ \
ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \
${MASTER_SITE_MOZILLA:S/$/:mozsrc/}
MASTER_SITE_SUBDIR= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc
DISTFILES+= OOo_2.0.0_src.tar.gz gpc231.tar.Z:gpc
DISTFILES+= OOo_2.0.0_src.tar.gz
.if defined(WITH_GPC)
DISTFILES+= gpc231.tar.Z:gpc
.endif
EXTRACT_ONLY= OOo_2.0.0_src.tar.gz
MAINTAINER= openoffice@FreeBSD.org
@ -49,9 +52,6 @@ JAVA_VENDOR= bsdjava
.include <bsd.port.pre.mk>
.include <${FILESDIR}/Makefile.localized>
.if (${OSVERSION} < 503001 && ${OSVERSION} >= 500000) || (${OSVERSION} <= 492000)
BROKEN= "rtld depends on _end symbol. type make -DTRYBROKEN to see how to upgrade your rtld"
.endif
.if ${PERL_LEVEL} < 500600
IGNORE= Install lang/perl5.8 then try again
.endif
@ -114,7 +114,9 @@ BUILD_DEPENDS+= ${ANT}:${PORTSDIR}/devel/apache-ant
LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.endif
.if !defined(WITH_GPC)
LIB_DEPENDS= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl2
.endif
GNU_CONFIGURE= yes
WRKSRC= ${WRKDIR}/OOo_2.0.0rc3_src
CONFIGURE_WRKSRC= ${WRKSRC}/config_office
@ -124,7 +126,7 @@ TCSH?= /bin/tcsh
PKGMESSAGE= ${WRKDIR}/pkg-message
NUMOFPROCESSES?= 1
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype --enable-crashdump=yes --enable-symbols=SMALL
.include <${FILESDIR}/Makefile.knobs>
@ -152,9 +154,11 @@ post-extract:
.if (${OSVERSION} <= 492000)
@cd ${WRKSRC} ; ${PATCH} < ${FILESDIR}/fbsd4-workaroundpatch
.endif
.if defined(WITH_GPC)
@cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz -
@${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/
@${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/
.endif
.if !defined(WITHOUT_MOZILLA)
@${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download
.endif
@ -199,11 +203,6 @@ post-install:
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter
# python post-install script start
# consult instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
@cd ${PREFIX}/${INSTALLATION_BASEDIR}/program ; ${LN} -s python-core-2.3.4 ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core; ${LN} -s python.sh ${PREFIX}/${INSTALLATION_BASEDIR}/program/python
@${CHMOD} +x ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core-2.3.4/bin/python
# python post-install script end
@${PRINTF} "bin/openoffice.org\n" > ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST}

View File

@ -12,6 +12,10 @@ CONFIGURE_ARGS+= --with-java=gij --with-ant-home=${LOCALBASE}/ant
CONFIGURE_ARGS+= --without-java
.endif
.if !defined(WITH_GPC)
CONFIGURE_ARGS+= --enable-libart
.endif
.if defined(WITH_KDE)
CONFIGURE_ARGS+= --enable-kde QTDIR="${QT_PREFIX}"
.endif
@ -113,6 +117,11 @@ pre-fetch:
@${ECHO}
@${ECHO} "You can compile OOo to use Qt/KDE vclplug with"
@${ECHO} "make -DWITH_KDE"
.endif
.if !defined(WITH_GPC)
@${ECHO}
@${ECHO} "You can compile OOo with gpc instead of libart by"
@${ECHO} "make -DWITH_GPC"
.endif
@${ECHO}
@${ECHO} "NOTICE:"

View File

@ -1,7 +1,7 @@
Issutracker : #i53287#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Issuetracker : #i53287#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Index: python/Python-2.3.4.patch
===================================================================

View File

@ -0,0 +1,95 @@
Issuetracker : #i56946#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : An implementation of backtrace at sal/osl/unx
To pass the compilation, we had been preparing dummy function at sal.
We implemented this.
--- sal/osl/unx/backtrace.c Thu Sep 8 23:52:44 2005
+++ sal/osl/unx/backtrace.c Sun Oct 23 09:19:04 2005
@@ -129,6 +129,7 @@
#include <pthread.h>
#include <setjmp.h>
#include <stdio.h>
+#include <stddef.h>
#include "backtrace.h"
#define FRAME_PTR_OFFSET 1
@@ -136,11 +137,55 @@
int backtrace( void **buffer, int max_frames )
{
- return 1;
+ struct frame *fp;
+ jmp_buf ctx;
+ int i;
+ /* get stack- and framepointer */
+ setjmp(ctx);
+ fp = (struct frame*)(((size_t*)(ctx))[FRAME_PTR_OFFSET]);
+ for ( i=0; (i<FRAME_OFFSET) && (fp!=0); i++)
+ fp = fp->fr_savfp;
+ /* iterate through backtrace */
+ for (i=0; fp && fp->fr_savpc && i<max_frames; i++)
+ {
+ /* store frame */
+ *(buffer++) = (void *)fp->fr_savpc;
+ /* next frame */
+ fp=fp->fr_savfp;
+ }
+ return i;
}
void backtrace_symbols_fd( void **buffer, int size, int fd )
{
+ FILE *fp = fdopen( fd, "w" );
+
+ if ( fp )
+ {
+ void **pFramePtr;
+ for ( pFramePtr = buffer; size > 0 && pFramePtr && *pFramePtr; pFramePtr++, size-- )
+ {
+ Dl_info dli;
+ ptrdiff_t offset;
+
+ if ( 0 != dladdr( *pFramePtr, &dli ) )
+ {
+ if ( dli.dli_fname && dli.dli_fbase )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_fbase;
+ fprintf( fp, "%s+0x%x", dli.dli_fname, offset );
+ }
+ if ( dli.dli_sname && dli.dli_saddr )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_saddr;
+ fprintf( fp, "(%s+0x%x)", dli.dli_sname, offset );
+ }
+ }
+ fprintf( fp, "[0x%x]\n", *pFramePtr );
+ }
+ fflush( fp );
+ fclose( fp );
+ }
}
#endif /* defined FREEBSD */
--- sal/osl/unx/backtrace.h Thu Sep 8 23:52:59 2005
+++ sal/osl/unx/backtrace.h Sun Oct 23 09:19:40 2005
@@ -46,6 +46,16 @@
void backtrace_symbols_fd( void **buffer, int size, int fd );
+/* no frame.h on FreeBSD */
+#if defined FREEBSD
+struct frame {
+ long arg0[8];
+ long arg1[6];
+ struct frame *fr_savfp;
+ long fr_savpc;
+};
+#endif
+
#ifdef __cplusplus
} /* extern "C" */
#endif

View File

@ -0,0 +1,173 @@
Issuetracker : #i56947#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : update files at bridges project
catch up version up of bridge project of GNU/Linux
--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Thu Sep 8 07:20:08 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Wed Oct 26 15:10:05 2005
@@ -57,7 +57,7 @@
typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
sal_Int32 nParams, typelib_MethodParameter * pParams,
void ** pCallStack,
- sal_Int64 * pRegisterReturn /* space for register return */ )
+ void * pReturnValue )
{
// pCallStack: ret, [return ptr], this, params
char * pCppStack = (char *)(pCallStack +1);
@@ -74,7 +74,7 @@
{
if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
{
- pUnoReturn = pRegisterReturn; // direct way for simple types
+ pUnoReturn = pReturnValue; // direct way for simple types
}
else // complex return via ptr (pCppReturn)
{
@@ -215,7 +215,7 @@
uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
}
// complex return ptr is set to eax
- *(void **)pRegisterReturn = pCppReturn;
+ *static_cast< void ** >(pReturnValue) = pCppReturn;
}
if (pReturnTypeDescr)
{
@@ -228,7 +228,7 @@
//==================================================================================================
extern "C" void cpp_vtable_call(
int nFunctionIndex, int nVtableOffset, void** pCallStack,
- sal_Int64 nRegReturn )
+ void * pReturnValue )
{
OSL_ENSURE( sizeof(sal_Int32)==sizeof(void *), "### unexpected!" );
@@ -275,7 +275,7 @@
pCppI, aMemberDescr.get(),
((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
0, 0, // no params
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
else
{
@@ -290,7 +290,7 @@
pCppI, aMemberDescr.get(),
0, // indicates void return
1, &aParam,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
@@ -324,7 +324,7 @@
&pInterface, pTD, cpp_acquire );
pInterface->release();
TYPELIB_DANGER_RELEASE( pTD );
- *(void **)&nRegReturn = pCallStack[1];
+ *static_cast< void ** >(pReturnValue) = pCallStack[1];
break;
}
TYPELIB_DANGER_RELEASE( pTD );
@@ -336,7 +336,7 @@
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
--- bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Jun 1 01:32:41 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Oct 26 15:10:04 2005
@@ -9,12 +9,13 @@
.LCFIg0:
movl %esp,%ebp
.LCFIg1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret
.LFEg:
@@ -29,7 +30,7 @@
.LCFIv0:
movl %esp,%ebp
.LCFIv1:
- subl $0x8,%esp # 64bit nRegReturn
+ pushl $0 # 32bit null pointer (returnValue not used)
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
@@ -48,13 +49,14 @@
.LCFIh0:
movl %esp,%ebp
.LCFIh1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
- movl 16(%esp),%edx # 64 bit nRegReturn, upper half
+ movl 16(%esp),%eax # 64bit returnValue, lower half
+ movl 20(%esp),%edx # 64bit returnValue, upper half
leave
ret
.LFEh:
@@ -69,12 +71,13 @@
.LCFIf0:
movl %esp,%ebp
.LCFIf1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- flds 12(%esp) # 64 bit nRegReturn, lower half
+ flds 16(%esp) # 32bit returnValue
leave
ret
.LFEf:
@@ -89,12 +92,13 @@
.LCFId0:
movl %esp,%ebp
.LCFId1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- fldl 12(%esp) # 64 bit nRegReturn
+ fldl 16(%esp) # 64bit returnValue
leave
ret
.LFEd:
@@ -109,12 +113,13 @@
.LCFIc0:
movl %esp,%ebp
.LCFIc1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret $4
.LFEc:

View File

@ -1,4 +1,10 @@
--- config_office/set_soenv.in~ Thu Sep 22 23:30:56 2005
Issuetracker : #i56949#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Add conditional the case of @GCCVER@ >= 30401.
Like GNU/Linux's case, we also need the case for $CVER if @GCCVER@ is equal to or larger than 3.4.1
--- config_office/set_soenv.in Thu Sep 22 23:30:56 2005
+++ config_office/set_soenv.in Sat Oct 1 12:59:30 2005
@@ -347,6 +347,9 @@
$JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386";

View File

@ -1,7 +1,7 @@
Issutracker : #iXXXXX#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
Issuetracker : #iXXXXX#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
o FreeBSD's package manager doesn't allow multiple lines for
@exec and @unexec
o chown is at /usr/sbin/

View File

@ -0,0 +1,38 @@
Issuetracker : #i56952#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at icu project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- icu/icu-2.6.patch Fri Aug 26 20:43:35 2005
+++ icu-2.6.patch Mon Oct 24 18:18:45 2005
@@ -2747,3 +2747,29 @@
commands = pkg_appendToList(commands, NULL, uprv_strdup(stanza));
sprintf(stanza, "@$(RMV) $(TEMP_DIR)/%s", cfile+genFileOffset);
+*** misc/icu/source/config/mh-bsd-gcc Thu May 2 08:48:10 2002
+--- misc/build/icu/source/config/mh-bsd-gcc Mon Oct 24 18:16:57 2005
+***************
+*** 10,21 ****
+--- 10,30 ----
+ GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+
+ ## Flags for position independent code
++ STATICCFLAGS = -fPIC
++ STATICCXXFLAGS = -fPIC
++ STATICCPPFLAGS = -DPIC
+ SHAREDLIBCFLAGS = -fPIC
+ SHAREDLIBCXXFLAGS = -fPIC
+ SHAREDLIBCPPFLAGS = -DPIC
+
+ ## Compiler switch to embed a runtime search path
+ LD_RPATH=
++ ## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH
++ ENABLE_RPATH=YES
++ RPATHLDFLAGS=${LD_RPATH_PRE}'$$ORIGIN'
++
++ #SH# ENABLE_RPATH=YES
++ #SH# RPATHLDFLAGS="${LD_RPATH_PRE}'$$ORIGIN'"
+ LD_RPATH_PRE= -Wl,-rpath,
+
+ ## Compiler switch to embed a library name

View File

@ -1,7 +1,7 @@
Issutracker : #i53288#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : remove circular dependency
Issuetracker : #i53288#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : remove circular dependency
in this case,
core01 is depend on core02-core08, and core0[2-9] and core10

View File

@ -0,0 +1,17 @@
Issuetracker : #i56951#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : javavendors_linux.xml can be used for FreeBSD as well.
javavendors_linux.xml can be used for FreeBSD as well.
--- jvmfwk/distributions/OpenOfficeorg/makefile.mk Thu Sep 8 04:26:17 2005
+++ jvmfwk/distributions/OpenOfficeorg/makefile.mk Sat Oct 22 18:31:16 2005
@@ -49,7 +49,7 @@
.IF "$(GUI)"=="UNX"
.IF "$(OS)"=="MACOSX"
+-$(COPY) javavendors_macosx.xml $(BIN)$/javavendors_ooo.xml
-.ELIF "$(OS)"=="LINUX"
+.ELIF "$(OS)"=="LINUX" || "$(OS)"=="FREEBSD"
+-$(COPY) javavendors_linux.xml $(BIN)$/javavendors_ooo.xml
.ELSE
+-$(COPY) javavendors_unx.xml $(BIN)$/javavendors_ooo.xml

View File

@ -0,0 +1,61 @@
Issuetracker : #i56953#
CWS : N/A
Author : <maho@openoffice.org>
Description : FreeBSD porting : do not hardcode pXX of Java version and FreeBSD native Java is always superior to Linux's one.
1. we had been hard coding Java's version by p1, p2 ... etc. but apparently
it is not a good habit. in this patch we eleminate this.
2. we'd better to use FreeBSD's native Java, and not GNU/Linux's ones if both are exist
in the system. We add 100 as micro version number, so that we treat FreeBSD's version of
java 1.4.1-p10 for example to 1.4.1_110.
--- jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Thu Sep 8 04:31:40 2005
+++ jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Sat Oct 22 18:25:49 2005
@@ -208,7 +208,16 @@
return false;
#if defined(FREEBSD)
if (m_preRelease == Rel_FreeBSD) {
- m_nUpdateSpecial = *pCur;
+ pCur++; //elemnate `p'
+ if (pCur < pEnd && isdigit(*pCur))
+ if (pCur < pEnd)
+ pCur ++;
+ int len = pCur - pLast -1; //elemenate `p'
+ if (len >= 127)
+ return false;
+ strncpy(buf, (pLast+1), len); //elemenate `p'
+ buf[len] = 0;
+ m_nUpdateSpecial = atoi(buf)+100; //hack for FBSD
return true;
}
#endif
@@ -249,27 +258,7 @@
else if (! strcmp(szRelease, "rc3"))
return Rel_RC3;
#if defined (FREEBSD)
- else if (! strcmp(szRelease, "p1"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p2"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p3"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p4"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p5"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p6"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p7"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p8"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p9"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p10"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p11"))
+ else if (! strncmp(szRelease, "p", 1))
return Rel_FreeBSD;
#endif
else

View File

@ -0,0 +1,18 @@
Issuetracker : #i56954#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at libxmlsec project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- libxmlsec/makefile.mk.org Tue Oct 25 15:00:10 2005
+++ libxmlsec/makefile.mk Tue Oct 25 15:00:28 2005
@@ -89,6 +89,9 @@
.IF "$(OS)$(COM)"=="SOLARISC52"
LDFLAGS:=-Wl,-R'$$$$ORIGIN'
.ENDIF # "$(OS)$(COM)"=="SOLARISC52"
+.IF "$(OS)$(COM)"=="FREEBSDGCC"
+LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN'
+.ENDIF # "$(OS)$(COM)"=="FREEBSDGCC"
.EXPORT: LDFLAGS
.ENDIF
CONFIGURE_DIR=

View File

@ -0,0 +1,312 @@
Issuetracker : #i56955#
CWS : N/A
Author : <maho@openoffice.org>
Description : Remove instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
It is desirable to prepare minimal shellscripts as far as possible at
installation part, and possibly, no shellscripts. However,
unfortunately three things had done at shellscripts_pyuno.txt.
1. symlink to python.sh -> python
2. chmod +x program/python-core-2.3.4/bin/python
3. symlink to python-core-2.3.4 -> python-core
solution
0. apply following patch. full build confirmed for SRC680_m134, FreeBSD 5.4-RELEASE.
1. Done in scp2 project: prepare scp2/source/python/shortcut_python.scp and scp2/util/makefile.mk,
and make a symlink to python.sh -> python.
(3. is impossible to solve in this way since we only have python-core-2.3.4.zip in files in scp2.)
2. Do not use program/python-core-2.3.4/bin/python, use program/python.bin instead. python.sh
now executes program/python.bin. this is usual way; see e.g., spadmin etc.
3. change from symlinking python-core-2.3.4->python-core
to adding version number (by replacing by sed) to python.sh which invoke python in OOo,
and we don't have to make a symlink.
suggestion (and not yet done):
4. we can also remove symlink from python.sh to python and
rename python.sh to python. apparently intermidiate python.sh is unnecessary.
currently: python -> python.sh -> python.bin
suggested: python -> python.bin
delivering a shell script python can harm since we have python binary from python project
as well. but this is safe since python (shell script) and python.bin are delivered,
at the same time.
--- scp2/source/python/makefile.mk Fri Sep 9 10:43:01 2005
+++ scp2/source/python/makefile.mk Wed Oct 26 17:12:52 2005
@@ -60,7 +60,8 @@
PARFILES=\
module_python.par \
profileitem_python.par \
- file_python.par
+ file_python.par \
+ shortcut_python.par
ULFFILES= \
module_python.ulf
--- scp2/util/makefile.mk Fri Sep 9 10:52:09 2005
+++ scp2/util/makefile.mk Thu Oct 27 07:25:25 2005
@@ -87,7 +87,8 @@
file_xsltfilter.par \
module_python.par \
file_python.par \
- profileitem_python.par
+ profileitem_python.par \
+ shortcut_python.par
.IF "$(SOLAR_JAVA)"!=""
SCP1FILES += \
--- /dev/null Thu Oct 27 09:59:37 2005
+++ scp2/source/python/shortcut_python.scp Thu Oct 27 09:59:19 2005
@@ -0,0 +1,49 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: shortcut_python.scp,v $
+ *
+ * $Revision: 1.20 $
+ *
+ * last change: $Author: rt $ $Date: 2005/09/09 01:42:03 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+#include "macros.inc"
+
+#ifndef SYSTEM_PYTHON
+#ifdef UNX
+
+Shortcut gid_Shortcut_Python_Sh
+ FileID = gid_File_Python_Sh;
+ Dir = gid_Dir_Program;
+ Name = "python";
+ Styles = (RELATIVE);
+End
+
+#endif
+#endif
--- instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt Thu Aug 18 17:11:29 2005
+++ /dev/null Wed Oct 26 09:51:22 2005
@@ -1,74 +0,0 @@
-%preinstall << END
-# echo Command before installing
-exit 0
-END
-
-%postinstall << END
-# echo Command after installing
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -d $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4 ]
-then
- ln -s python-core-2.3.4 $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python.sh ]
-then
- ln -s python.sh $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python ]
-then
- chmod +x $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python
-fi
-
-exit 0
-END
-
-%preremove << END
-# echo Command before removing
-exit 0
-END
-
-%postremove << END
-# echo Command after removing
-
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-
-exit 0
-END
--- instsetoo_native/inc_openoffice/unix/packagelist.txt Wed Oct 26 17:34:58 2005
+++ instsetoo_native/inc_openoffice/unix/packagelist.txt Thu Oct 27 06:25:32 2005
@@ -233,7 +233,6 @@
Start
module = "gid_Module_Optional_Pyuno"
-script = "shellscripts_pyuno.txt"
solarispackagename = "openofficeorg-pyuno"
solarisrequires = "openofficeorg-core01"
packagename = "openoffice.org-pyuno"
--- pyuno/zipcore/python.sh Fri Sep 9 01:55:24 2005
+++ pyuno/zipcore/python.sh Thu Oct 27 14:48:08 2005
@@ -101,14 +101,14 @@
;;
esac
-PYTHONPATH="$sd_prog":"$sd_prog/python-core/lib":"$sd_prog/python-core/lib/lib-dynload":"$sd_prog/python-core/lib/lib-tk":"$PYTHONPATH"
+PYTHONPATH="$sd_prog":"$sd_prog/python-core-%%PYVERSION%%/lib":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-dynload":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-tk":"$PYTHONPATH"
export PYTHONPATH
-PYTHONHOME="$sd_prog"/python-core
+PYTHONHOME="$sd_prog"/python-core-%%PYVERSION%%
export PYTHONHOME
# set path so that other apps can be started from soffice just by name
PATH="$sd_prog":$PATH
export PATH
-exec "$sd_prog/python-core/bin/python" "$@"
+exec "$sd_prog/python.bin" "$@"
--- pyuno/zipcore/makefile.mk Thu Sep 9 01:55:34 2004
+++ pyuno/zipcore/makefile.mk Thu Oct 27 14:47:34 2005
@@ -12,7 +12,11 @@
PYDIRNAME=python-core-$(PYVERSION)
DESTROOT=$(BIN)$/python-core-$(PYVERSION)
+.IF "$(GUI)" == "UNX"
+PYTHONBINARY=$(BIN)$/python$(EXECPOST).bin
+.ELSE
PYTHONBINARY=$(DESTROOT)$/bin$/python$(EXECPOST)
+.ENDIF
FINDLIBFILES_TMP:=$(subst,/,$/ \
$(shell +$(FIND) $(SOLARLIBDIR)$/python -type f| $(GREP) -v .pyc ))
@@ -29,6 +33,8 @@
$(BIN)$/python.sh : python.sh
-rm -f $@
cat $? > $@
+ sed 's/%%PYVERSION%%/$(PYVERSION)/g' < $@ > $@.new
+ mv $@.new $@
.IF "$(GUI)" == "UNX"
chmod +x $@
.ENDIF
@@ -47,15 +53,21 @@
-rm -f $@
cat $< > $@
-$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+.IF "$(GUI)"== "UNX"
+$(BIN)$/python$(EXECPOST).bin : $(SOLARBINDIR)$/python$(EXECPOST)
-+$(MKDIRHIER) $(@:d)
-rm -f $@
cat $< > $@
-.IF "$(GUI)"== "UNX"
.IF "$(OS)" != "MACOSX"
strip $@
.ENDIF
chmod +x $@
+.ELSE
+$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+ -+$(MKDIRHIER) $(@:d)
+ -rm -f $@
+ cat $< > $@
+ strip $@
.ENDIF
.ENDIF
--- pyuno/prj/d.lst Wed Feb 16 03:46:13 2005
+++ pyuno/prj/d.lst Thu Oct 27 14:52:10 2005
@@ -22,4 +22,5 @@
..\%__SRC%\misc\pyunorc %_DEST%\lib%_EXT%\pyunorc
..\%__SRC%\misc\pyuno.ini %_DEST%\bin%_EXT%\pyuno.ini
..\%__SRC%\bin\python-core-*.zip %_DEST%\bin%_EXT%\python-core-*.zip
+..\%__SRC%\bin\python.bin %_DEST%\bin%_EXT%\python.bin
..\%__SRC%\bin\python.sh %_DEST%\bin%_EXT%\python.sh
--- scp2/source/python/module_python.scp Fri Sep 9 10:43:17 2005
+++ scp2/source/python/module_python.scp Thu Oct 27 14:54:41 2005
@@ -38,7 +38,7 @@
Module gid_Module_Optional_Pyuno
MOD_NAME_DESC ( MODULE_OPTIONAL_PYTHON );
ParentID = gid_Module_Optional;
- Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
+ Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Py_Python_Bin,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
Minimal = NO;
Default = YES;
Styles = ( );
--- scp2/source/python/file_python.scp Fri Sep 9 10:42:31 2005
+++ scp2/source/python/file_python.scp Thu Oct 27 16:41:18 2005
@@ -86,8 +86,17 @@
Name = STRING(CONCAT3(python-core-,PYVERSION,.zip));
Styles = (ARCHIVE);
End
+
+#ifdef UNX
+File gid_File_Py_Python_Bin
+ BIN_FILE_BODY;
+ Dir = gid_Dir_Program;
+ Name = "python.bin";
+ Styles = (PACKED);
+End
#endif
+#endif
// substitute for the python Windows basic scripts

View File

@ -1,4 +1,7 @@
#i54178#
Issuetracker : #i54178#
CWS : hr17
Author: :
Description :
Index: rsc/source/rscpp/makefile.mk
===================================================================

View File

@ -1,7 +1,11 @@
STLPORT_VERSION is 450 for FreeBSD
Issuetracker : #i56956#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : catch up recent version of solenv/inc/unxlngi6.mk
catch up recent version of solenv/inc/unxlngi6.mk and STLPORT_VERSION is 450 in FreeBSD
--- solenv/inc/unxfbsdi.mk~ Thu Sep 8 18:52:53 2005
+++ solenv/inc/unxfbsdi.mk Fri Sep 30 14:08:04 2005
--- solenv/inc/unxfbsdi.mk Wed Oct 5 20:33:12 2005
+++ solenv/inc/unxfbsdi.mk Mon Oct 24 11:13:39 2005
@@ -45,7 +45,7 @@
#LINKOUTPUT_FILTER=" |& $(SOLARENV)$/bin$/msg_filter"
@ -11,8 +15,6 @@ STLPORT_VERSION is 450 for FreeBSD
# enable visibility define in "sal/types.h"
.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
--- solenv/inc/unxfbsdi.mk~ Sat Oct 1 08:52:58 2005
+++ solenv/inc/unxfbsdi.mk Sat Oct 1 12:52:34 2005
@@ -190,8 +190,13 @@
LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive

View File

@ -40,4 +40,3 @@ OO.org does need $LANG to be set to a suitable value.
If you somehow run into problems, please remove the already installed
".openoffice.org2" dir in your homedir. Redo the user
installation and the problems should go away.

View File

@ -13,7 +13,10 @@ MASTER_SITES+= http://openoffice.lunarshells.com/sources/ \
ftp://ftp.cs.man.ac.uk/pub/toby/gpc/:gpc \
${MASTER_SITE_MOZILLA:S/$/:mozsrc/}
MASTER_SITE_SUBDIR= mozilla/releases/mozilla${MOZILLA_VERSION}/source/:mozsrc
DISTFILES+= OOo_2.0.0_src.tar.gz gpc231.tar.Z:gpc
DISTFILES+= OOo_2.0.0_src.tar.gz
.if defined(WITH_GPC)
DISTFILES+= gpc231.tar.Z:gpc
.endif
EXTRACT_ONLY= OOo_2.0.0_src.tar.gz
MAINTAINER= openoffice@FreeBSD.org
@ -49,9 +52,6 @@ JAVA_VENDOR= bsdjava
.include <bsd.port.pre.mk>
.include <${FILESDIR}/Makefile.localized>
.if (${OSVERSION} < 503001 && ${OSVERSION} >= 500000) || (${OSVERSION} <= 492000)
BROKEN= "rtld depends on _end symbol. type make -DTRYBROKEN to see how to upgrade your rtld"
.endif
.if ${PERL_LEVEL} < 500600
IGNORE= Install lang/perl5.8 then try again
.endif
@ -114,7 +114,9 @@ BUILD_DEPENDS+= ${ANT}:${PORTSDIR}/devel/apache-ant
LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
.endif
.if !defined(WITH_GPC)
LIB_DEPENDS= art_lgpl_2:${PORTSDIR}/graphics/libart_lgpl2
.endif
GNU_CONFIGURE= yes
WRKSRC= ${WRKDIR}/OOo_2.0.0rc3_src
CONFIGURE_WRKSRC= ${WRKSRC}/config_office
@ -124,7 +126,7 @@ TCSH?= /bin/tcsh
PKGMESSAGE= ${WRKDIR}/pkg-message
NUMOFPROCESSES?= 1
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype
CONFIGURE_ARGS+= --with-gnu-cp=${LOCALBASE}/bin/gcp --with-gnu-patch=${LOCALBASE}/bin/gpatch --with-epm=internal --with-system-freetype --enable-crashdump=yes --enable-symbols=SMALL
.include <${FILESDIR}/Makefile.knobs>
@ -152,9 +154,11 @@ post-extract:
.if (${OSVERSION} <= 492000)
@cd ${WRKSRC} ; ${PATCH} < ${FILESDIR}/fbsd4-workaroundpatch
.endif
.if defined(WITH_GPC)
@cd ${WRKDIR} ; ${CAT} ${DISTDIR}/${DIST_SUBDIR}/gpc231.tar.Z | ${TAR} xfz -
@${CP} ${WRKDIR}/gpc231/gpc.c ${WRKSRC}/external/gpc/
@${CP} ${WRKDIR}/gpc231/gpc.h ${WRKSRC}/external/gpc/
.endif
.if !defined(WITHOUT_MOZILLA)
@${CP} ${DISTDIR}/${DIST_SUBDIR}/${MOZILLA_SOURCE} ${WRKSRC}/moz/download
.endif
@ -199,11 +203,6 @@ post-install:
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-simpress
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-spadmin
@${LN} -fs ${PREFIX}/bin/${EXECBASE} ${PREFIX}/bin/${EXECBASE}-swriter
# python post-install script start
# consult instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
@cd ${PREFIX}/${INSTALLATION_BASEDIR}/program ; ${LN} -s python-core-2.3.4 ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core; ${LN} -s python.sh ${PREFIX}/${INSTALLATION_BASEDIR}/program/python
@${CHMOD} +x ${PREFIX}/${INSTALLATION_BASEDIR}/program/python-core-2.3.4/bin/python
# python post-install script end
@${PRINTF} "bin/openoffice.org\n" > ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type f | ${GREP} ${EXECBASE} >> ${TMPPLIST}
@cd ${PREFIX} ; ${FIND} -s bin -type l | ${GREP} ${EXECBASE} >> ${TMPPLIST}

View File

@ -12,6 +12,10 @@ CONFIGURE_ARGS+= --with-java=gij --with-ant-home=${LOCALBASE}/ant
CONFIGURE_ARGS+= --without-java
.endif
.if !defined(WITH_GPC)
CONFIGURE_ARGS+= --enable-libart
.endif
.if defined(WITH_KDE)
CONFIGURE_ARGS+= --enable-kde QTDIR="${QT_PREFIX}"
.endif
@ -113,6 +117,11 @@ pre-fetch:
@${ECHO}
@${ECHO} "You can compile OOo to use Qt/KDE vclplug with"
@${ECHO} "make -DWITH_KDE"
.endif
.if !defined(WITH_GPC)
@${ECHO}
@${ECHO} "You can compile OOo with gpc instead of libart by"
@${ECHO} "make -DWITH_GPC"
.endif
@${ECHO}
@${ECHO} "NOTICE:"

View File

@ -1,7 +1,7 @@
Issutracker : #i53287#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Issuetracker : #i53287#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : Support for FreeBSD 6 and 7
Index: python/Python-2.3.4.patch
===================================================================

View File

@ -0,0 +1,95 @@
Issuetracker : #i56946#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : An implementation of backtrace at sal/osl/unx
To pass the compilation, we had been preparing dummy function at sal.
We implemented this.
--- sal/osl/unx/backtrace.c Thu Sep 8 23:52:44 2005
+++ sal/osl/unx/backtrace.c Sun Oct 23 09:19:04 2005
@@ -129,6 +129,7 @@
#include <pthread.h>
#include <setjmp.h>
#include <stdio.h>
+#include <stddef.h>
#include "backtrace.h"
#define FRAME_PTR_OFFSET 1
@@ -136,11 +137,55 @@
int backtrace( void **buffer, int max_frames )
{
- return 1;
+ struct frame *fp;
+ jmp_buf ctx;
+ int i;
+ /* get stack- and framepointer */
+ setjmp(ctx);
+ fp = (struct frame*)(((size_t*)(ctx))[FRAME_PTR_OFFSET]);
+ for ( i=0; (i<FRAME_OFFSET) && (fp!=0); i++)
+ fp = fp->fr_savfp;
+ /* iterate through backtrace */
+ for (i=0; fp && fp->fr_savpc && i<max_frames; i++)
+ {
+ /* store frame */
+ *(buffer++) = (void *)fp->fr_savpc;
+ /* next frame */
+ fp=fp->fr_savfp;
+ }
+ return i;
}
void backtrace_symbols_fd( void **buffer, int size, int fd )
{
+ FILE *fp = fdopen( fd, "w" );
+
+ if ( fp )
+ {
+ void **pFramePtr;
+ for ( pFramePtr = buffer; size > 0 && pFramePtr && *pFramePtr; pFramePtr++, size-- )
+ {
+ Dl_info dli;
+ ptrdiff_t offset;
+
+ if ( 0 != dladdr( *pFramePtr, &dli ) )
+ {
+ if ( dli.dli_fname && dli.dli_fbase )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_fbase;
+ fprintf( fp, "%s+0x%x", dli.dli_fname, offset );
+ }
+ if ( dli.dli_sname && dli.dli_saddr )
+ {
+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_saddr;
+ fprintf( fp, "(%s+0x%x)", dli.dli_sname, offset );
+ }
+ }
+ fprintf( fp, "[0x%x]\n", *pFramePtr );
+ }
+ fflush( fp );
+ fclose( fp );
+ }
}
#endif /* defined FREEBSD */
--- sal/osl/unx/backtrace.h Thu Sep 8 23:52:59 2005
+++ sal/osl/unx/backtrace.h Sun Oct 23 09:19:40 2005
@@ -46,6 +46,16 @@
void backtrace_symbols_fd( void **buffer, int size, int fd );
+/* no frame.h on FreeBSD */
+#if defined FREEBSD
+struct frame {
+ long arg0[8];
+ long arg1[6];
+ struct frame *fr_savfp;
+ long fr_savpc;
+};
+#endif
+
#ifdef __cplusplus
} /* extern "C" */
#endif

View File

@ -0,0 +1,173 @@
Issuetracker : #i56947#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : update files at bridges project
catch up version up of bridge project of GNU/Linux
--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Thu Sep 8 07:20:08 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Wed Oct 26 15:10:05 2005
@@ -57,7 +57,7 @@
typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
sal_Int32 nParams, typelib_MethodParameter * pParams,
void ** pCallStack,
- sal_Int64 * pRegisterReturn /* space for register return */ )
+ void * pReturnValue )
{
// pCallStack: ret, [return ptr], this, params
char * pCppStack = (char *)(pCallStack +1);
@@ -74,7 +74,7 @@
{
if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
{
- pUnoReturn = pRegisterReturn; // direct way for simple types
+ pUnoReturn = pReturnValue; // direct way for simple types
}
else // complex return via ptr (pCppReturn)
{
@@ -215,7 +215,7 @@
uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
}
// complex return ptr is set to eax
- *(void **)pRegisterReturn = pCppReturn;
+ *static_cast< void ** >(pReturnValue) = pCppReturn;
}
if (pReturnTypeDescr)
{
@@ -228,7 +228,7 @@
//==================================================================================================
extern "C" void cpp_vtable_call(
int nFunctionIndex, int nVtableOffset, void** pCallStack,
- sal_Int64 nRegReturn )
+ void * pReturnValue )
{
OSL_ENSURE( sizeof(sal_Int32)==sizeof(void *), "### unexpected!" );
@@ -275,7 +275,7 @@
pCppI, aMemberDescr.get(),
((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
0, 0, // no params
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
else
{
@@ -290,7 +290,7 @@
pCppI, aMemberDescr.get(),
0, // indicates void return
1, &aParam,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
@@ -324,7 +324,7 @@
&pInterface, pTD, cpp_acquire );
pInterface->release();
TYPELIB_DANGER_RELEASE( pTD );
- *(void **)&nRegReturn = pCallStack[1];
+ *static_cast< void ** >(pReturnValue) = pCallStack[1];
break;
}
TYPELIB_DANGER_RELEASE( pTD );
@@ -336,7 +336,7 @@
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
--- bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Jun 1 01:32:41 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Oct 26 15:10:04 2005
@@ -9,12 +9,13 @@
.LCFIg0:
movl %esp,%ebp
.LCFIg1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret
.LFEg:
@@ -29,7 +30,7 @@
.LCFIv0:
movl %esp,%ebp
.LCFIv1:
- subl $0x8,%esp # 64bit nRegReturn
+ pushl $0 # 32bit null pointer (returnValue not used)
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
@@ -48,13 +49,14 @@
.LCFIh0:
movl %esp,%ebp
.LCFIh1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
- movl 16(%esp),%edx # 64 bit nRegReturn, upper half
+ movl 16(%esp),%eax # 64bit returnValue, lower half
+ movl 20(%esp),%edx # 64bit returnValue, upper half
leave
ret
.LFEh:
@@ -69,12 +71,13 @@
.LCFIf0:
movl %esp,%ebp
.LCFIf1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- flds 12(%esp) # 64 bit nRegReturn, lower half
+ flds 16(%esp) # 32bit returnValue
leave
ret
.LFEf:
@@ -89,12 +92,13 @@
.LCFId0:
movl %esp,%ebp
.LCFId1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- fldl 12(%esp) # 64 bit nRegReturn
+ fldl 16(%esp) # 64bit returnValue
leave
ret
.LFEd:
@@ -109,12 +113,13 @@
.LCFIc0:
movl %esp,%ebp
.LCFIc1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret $4
.LFEc:

View File

@ -1,4 +1,10 @@
--- config_office/set_soenv.in~ Thu Sep 22 23:30:56 2005
Issuetracker : #i56949#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Add conditional the case of @GCCVER@ >= 30401.
Like GNU/Linux's case, we also need the case for $CVER if @GCCVER@ is equal to or larger than 3.4.1
--- config_office/set_soenv.in Thu Sep 22 23:30:56 2005
+++ config_office/set_soenv.in Sat Oct 1 12:59:30 2005
@@ -347,6 +347,9 @@
$JRELIBDIR = '$JAVA_HOME'.$ds."jre".$ds."lib".$ds."i386";

View File

@ -1,7 +1,7 @@
Issutracker : #iXXXXX#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
Issuetracker : #iXXXXX#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : epm porting for FreeBSD
o FreeBSD's package manager doesn't allow multiple lines for
@exec and @unexec
o chown is at /usr/sbin/

View File

@ -0,0 +1,38 @@
Issuetracker : #i56952#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at icu project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- icu/icu-2.6.patch Fri Aug 26 20:43:35 2005
+++ icu-2.6.patch Mon Oct 24 18:18:45 2005
@@ -2747,3 +2747,29 @@
commands = pkg_appendToList(commands, NULL, uprv_strdup(stanza));
sprintf(stanza, "@$(RMV) $(TEMP_DIR)/%s", cfile+genFileOffset);
+*** misc/icu/source/config/mh-bsd-gcc Thu May 2 08:48:10 2002
+--- misc/build/icu/source/config/mh-bsd-gcc Mon Oct 24 18:16:57 2005
+***************
+*** 10,21 ****
+--- 10,30 ----
+ GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+
+ ## Flags for position independent code
++ STATICCFLAGS = -fPIC
++ STATICCXXFLAGS = -fPIC
++ STATICCPPFLAGS = -DPIC
+ SHAREDLIBCFLAGS = -fPIC
+ SHAREDLIBCXXFLAGS = -fPIC
+ SHAREDLIBCPPFLAGS = -DPIC
+
+ ## Compiler switch to embed a runtime search path
+ LD_RPATH=
++ ## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH
++ ENABLE_RPATH=YES
++ RPATHLDFLAGS=${LD_RPATH_PRE}'$$ORIGIN'
++
++ #SH# ENABLE_RPATH=YES
++ #SH# RPATHLDFLAGS="${LD_RPATH_PRE}'$$ORIGIN'"
+ LD_RPATH_PRE= -Wl,-rpath,
+
+ ## Compiler switch to embed a library name

View File

@ -1,7 +1,7 @@
Issutracker : #i53288#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : remove circular dependency
Issuetracker : #i53288#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : remove circular dependency
in this case,
core01 is depend on core02-core08, and core0[2-9] and core10

View File

@ -0,0 +1,17 @@
Issuetracker : #i56951#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : javavendors_linux.xml can be used for FreeBSD as well.
javavendors_linux.xml can be used for FreeBSD as well.
--- jvmfwk/distributions/OpenOfficeorg/makefile.mk Thu Sep 8 04:26:17 2005
+++ jvmfwk/distributions/OpenOfficeorg/makefile.mk Sat Oct 22 18:31:16 2005
@@ -49,7 +49,7 @@
.IF "$(GUI)"=="UNX"
.IF "$(OS)"=="MACOSX"
+-$(COPY) javavendors_macosx.xml $(BIN)$/javavendors_ooo.xml
-.ELIF "$(OS)"=="LINUX"
+.ELIF "$(OS)"=="LINUX" || "$(OS)"=="FREEBSD"
+-$(COPY) javavendors_linux.xml $(BIN)$/javavendors_ooo.xml
.ELSE
+-$(COPY) javavendors_unx.xml $(BIN)$/javavendors_ooo.xml

View File

@ -0,0 +1,61 @@
Issuetracker : #i56953#
CWS : N/A
Author : <maho@openoffice.org>
Description : FreeBSD porting : do not hardcode pXX of Java version and FreeBSD native Java is always superior to Linux's one.
1. we had been hard coding Java's version by p1, p2 ... etc. but apparently
it is not a good habit. in this patch we eleminate this.
2. we'd better to use FreeBSD's native Java, and not GNU/Linux's ones if both are exist
in the system. We add 100 as micro version number, so that we treat FreeBSD's version of
java 1.4.1-p10 for example to 1.4.1_110.
--- jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Thu Sep 8 04:31:40 2005
+++ jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Sat Oct 22 18:25:49 2005
@@ -208,7 +208,16 @@
return false;
#if defined(FREEBSD)
if (m_preRelease == Rel_FreeBSD) {
- m_nUpdateSpecial = *pCur;
+ pCur++; //elemnate `p'
+ if (pCur < pEnd && isdigit(*pCur))
+ if (pCur < pEnd)
+ pCur ++;
+ int len = pCur - pLast -1; //elemenate `p'
+ if (len >= 127)
+ return false;
+ strncpy(buf, (pLast+1), len); //elemenate `p'
+ buf[len] = 0;
+ m_nUpdateSpecial = atoi(buf)+100; //hack for FBSD
return true;
}
#endif
@@ -249,27 +258,7 @@
else if (! strcmp(szRelease, "rc3"))
return Rel_RC3;
#if defined (FREEBSD)
- else if (! strcmp(szRelease, "p1"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p2"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p3"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p4"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p5"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p6"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p7"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p8"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p9"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p10"))
- return Rel_FreeBSD;
- else if (! strcmp(szRelease, "p11"))
+ else if (! strncmp(szRelease, "p", 1))
return Rel_FreeBSD;
#endif
else

View File

@ -0,0 +1,18 @@
Issuetracker : #i56954#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : Passing $ORIGIN to linker at libxmlsec project
We also want to pass -rpath $ORIGIN to linker as GNU/Linux and/or Solaris's case.
--- libxmlsec/makefile.mk.org Tue Oct 25 15:00:10 2005
+++ libxmlsec/makefile.mk Tue Oct 25 15:00:28 2005
@@ -89,6 +89,9 @@
.IF "$(OS)$(COM)"=="SOLARISC52"
LDFLAGS:=-Wl,-R'$$$$ORIGIN'
.ENDIF # "$(OS)$(COM)"=="SOLARISC52"
+.IF "$(OS)$(COM)"=="FREEBSDGCC"
+LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN'
+.ENDIF # "$(OS)$(COM)"=="FREEBSDGCC"
.EXPORT: LDFLAGS
.ENDIF
CONFIGURE_DIR=

View File

@ -0,0 +1,312 @@
Issuetracker : #i56955#
CWS : N/A
Author : <maho@openoffice.org>
Description : Remove instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt
It is desirable to prepare minimal shellscripts as far as possible at
installation part, and possibly, no shellscripts. However,
unfortunately three things had done at shellscripts_pyuno.txt.
1. symlink to python.sh -> python
2. chmod +x program/python-core-2.3.4/bin/python
3. symlink to python-core-2.3.4 -> python-core
solution
0. apply following patch. full build confirmed for SRC680_m134, FreeBSD 5.4-RELEASE.
1. Done in scp2 project: prepare scp2/source/python/shortcut_python.scp and scp2/util/makefile.mk,
and make a symlink to python.sh -> python.
(3. is impossible to solve in this way since we only have python-core-2.3.4.zip in files in scp2.)
2. Do not use program/python-core-2.3.4/bin/python, use program/python.bin instead. python.sh
now executes program/python.bin. this is usual way; see e.g., spadmin etc.
3. change from symlinking python-core-2.3.4->python-core
to adding version number (by replacing by sed) to python.sh which invoke python in OOo,
and we don't have to make a symlink.
suggestion (and not yet done):
4. we can also remove symlink from python.sh to python and
rename python.sh to python. apparently intermidiate python.sh is unnecessary.
currently: python -> python.sh -> python.bin
suggested: python -> python.bin
delivering a shell script python can harm since we have python binary from python project
as well. but this is safe since python (shell script) and python.bin are delivered,
at the same time.
--- scp2/source/python/makefile.mk Fri Sep 9 10:43:01 2005
+++ scp2/source/python/makefile.mk Wed Oct 26 17:12:52 2005
@@ -60,7 +60,8 @@
PARFILES=\
module_python.par \
profileitem_python.par \
- file_python.par
+ file_python.par \
+ shortcut_python.par
ULFFILES= \
module_python.ulf
--- scp2/util/makefile.mk Fri Sep 9 10:52:09 2005
+++ scp2/util/makefile.mk Thu Oct 27 07:25:25 2005
@@ -87,7 +87,8 @@
file_xsltfilter.par \
module_python.par \
file_python.par \
- profileitem_python.par
+ profileitem_python.par \
+ shortcut_python.par
.IF "$(SOLAR_JAVA)"!=""
SCP1FILES += \
--- /dev/null Thu Oct 27 09:59:37 2005
+++ scp2/source/python/shortcut_python.scp Thu Oct 27 09:59:19 2005
@@ -0,0 +1,49 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: shortcut_python.scp,v $
+ *
+ * $Revision: 1.20 $
+ *
+ * last change: $Author: rt $ $Date: 2005/09/09 01:42:03 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+#include "macros.inc"
+
+#ifndef SYSTEM_PYTHON
+#ifdef UNX
+
+Shortcut gid_Shortcut_Python_Sh
+ FileID = gid_File_Python_Sh;
+ Dir = gid_Dir_Program;
+ Name = "python";
+ Styles = (RELATIVE);
+End
+
+#endif
+#endif
--- instsetoo_native/inc_openoffice/unix/shellscripts_pyuno.txt Thu Aug 18 17:11:29 2005
+++ /dev/null Wed Oct 26 09:51:22 2005
@@ -1,74 +0,0 @@
-%preinstall << END
-# echo Command before installing
-exit 0
-END
-
-%postinstall << END
-# echo Command after installing
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -d $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4 ]
-then
- ln -s python-core-2.3.4 $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python.sh ]
-then
- ln -s python.sh $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-if [ -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python ]
-then
- chmod +x $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core-2.3.4/bin/python
-fi
-
-exit 0
-END
-
-%preremove << END
-# echo Command before removing
-exit 0
-END
-
-%postremove << END
-# echo Command after removing
-
-# searching for the PRODUCTINSTALLLOCATION for the different platforms
-platform=`uname -s`
-case $$platform in
-SunOS)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-Linux)
- PRODUCTINSTALLLOCATION="$$RPM_INSTALL_PREFIX"
- ;;
-*)
- PRODUCTINSTALLLOCATION="$$BASEDIR"
- ;;
-esac
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python-core >/dev/null 2>&1
-fi
-
-if [ -h $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python ]
-then
- rm -f $$PRODUCTINSTALLLOCATION/PRODUCTDIRECTORYNAME/program/python >/dev/null 2>&1
-fi
-
-
-exit 0
-END
--- instsetoo_native/inc_openoffice/unix/packagelist.txt Wed Oct 26 17:34:58 2005
+++ instsetoo_native/inc_openoffice/unix/packagelist.txt Thu Oct 27 06:25:32 2005
@@ -233,7 +233,6 @@
Start
module = "gid_Module_Optional_Pyuno"
-script = "shellscripts_pyuno.txt"
solarispackagename = "openofficeorg-pyuno"
solarisrequires = "openofficeorg-core01"
packagename = "openoffice.org-pyuno"
--- pyuno/zipcore/python.sh Fri Sep 9 01:55:24 2005
+++ pyuno/zipcore/python.sh Thu Oct 27 14:48:08 2005
@@ -101,14 +101,14 @@
;;
esac
-PYTHONPATH="$sd_prog":"$sd_prog/python-core/lib":"$sd_prog/python-core/lib/lib-dynload":"$sd_prog/python-core/lib/lib-tk":"$PYTHONPATH"
+PYTHONPATH="$sd_prog":"$sd_prog/python-core-%%PYVERSION%%/lib":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-dynload":"$sd_prog/python-core-%%PYVERSION%%/lib/lib-tk":"$PYTHONPATH"
export PYTHONPATH
-PYTHONHOME="$sd_prog"/python-core
+PYTHONHOME="$sd_prog"/python-core-%%PYVERSION%%
export PYTHONHOME
# set path so that other apps can be started from soffice just by name
PATH="$sd_prog":$PATH
export PATH
-exec "$sd_prog/python-core/bin/python" "$@"
+exec "$sd_prog/python.bin" "$@"
--- pyuno/zipcore/makefile.mk Thu Sep 9 01:55:34 2004
+++ pyuno/zipcore/makefile.mk Thu Oct 27 14:47:34 2005
@@ -12,7 +12,11 @@
PYDIRNAME=python-core-$(PYVERSION)
DESTROOT=$(BIN)$/python-core-$(PYVERSION)
+.IF "$(GUI)" == "UNX"
+PYTHONBINARY=$(BIN)$/python$(EXECPOST).bin
+.ELSE
PYTHONBINARY=$(DESTROOT)$/bin$/python$(EXECPOST)
+.ENDIF
FINDLIBFILES_TMP:=$(subst,/,$/ \
$(shell +$(FIND) $(SOLARLIBDIR)$/python -type f| $(GREP) -v .pyc ))
@@ -29,6 +33,8 @@
$(BIN)$/python.sh : python.sh
-rm -f $@
cat $? > $@
+ sed 's/%%PYVERSION%%/$(PYVERSION)/g' < $@ > $@.new
+ mv $@.new $@
.IF "$(GUI)" == "UNX"
chmod +x $@
.ENDIF
@@ -47,15 +53,21 @@
-rm -f $@
cat $< > $@
-$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+.IF "$(GUI)"== "UNX"
+$(BIN)$/python$(EXECPOST).bin : $(SOLARBINDIR)$/python$(EXECPOST)
-+$(MKDIRHIER) $(@:d)
-rm -f $@
cat $< > $@
-.IF "$(GUI)"== "UNX"
.IF "$(OS)" != "MACOSX"
strip $@
.ENDIF
chmod +x $@
+.ELSE
+$(DESTROOT)$/bin$/python$(EXECPOST) : $(SOLARBINDIR)$/python$(EXECPOST)
+ -+$(MKDIRHIER) $(@:d)
+ -rm -f $@
+ cat $< > $@
+ strip $@
.ENDIF
.ENDIF
--- pyuno/prj/d.lst Wed Feb 16 03:46:13 2005
+++ pyuno/prj/d.lst Thu Oct 27 14:52:10 2005
@@ -22,4 +22,5 @@
..\%__SRC%\misc\pyunorc %_DEST%\lib%_EXT%\pyunorc
..\%__SRC%\misc\pyuno.ini %_DEST%\bin%_EXT%\pyuno.ini
..\%__SRC%\bin\python-core-*.zip %_DEST%\bin%_EXT%\python-core-*.zip
+..\%__SRC%\bin\python.bin %_DEST%\bin%_EXT%\python.bin
..\%__SRC%\bin\python.sh %_DEST%\bin%_EXT%\python.sh
--- scp2/source/python/module_python.scp Fri Sep 9 10:43:17 2005
+++ scp2/source/python/module_python.scp Thu Oct 27 14:54:41 2005
@@ -38,7 +38,7 @@
Module gid_Module_Optional_Pyuno
MOD_NAME_DESC ( MODULE_OPTIONAL_PYTHON );
ParentID = gid_Module_Optional;
- Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
+ Files = (gid_File_Pyuno,gid_File_Lib_Pyuno,gid_File_Lib_Pythonloader,gid_File_Py_Unohelper,gid_File_Py_Uno,gid_File_Py_Pythonloader,gid_File_Py_Python_Core,gid_File_Py_Python_Bin,gid_File_Python_Sh,gid_File_Lib_Python_So, gid_File_Py_Scriptprovider,gid_File_Py_Pythonscript,gid_File_Scripts_Python,gid_File_Registry_Spool_Oo_Scripting_Python_Xcu,gid_File_Pythonmsi_Dll);
Minimal = NO;
Default = YES;
Styles = ( );
--- scp2/source/python/file_python.scp Fri Sep 9 10:42:31 2005
+++ scp2/source/python/file_python.scp Thu Oct 27 16:41:18 2005
@@ -86,8 +86,17 @@
Name = STRING(CONCAT3(python-core-,PYVERSION,.zip));
Styles = (ARCHIVE);
End
+
+#ifdef UNX
+File gid_File_Py_Python_Bin
+ BIN_FILE_BODY;
+ Dir = gid_Dir_Program;
+ Name = "python.bin";
+ Styles = (PACKED);
+End
#endif
+#endif
// substitute for the python Windows basic scripts

View File

@ -1,4 +1,7 @@
#i54178#
Issuetracker : #i54178#
CWS : hr17
Author: :
Description :
Index: rsc/source/rscpp/makefile.mk
===================================================================

View File

@ -1,7 +1,11 @@
STLPORT_VERSION is 450 for FreeBSD
Issuetracker : #i56956#
CWS : N/A
Author: : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : catch up recent version of solenv/inc/unxlngi6.mk
catch up recent version of solenv/inc/unxlngi6.mk and STLPORT_VERSION is 450 in FreeBSD
--- solenv/inc/unxfbsdi.mk~ Thu Sep 8 18:52:53 2005
+++ solenv/inc/unxfbsdi.mk Fri Sep 30 14:08:04 2005
--- solenv/inc/unxfbsdi.mk Wed Oct 5 20:33:12 2005
+++ solenv/inc/unxfbsdi.mk Mon Oct 24 11:13:39 2005
@@ -45,7 +45,7 @@
#LINKOUTPUT_FILTER=" |& $(SOLARENV)$/bin$/msg_filter"
@ -11,8 +15,6 @@ STLPORT_VERSION is 450 for FreeBSD
# enable visibility define in "sal/types.h"
.IF "$(HAVE_GCC_VISIBILITY_FEATURE)" == "TRUE"
--- solenv/inc/unxfbsdi.mk~ Sat Oct 1 08:52:58 2005
+++ solenv/inc/unxfbsdi.mk Sat Oct 1 12:52:34 2005
@@ -190,8 +190,13 @@
LIBSALCPPRT*=-Wl,--whole-archive -lsalcpprt -Wl,--no-whole-archive

View File

@ -40,4 +40,3 @@ OO.org does need $LANG to be set to a suitable value.
If you somehow run into problems, please remove the already installed
".openoffice.org2" dir in your homedir. Redo the user
installation and the problems should go away.