mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-11 02:50:24 +00:00
Update to DEV300_m61. Parallel build is somewhat fragile.
Funded by; OpenOffice.org community Feature safe: yes.
This commit is contained in:
parent
e232ad71ed
commit
6b4fec23f7
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=242993
@ -6,8 +6,7 @@
|
||||
#
|
||||
|
||||
PORTNAME?= openoffice.org
|
||||
PORTVERSION?= 3.2.${SNAPDATE}
|
||||
PORTREVISION= 1
|
||||
PORTVERSION?= 3.3.${SNAPDATE}
|
||||
CATEGORIES+= editors java
|
||||
MASTER_SITES+= http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \
|
||||
http://ooopackages.good-day.net/pub/OpenOffice.org/cws/:cws \
|
||||
@ -71,11 +70,11 @@ FREEBSD_ENV_SET= FreeBSDAMDEnv.Set
|
||||
FREEBSD_ENV_SET= FreeBSDX86Env.Set
|
||||
.endif
|
||||
|
||||
MILESTONE?= 60
|
||||
MILESTONE?= 61
|
||||
OOOTAG?= DEV300_m${MILESTONE}
|
||||
OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX}
|
||||
OOODIR= openoffice.org3
|
||||
SNAPDATE= 20090926
|
||||
SNAPDATE= 20091006
|
||||
INSTALLATION_BASEDIR?= openoffice.org-${OOOTAG}
|
||||
EXECBASE?= openoffice.org-${OOOTAG}
|
||||
DIST_SUBDIR= openoffice.org3
|
||||
@ -198,7 +197,7 @@ pre-configure:
|
||||
|
||||
do-build:
|
||||
@cd ${WRKSRC} ; ./bootstrap
|
||||
@cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; setenv TMPDIR ${WRKSRC} ; cd instsetoo_native ; build.pl --checkmodules ; build.pl -P${MAKE_JOBS_NUMBER} --all --html --dontgraboutput -- -P${MAKE_JOBS_NUMBER}"
|
||||
@cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; setenv TMPDIR ${WRKSRC} ; cd instsetoo_native ; build.pl --checkmodules ; build.pl -P${MAKE_JOBS_NUMBER} --all --html --dontgraboutput"
|
||||
|
||||
.if ${LOCALIZED_LANG} == "alllangs"
|
||||
@${MAKE} languagepack
|
||||
|
@ -1,6 +1,6 @@
|
||||
MD5 (openoffice.org3/OOo_DEV300_m60_source.tar.bz2) = e526954409b83f4042b9ce766a15406e
|
||||
SHA256 (openoffice.org3/OOo_DEV300_m60_source.tar.bz2) = 65f26630e5e0ad2f69973a4dc13b1f6ee85505351bdc1cb1933cba170c4aa1e5
|
||||
SIZE (openoffice.org3/OOo_DEV300_m60_source.tar.bz2) = 454443470
|
||||
MD5 (openoffice.org3/OOo_DEV300_m61_source.tar.bz2) = 2513fed9e714bb423910fad76a076883
|
||||
SHA256 (openoffice.org3/OOo_DEV300_m61_source.tar.bz2) = 5fdde2a5a948980ba0906337246a4976ddc87e685d42b747bd80eab8e1ddf652
|
||||
SIZE (openoffice.org3/OOo_DEV300_m61_source.tar.bz2) = 454324015
|
||||
MD5 (openoffice.org3/unowinreg.dll) = e3a0b76dcd876f3d721ee7183729153d
|
||||
SHA256 (openoffice.org3/unowinreg.dll) = f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c
|
||||
SIZE (openoffice.org3/unowinreg.dll) = 6144
|
||||
|
@ -16,7 +16,7 @@ package-rename:
|
||||
|
||||
package-canonical:
|
||||
@${ECHO_MSG} "===> Canonical packaging for OpenOffice.org";
|
||||
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ;\
|
||||
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd/ ;\
|
||||
${TAR} cfj ${WRKDIR}/../${PACKAGE_BASENAME}_native_install_${LOCALIZED_LANG}${PKG_SUFX} .
|
||||
|
||||
sdk:
|
||||
@ -24,7 +24,7 @@ sdk:
|
||||
@${RM} -fr ${WRKDIR}/sdk_tmp
|
||||
@${MKDIR} ${WRKDIR}/sdk_tmp
|
||||
@cd ${WRKDIR}/sdk_tmp ; \
|
||||
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_SDK/bsd/install/${LOCALIZED_LANG}/freebsd-*/openoffice*.t?z
|
||||
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_SDK/bsd/install/${LOCALIZED_LANG}/freebsd/ooobasis*.t?z
|
||||
@cd ${WRKDIR}/sdk_tmp/opt/openoffice* ; \
|
||||
${MKDIR} ../${INSTALLATION_BASEDIR}_sdk ; \
|
||||
${MV} * ../${INSTALLATION_BASEDIR}_sdk ; cd .. ; \
|
||||
@ -35,7 +35,7 @@ ure:
|
||||
@${RM} -fr ${WRKDIR}/ure_tmp
|
||||
@${MKDIR} ${WRKDIR}/ure_tmp
|
||||
@cd ${WRKDIR}/ure_tmp ; \
|
||||
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/URE/bsd/install/${LOCALIZED_LANG}/freebsd-*/openoffice*.t?z
|
||||
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/URE/bsd/install/${LOCALIZED_LANG}/freebsd/openoffice*.t?z
|
||||
@cd ${WRKDIR}/ure_tmp/opt/openoffice* ; \
|
||||
${MKDIR} ../${INSTALLATION_BASEDIR} ; \
|
||||
${MV} * ../${INSTALLATION_BASEDIR} ; cd .. ; \
|
||||
@ -57,11 +57,11 @@ languagepack:
|
||||
@${RM} -fr ${WRKDIR}/langpack_tmp
|
||||
@${MKDIR} ${WRKDIR}/langpack_tmp
|
||||
.if defined (LOCALIZED_LANG)
|
||||
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_languagepack/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ls openoffice*.t?z > ${WRKDIR}/${LOCALIZED_LANG}_LANGPACK
|
||||
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_languagepack/bsd/install/${LOCALIZED_LANG}/freebsd/ ; ls openoffice*.t?z > ${WRKDIR}/${LOCALIZED_LANG}_LANGPACK
|
||||
@cd ${WRKDIR}/langpack_tmp ; \
|
||||
for i in `${CAT} ${WRKDIR}/${LOCALIZED_LANG}_LANGPACK`; do \
|
||||
${ECHO_CMD} "extracting $$i" ; \
|
||||
cd ${WRKDIR}/langpack_tmp ; ${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_languagepack/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ; \
|
||||
cd ${WRKDIR}/langpack_tmp ; ${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_languagepack/bsd/install/${LOCALIZED_LANG}/freebsd/$$i ; \
|
||||
done
|
||||
@cd ${WRKDIR}/langpack_tmp/opt/ ; \
|
||||
${MKDIR} ../${INSTALLATION_BASEDIR} ; \
|
||||
|
@ -1,107 +0,0 @@
|
||||
http://www.freebsd.org/cgi/query-pr.cgi?pr=121953 (Dwayne MacKinnon)
|
||||
http://qa.openoffice.org/issues/show_bug.cgi?id=75190
|
||||
Turn the GTK Recent Manager feature off.
|
||||
Other workaround
|
||||
% setenv OOO_FORCE_DESKTOP gnome
|
||||
|
||||
Backout of misfeature in cws_src680_obr05 branch.
|
||||
* rev 1.9 of gsl/shell/source/unix/sysshell/recently_used_file_handler.cxx
|
||||
* rev 1.8 of gsl/shell/source/unix/sysshell/systemshell.cxx
|
||||
|
||||
See also
|
||||
http://lists.freebsd.org/pipermail/freebsd-openoffice/2007-December/003453.html
|
||||
gsl/shell/source/unix/sysshell/recently_used_file_handler.cxx
|
||||
(rev. 1.8.44.2)
|
||||
gsl/shell/source/unix/sysshell/systemshell.cxx
|
||||
(rev. 1.7.44.1)
|
||||
|
||||
Index: systemshell.cxx
|
||||
===================================================================
|
||||
RCS file: /cvs/gsl/shell/source/unix/sysshell/systemshell.cxx,v
|
||||
retrieving revision 1.8
|
||||
diff -u -u -r1.8 systemshell.cxx
|
||||
--- shell/source/unix/sysshell/systemshell.cxx 19 Jun 2007 16:12:44 -0000 1.8
|
||||
+++ shell/source/unix/sysshell/systemshell.cxx 30 Mar 2008 22:06:15 -0000
|
||||
@@ -72,9 +72,6 @@
|
||||
const rtl::OUString LIB_RECENT_FILE = UNISTRING("librecentfile.so");
|
||||
const rtl::OUString DEFAULT_CONTEXT = UNISTRING("DefaultContext");
|
||||
|
||||
-void * (* sym_gtk_recent_manager_get_default) () = NULL;
|
||||
-void (* sym_gtk_recent_manager_add_item) (void *, const char *) = NULL;
|
||||
-
|
||||
// We need to re-encode file urls because osl_getFileURLFromSystemPath converts
|
||||
// to UTF-8 before encoding non ascii characters, which is not what other apps expect.
|
||||
static rtl::OUString translateToExternalUrl(const rtl::OUString& internalUrl)
|
||||
@@ -114,57 +111,31 @@
|
||||
return url;
|
||||
}
|
||||
|
||||
- bool init_recent_manager_api()
|
||||
- {
|
||||
- oslModule hDefault;
|
||||
- if( osl_getModuleHandle( NULL, &hDefault ) )
|
||||
- {
|
||||
- sym_gtk_recent_manager_get_default = (void * (*)())
|
||||
- osl_getAsciiFunctionSymbol(hDefault, "gtk_recent_manager_get_default");
|
||||
- sym_gtk_recent_manager_add_item = (void (*)(void *, const char *))
|
||||
- osl_getAsciiFunctionSymbol(hDefault, "gtk_recent_manager_add_item");
|
||||
-
|
||||
- }
|
||||
- bool ret = (NULL != sym_gtk_recent_manager_get_default) && (NULL != sym_gtk_recent_manager_add_item);
|
||||
- return ret;
|
||||
- }
|
||||
-
|
||||
-
|
||||
//##############################
|
||||
void AddToRecentDocumentList(const rtl::OUString& aFileUrl, const rtl::OUString& aMimeType)
|
||||
{
|
||||
- static bool bIsRecentManagerPresent = init_recent_manager_api();
|
||||
-
|
||||
// Convert file URL for external use (see above)
|
||||
rtl::OUString externalUrl = translateToExternalUrl(aFileUrl);
|
||||
+ rtl::OUString librecentfile_url = get_absolute_library_url(LIB_RECENT_FILE);
|
||||
+
|
||||
if( 0 == externalUrl.getLength() )
|
||||
externalUrl = aFileUrl;
|
||||
-
|
||||
- if( bIsRecentManagerPresent )
|
||||
- {
|
||||
- void * recent_manager = sym_gtk_recent_manager_get_default();
|
||||
- sym_gtk_recent_manager_add_item(recent_manager, rtl::OUStringToOString(aFileUrl, RTL_TEXTENCODING_UTF8).getStr());
|
||||
- }
|
||||
- else
|
||||
+
|
||||
+ if (librecentfile_url.getLength())
|
||||
{
|
||||
- rtl::OUString librecentfile_url = get_absolute_library_url(LIB_RECENT_FILE);
|
||||
-
|
||||
- if (librecentfile_url.getLength())
|
||||
- {
|
||||
- osl::Module module(librecentfile_url);
|
||||
+ osl::Module module(librecentfile_url);
|
||||
|
||||
- if (module.is())
|
||||
- {
|
||||
- // convert from reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>
|
||||
- // not allowed in gcc 3.3 without permissive.
|
||||
- PFUNC_ADD_TO_RECENTLY_USED_LIST add_to_recently_used_file_list =
|
||||
- reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>(module.getFunctionSymbol(SYM_ADD_TO_RECENTLY_USED_FILE_LIST));
|
||||
-
|
||||
- if (add_to_recently_used_file_list)
|
||||
- add_to_recently_used_file_list(aFileUrl, aMimeType);
|
||||
- }
|
||||
+ if (module.is())
|
||||
+ {
|
||||
+ // convert from reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>
|
||||
+ // not allowed in gcc 3.3 without permissive.
|
||||
+ PFUNC_ADD_TO_RECENTLY_USED_LIST add_to_recently_used_file_list =
|
||||
+ reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>(module.getFunctionSymbol(SYM_ADD_TO_RECENTLY_USED_FILE_LIST));
|
||||
+
|
||||
+ if (add_to_recently_used_file_list)
|
||||
+ add_to_recently_used_file_list(aFileUrl, aMimeType);
|
||||
}
|
||||
- }
|
||||
+ }
|
||||
}
|
||||
|
||||
} // namespace SystemShell
|
@ -6,8 +6,7 @@
|
||||
#
|
||||
|
||||
PORTNAME?= openoffice.org
|
||||
PORTVERSION?= 3.2.${SNAPDATE}
|
||||
PORTREVISION= 1
|
||||
PORTVERSION?= 3.3.${SNAPDATE}
|
||||
CATEGORIES+= editors java
|
||||
MASTER_SITES+= http://ooopackages.good-day.net/pub/OpenOffice.org/sources/ \
|
||||
http://ooopackages.good-day.net/pub/OpenOffice.org/cws/:cws \
|
||||
@ -71,11 +70,11 @@ FREEBSD_ENV_SET= FreeBSDAMDEnv.Set
|
||||
FREEBSD_ENV_SET= FreeBSDX86Env.Set
|
||||
.endif
|
||||
|
||||
MILESTONE?= 60
|
||||
MILESTONE?= 61
|
||||
OOOTAG?= DEV300_m${MILESTONE}
|
||||
OOOSRC?= OOo_${OOOTAG}_source${EXTRACT_SUFX}
|
||||
OOODIR= openoffice.org3
|
||||
SNAPDATE= 20090926
|
||||
SNAPDATE= 20091006
|
||||
INSTALLATION_BASEDIR?= openoffice.org-${OOOTAG}
|
||||
EXECBASE?= openoffice.org-${OOOTAG}
|
||||
DIST_SUBDIR= openoffice.org3
|
||||
@ -198,7 +197,7 @@ pre-configure:
|
||||
|
||||
do-build:
|
||||
@cd ${WRKSRC} ; ./bootstrap
|
||||
@cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; setenv TMPDIR ${WRKSRC} ; cd instsetoo_native ; build.pl --checkmodules ; build.pl -P${MAKE_JOBS_NUMBER} --all --html --dontgraboutput -- -P${MAKE_JOBS_NUMBER}"
|
||||
@cd ${WRKSRC} ; ${SETENV} "LANG=C" "LC_ALL=C" ${TCSH} -c "source ${FREEBSD_ENV_SET} ; setenv TMPDIR ${WRKSRC} ; cd instsetoo_native ; build.pl --checkmodules ; build.pl -P${MAKE_JOBS_NUMBER} --all --html --dontgraboutput"
|
||||
|
||||
.if ${LOCALIZED_LANG} == "alllangs"
|
||||
@${MAKE} languagepack
|
||||
|
@ -1,6 +1,6 @@
|
||||
MD5 (openoffice.org3/OOo_DEV300_m60_source.tar.bz2) = e526954409b83f4042b9ce766a15406e
|
||||
SHA256 (openoffice.org3/OOo_DEV300_m60_source.tar.bz2) = 65f26630e5e0ad2f69973a4dc13b1f6ee85505351bdc1cb1933cba170c4aa1e5
|
||||
SIZE (openoffice.org3/OOo_DEV300_m60_source.tar.bz2) = 454443470
|
||||
MD5 (openoffice.org3/OOo_DEV300_m61_source.tar.bz2) = 2513fed9e714bb423910fad76a076883
|
||||
SHA256 (openoffice.org3/OOo_DEV300_m61_source.tar.bz2) = 5fdde2a5a948980ba0906337246a4976ddc87e685d42b747bd80eab8e1ddf652
|
||||
SIZE (openoffice.org3/OOo_DEV300_m61_source.tar.bz2) = 454324015
|
||||
MD5 (openoffice.org3/unowinreg.dll) = e3a0b76dcd876f3d721ee7183729153d
|
||||
SHA256 (openoffice.org3/unowinreg.dll) = f563e522922133db9340b0306711c2d8767cc3481dd9e7d9b0d059906d12653c
|
||||
SIZE (openoffice.org3/unowinreg.dll) = 6144
|
||||
|
@ -16,7 +16,7 @@ package-rename:
|
||||
|
||||
package-canonical:
|
||||
@${ECHO_MSG} "===> Canonical packaging for OpenOffice.org";
|
||||
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ;\
|
||||
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice/bsd/install/${LOCALIZED_LANG}/freebsd/ ;\
|
||||
${TAR} cfj ${WRKDIR}/../${PACKAGE_BASENAME}_native_install_${LOCALIZED_LANG}${PKG_SUFX} .
|
||||
|
||||
sdk:
|
||||
@ -24,7 +24,7 @@ sdk:
|
||||
@${RM} -fr ${WRKDIR}/sdk_tmp
|
||||
@${MKDIR} ${WRKDIR}/sdk_tmp
|
||||
@cd ${WRKDIR}/sdk_tmp ; \
|
||||
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_SDK/bsd/install/${LOCALIZED_LANG}/freebsd-*/openoffice*.t?z
|
||||
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_SDK/bsd/install/${LOCALIZED_LANG}/freebsd/ooobasis*.t?z
|
||||
@cd ${WRKDIR}/sdk_tmp/opt/openoffice* ; \
|
||||
${MKDIR} ../${INSTALLATION_BASEDIR}_sdk ; \
|
||||
${MV} * ../${INSTALLATION_BASEDIR}_sdk ; cd .. ; \
|
||||
@ -35,7 +35,7 @@ ure:
|
||||
@${RM} -fr ${WRKDIR}/ure_tmp
|
||||
@${MKDIR} ${WRKDIR}/ure_tmp
|
||||
@cd ${WRKDIR}/ure_tmp ; \
|
||||
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/URE/bsd/install/${LOCALIZED_LANG}/freebsd-*/openoffice*.t?z
|
||||
${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/URE/bsd/install/${LOCALIZED_LANG}/freebsd/openoffice*.t?z
|
||||
@cd ${WRKDIR}/ure_tmp/opt/openoffice* ; \
|
||||
${MKDIR} ../${INSTALLATION_BASEDIR} ; \
|
||||
${MV} * ../${INSTALLATION_BASEDIR} ; cd .. ; \
|
||||
@ -57,11 +57,11 @@ languagepack:
|
||||
@${RM} -fr ${WRKDIR}/langpack_tmp
|
||||
@${MKDIR} ${WRKDIR}/langpack_tmp
|
||||
.if defined (LOCALIZED_LANG)
|
||||
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_languagepack/bsd/install/${LOCALIZED_LANG}/freebsd-*/ ; ls openoffice*.t?z > ${WRKDIR}/${LOCALIZED_LANG}_LANGPACK
|
||||
@cd ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_languagepack/bsd/install/${LOCALIZED_LANG}/freebsd/ ; ls openoffice*.t?z > ${WRKDIR}/${LOCALIZED_LANG}_LANGPACK
|
||||
@cd ${WRKDIR}/langpack_tmp ; \
|
||||
for i in `${CAT} ${WRKDIR}/${LOCALIZED_LANG}_LANGPACK`; do \
|
||||
${ECHO_CMD} "extracting $$i" ; \
|
||||
cd ${WRKDIR}/langpack_tmp ; ${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_languagepack/bsd/install/${LOCALIZED_LANG}/freebsd-*/$$i ; \
|
||||
cd ${WRKDIR}/langpack_tmp ; ${TAR} xfz ${WRKSRC}/instsetoo_native/unxfbsd?.pro/OpenOffice_languagepack/bsd/install/${LOCALIZED_LANG}/freebsd/$$i ; \
|
||||
done
|
||||
@cd ${WRKDIR}/langpack_tmp/opt/ ; \
|
||||
${MKDIR} ../${INSTALLATION_BASEDIR} ; \
|
||||
|
@ -1,107 +0,0 @@
|
||||
http://www.freebsd.org/cgi/query-pr.cgi?pr=121953 (Dwayne MacKinnon)
|
||||
http://qa.openoffice.org/issues/show_bug.cgi?id=75190
|
||||
Turn the GTK Recent Manager feature off.
|
||||
Other workaround
|
||||
% setenv OOO_FORCE_DESKTOP gnome
|
||||
|
||||
Backout of misfeature in cws_src680_obr05 branch.
|
||||
* rev 1.9 of gsl/shell/source/unix/sysshell/recently_used_file_handler.cxx
|
||||
* rev 1.8 of gsl/shell/source/unix/sysshell/systemshell.cxx
|
||||
|
||||
See also
|
||||
http://lists.freebsd.org/pipermail/freebsd-openoffice/2007-December/003453.html
|
||||
gsl/shell/source/unix/sysshell/recently_used_file_handler.cxx
|
||||
(rev. 1.8.44.2)
|
||||
gsl/shell/source/unix/sysshell/systemshell.cxx
|
||||
(rev. 1.7.44.1)
|
||||
|
||||
Index: systemshell.cxx
|
||||
===================================================================
|
||||
RCS file: /cvs/gsl/shell/source/unix/sysshell/systemshell.cxx,v
|
||||
retrieving revision 1.8
|
||||
diff -u -u -r1.8 systemshell.cxx
|
||||
--- shell/source/unix/sysshell/systemshell.cxx 19 Jun 2007 16:12:44 -0000 1.8
|
||||
+++ shell/source/unix/sysshell/systemshell.cxx 30 Mar 2008 22:06:15 -0000
|
||||
@@ -72,9 +72,6 @@
|
||||
const rtl::OUString LIB_RECENT_FILE = UNISTRING("librecentfile.so");
|
||||
const rtl::OUString DEFAULT_CONTEXT = UNISTRING("DefaultContext");
|
||||
|
||||
-void * (* sym_gtk_recent_manager_get_default) () = NULL;
|
||||
-void (* sym_gtk_recent_manager_add_item) (void *, const char *) = NULL;
|
||||
-
|
||||
// We need to re-encode file urls because osl_getFileURLFromSystemPath converts
|
||||
// to UTF-8 before encoding non ascii characters, which is not what other apps expect.
|
||||
static rtl::OUString translateToExternalUrl(const rtl::OUString& internalUrl)
|
||||
@@ -114,57 +111,31 @@
|
||||
return url;
|
||||
}
|
||||
|
||||
- bool init_recent_manager_api()
|
||||
- {
|
||||
- oslModule hDefault;
|
||||
- if( osl_getModuleHandle( NULL, &hDefault ) )
|
||||
- {
|
||||
- sym_gtk_recent_manager_get_default = (void * (*)())
|
||||
- osl_getAsciiFunctionSymbol(hDefault, "gtk_recent_manager_get_default");
|
||||
- sym_gtk_recent_manager_add_item = (void (*)(void *, const char *))
|
||||
- osl_getAsciiFunctionSymbol(hDefault, "gtk_recent_manager_add_item");
|
||||
-
|
||||
- }
|
||||
- bool ret = (NULL != sym_gtk_recent_manager_get_default) && (NULL != sym_gtk_recent_manager_add_item);
|
||||
- return ret;
|
||||
- }
|
||||
-
|
||||
-
|
||||
//##############################
|
||||
void AddToRecentDocumentList(const rtl::OUString& aFileUrl, const rtl::OUString& aMimeType)
|
||||
{
|
||||
- static bool bIsRecentManagerPresent = init_recent_manager_api();
|
||||
-
|
||||
// Convert file URL for external use (see above)
|
||||
rtl::OUString externalUrl = translateToExternalUrl(aFileUrl);
|
||||
+ rtl::OUString librecentfile_url = get_absolute_library_url(LIB_RECENT_FILE);
|
||||
+
|
||||
if( 0 == externalUrl.getLength() )
|
||||
externalUrl = aFileUrl;
|
||||
-
|
||||
- if( bIsRecentManagerPresent )
|
||||
- {
|
||||
- void * recent_manager = sym_gtk_recent_manager_get_default();
|
||||
- sym_gtk_recent_manager_add_item(recent_manager, rtl::OUStringToOString(aFileUrl, RTL_TEXTENCODING_UTF8).getStr());
|
||||
- }
|
||||
- else
|
||||
+
|
||||
+ if (librecentfile_url.getLength())
|
||||
{
|
||||
- rtl::OUString librecentfile_url = get_absolute_library_url(LIB_RECENT_FILE);
|
||||
-
|
||||
- if (librecentfile_url.getLength())
|
||||
- {
|
||||
- osl::Module module(librecentfile_url);
|
||||
+ osl::Module module(librecentfile_url);
|
||||
|
||||
- if (module.is())
|
||||
- {
|
||||
- // convert from reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>
|
||||
- // not allowed in gcc 3.3 without permissive.
|
||||
- PFUNC_ADD_TO_RECENTLY_USED_LIST add_to_recently_used_file_list =
|
||||
- reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>(module.getFunctionSymbol(SYM_ADD_TO_RECENTLY_USED_FILE_LIST));
|
||||
-
|
||||
- if (add_to_recently_used_file_list)
|
||||
- add_to_recently_used_file_list(aFileUrl, aMimeType);
|
||||
- }
|
||||
+ if (module.is())
|
||||
+ {
|
||||
+ // convert from reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>
|
||||
+ // not allowed in gcc 3.3 without permissive.
|
||||
+ PFUNC_ADD_TO_RECENTLY_USED_LIST add_to_recently_used_file_list =
|
||||
+ reinterpret_cast<PFUNC_ADD_TO_RECENTLY_USED_LIST>(module.getFunctionSymbol(SYM_ADD_TO_RECENTLY_USED_FILE_LIST));
|
||||
+
|
||||
+ if (add_to_recently_used_file_list)
|
||||
+ add_to_recently_used_file_list(aFileUrl, aMimeType);
|
||||
}
|
||||
- }
|
||||
+ }
|
||||
}
|
||||
|
||||
} // namespace SystemShell
|
Loading…
Reference in New Issue
Block a user