Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
1ee76033
Kaydet (Commit)
1ee76033
authored
Eyl 09, 2012
tarafından
Matúš Kukan
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
liborcus: convert to gbuild
Change-Id: I6a0d869526ffd40bfe5ff81267f241c049d050f0
üst
ed2ad963
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
141 additions
and
122 deletions
+141
-122
Makefile.top
Makefile.top
+1
-1
Module_tail_build.mk
Module_tail_build.mk
+1
-0
RepositoryExternal.mk
RepositoryExternal.mk
+5
-0
RepositoryModule_ooo.mk
RepositoryModule_ooo.mk
+1
-0
config_host.mk.in
config_host.mk.in
+1
-0
configure.in
configure.in
+0
-1
ExternalProject_liborcus.mk
liborcus/ExternalProject_liborcus.mk
+49
-0
Makefile
liborcus/Makefile
+7
-0
Module_liborcus.mk
liborcus/Module_liborcus.mk
+21
-0
UnpackedTarball_orcus.mk
liborcus/UnpackedTarball_orcus.mk
+31
-0
liborcus_0.1.0-boost_disable_auto_lib.patch
liborcus/liborcus_0.1.0-boost_disable_auto_lib.patch
+2
-2
liborcus_0.1.0-configure.patch
liborcus/liborcus_0.1.0-configure.patch
+2
-2
liborcus_0.1.0-mingw.patch
liborcus/liborcus_0.1.0-mingw.patch
+6
-6
liborcus_0.1.0-warnings.patch
liborcus/liborcus_0.1.0-warnings.patch
+4
-4
makefile.mk
liborcus/makefile.mk
+0
-92
d.lst
liborcus/prj/d.lst
+0
-10
dmake
liborcus/prj/dmake
+0
-0
CppunitTest_sc_filters_test.mk
sc/CppunitTest_sc_filters_test.mk
+4
-1
CppunitTest_sc_subsequent_filters_test.mk
sc/CppunitTest_sc_subsequent_filters_test.mk
+4
-1
build.lst
sc/prj/build.lst
+1
-1
build.lst
tail_build/prj/build.lst
+1
-1
No files found.
Makefile.top
Dosyayı görüntüle @
1ee76033
...
...
@@ -89,6 +89,7 @@ l10ntools\
libcdr
\
libcmis
\
libmspub
\
liborcus
\
libpng
\
libvisio
\
libwpd
\
...
...
@@ -215,7 +216,6 @@ libcroco\
libexttextcat
\
libgsf
\
liblangtag
\
liborcus
\
librsvg
\
libxml2
\
libxmlsec
\
...
...
Module_tail_build.mk
Dosyayı görüntüle @
1ee76033
...
...
@@ -76,6 +76,7 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
libcdr
\
libcmis
\
libmspub
\
liborcus
\
libvisio
\
libwpd
\
libwpg
\
...
...
RepositoryExternal.mk
Dosyayı görüntüle @
1ee76033
...
...
@@ -1914,6 +1914,11 @@ $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
))
define gb_LinkTarget__use_orcus
$(call gb_LinkTarget_use_unpacked,$(1),orcus)
$(call gb_LinkTarget_set_include,$(1),\
-I$(call gb_UnpackedTarball_get_dir,orcus/include) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
orcus \
)
...
...
RepositoryModule_ooo.mk
Dosyayı görüntüle @
1ee76033
...
...
@@ -85,6 +85,7 @@ $(eval $(call gb_Module_add_moduledirs,ooo,\
libcdr
\
libcmis
\
libmspub
\
liborcus
\
libpng
\
libvisio
\
libwpd
\
...
...
config_host.mk.in
Dosyayı görüntüle @
1ee76033
...
...
@@ -423,6 +423,7 @@ export OPENSSL_CFLAGS=@OPENSSL_CFLAGS@
export OPENSSL_LIBS=@OPENSSL_LIBS@
export ORCUS_CFLAGS=@ORCUS_CFLAGS@
export ORCUS_LIBS=@ORCUS_LIBS@
export ORCUS_TARBALL=@ORCUS_TARBALL@
export OS=@OS@
export OSVERSION=@OSVERSION@
export OS_FOR_BUILD=@OS_FOR_BUILD@
...
...
configure.in
Dosyayı görüntüle @
1ee76033
...
...
@@ -8622,7 +8622,6 @@ if test "$with_system_orcus" = "yes"; then
else
AC_MSG_RESULT([internal])
ORCUS_TARBALL=46d9f4cf8b145c21ce1056e116d2ce71-liborcus_0.1.0.tar.bz2
BUILD_TYPE="$BUILD_TYPE LIBORCUS"
SYSTEM_LIBORCUS=NO
fi
AC_SUBST(SYSTEM_LIBORCUS)
...
...
liborcus/ExternalProject_liborcus.mk
0 → 100644
Dosyayı görüntüle @
1ee76033
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
$(eval $(call gb_ExternalProject_ExternalProject,liborcus))
$(eval $(call gb_ExternalProject_use_unpacked,liborcus,orcus))
$(eval $(call gb_ExternalProject_register_targets,liborcus,\
build \
))
ifeq ($(OS)$(COM),WNTMSC)
$(call gb_ExternalProject_get_state_target,liborcus,build) :
cd $(EXTERNAL_WORKDIR)/vsprojects/liborcus-static-nozip \
&& export BOOST_INCLUDE_DIR=$(OUTDIR)/inc/external \
&& export BOOST_LIB_DIR=$(OUTDIR)/lib \
&& $(COMPATH)/vcpackages/vcbuild.exe liborcus-static-nozip.vcproj "Release|Win32" \
&& cp Release/orcus.lib $(OUTDIR)/lib \
&& touch $@
else
$(call gb_ExternalProject_get_state_target,liborcus,build) :
cd $(EXTERNAL_WORKDIR) \
&& $(if $(filter ANDROID,$(OS)),LIBS='-lgnustl_shared -lm') \
./configure \
--with-pic \
--enable-static \
--disable-shared \
--without-libzip \
--disable-debug \
--disable-spreadsheet-model \
$(if $(filter NO,$(SYSTEM_BOOST)),CXXFLAGS=-I$(OUTDIR)/inc/external) \
$(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
&& $(GNUMAKE) \
&& cp src/liborcus/.libs/liborcus-0.2.a $(OUTDIR)/lib \
&& ln -s $(OUTDIR)/lib/liborcus.a liborcus-0.2.a \
&& touch $@
endif
# vim: set noet sw=4 ts=4:
liborcus/Makefile
0 → 100644
Dosyayı görüntüle @
1ee76033
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
module_directory
:=
$
(
dir
$
(
realpath
$
(
firstword
$(MAKEFILE_LIST)
)))
include
$(module_directory)/../solenv/gbuild/partial_build.mk
# vim: set noet sw=4 ts=4:
liborcus/Module_liborcus.mk
0 → 100644
Dosyayı görüntüle @
1ee76033
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
$(eval $(call gb_Module_Module,liborcus))
ifeq ($(SYSTEM_LIBORCUS),NO)
$(eval $(call gb_Module_add_targets,liborcus,\
ExternalProject_liborcus \
UnpackedTarball_orcus \
))
endif
# vim: set noet sw=4 ts=4:
liborcus/UnpackedTarball_orcus.mk
0 → 100644
Dosyayı görüntüle @
1ee76033
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
$(eval $(call gb_UnpackedTarball_UnpackedTarball,orcus))
$(eval $(call gb_UnpackedTarball_set_tarball,orcus,$(ORCUS_TARBALL)))
$(eval $(call gb_UnpackedTarball_set_patchlevel,orcus,0))
orcus_patches :=
# -Werror,-Wunused-variable -Werror,-Wunused-private-field
orcus_patches += liborcus_0.1.0-warnings.patch
# make config.sub recognize arm-linux-androideabi
orcus_patches += liborcus_0.1.0-configure.patch
# fix MinGW build
orcus_patches += liborcus_0.1.0-mingw.patch
# disable boost "auto lib" in MSVC build
# for some reason (CRLF in file?) this patch doesn't want to apply on unix...
orcus_patches += liborcus_0.1.0-boost_disable_auto_lib.patch
$(eval $(call gb_UnpackedTarball_add_patches,orcus,\
$(foreach patch,$(orcus_patches),liborcus/$(patch)) \
))
# vim: set noet sw=4 ts=4:
liborcus/liborcus_0.1.0-boost_disable_auto_lib.patch
Dosyayı görüntüle @
1ee76033
---
misc/liborcus_0.1.0/
vsprojects/liborcus-static-nozip/liborcus-static-nozip.vcproj 2012-09-07 06:00:35.000000000 +0200
+++
misc/build/liborcus_0.1.0/
vsprojects/liborcus-static-nozip/liborcus-static-nozip.vcproj 2012-09-10 18:10:23.821600000 +0200
--- vsprojects/liborcus-static-nozip/liborcus-static-nozip.vcproj 2012-09-07 06:00:35.000000000 +0200
+++ vsprojects/liborcus-static-nozip/liborcus-static-nozip.vcproj 2012-09-10 18:10:23.821600000 +0200
@@ -42,7 +42,7 @@
Name="VCCLCompilerTool"
Optimization="0"
...
...
liborcus/liborcus_0.1.0-configure.patch
Dosyayı görüntüle @
1ee76033
---
misc/liborcus_0.1.0/
config.sub
+++
misc/build/liborcus_0.1.0/
config.sub
--- config.sub
+++ config.sub
@@ -120,7 +120,7 @@
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
...
...
liborcus/liborcus_0.1.0-mingw.patch
Dosyayı görüntüle @
1ee76033
+++
misc/build/liborcus_0.1.0/
configure.dt
+++
misc/build/liborcus_0.1.0/
configure
+++ configure.dt
+++ configure
@@ -619,6 +619,8 @@ WITH_LIBZIP_FALSE
WITH_LIBZIP_TRUE
LIBZIP_LIBS
...
...
@@ -39,8 +39,8 @@
if test -z "${WITH_LIBZIP_TRUE}" && test -z "${WITH_LIBZIP_FALSE}"; then
as_fn_error $? "conditional \"WITH_LIBZIP\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
+++
misc/build/liborcus_0.1.0/
src/liborcus/Makefile.in.dt
+++
misc/build/liborcus_0.1.0/
src/liborcus/Makefile.in
+++ src/liborcus/Makefile.in.dt
+++ src/liborcus/Makefile.in
@@ -362,7 +361,8 @@ INCDIR = $(top_srcdir)/include
SRCDIR = $(top_srcdir)/src/liborcus
BINDIR = $(top_srcdir)/bin
...
...
@@ -51,8 +51,8 @@
lib_LTLIBRARIES = liborcus-@ORCUS_API_VERSION@.la
liborcus_@ORCUS_API_VERSION@_la_SOURCES = dom_tree.cpp exception.cpp \
global.cpp spreadsheet_interface.cpp orcus_css.cpp \
+++
misc/build/liborcus_0.1.0/
src/Makefile.in.dt
+++
misc/build/liborcus_0.1.0/
src/Makefile.in
+++ src/Makefile.in.dt
+++ src/Makefile.in
@@ -37,26 +37,35 @@ host_triplet = @host@
bin_PROGRAMS = orcus-xml-dump$(EXEEXT) $(am__EXEEXT_2) $(am__EXEEXT_3)
EXTRA_PROGRAMS = orcus-test-common$(EXEEXT) orcus-test-xml$(EXEEXT) \
...
...
liborcus/liborcus_0.1.0-warnings.patch
Dosyayı görüntüle @
1ee76033
---
misc/liborcus_0.1.0/
src/liborcus/pstring.cpp 2012-09-07 06:00:35.000000000 +0200
+++
misc/build/liborcus_0.1.0/
src/liborcus/pstring.cpp 2012-09-07 16:56:14.000000000 +0200
--- src/liborcus/pstring.cpp 2012-09-07 06:00:35.000000000 +0200
+++ src/liborcus/pstring.cpp 2012-09-07 16:56:14.000000000 +0200
@@ -57,25 +57,25 @@
pstring pstring::intern(const char* str, size_t n)
...
...
@@ -30,8 +30,8 @@
interned_strings.store.dump();
}
---
misc/liborcus_0.1.0/
src/liborcus/xml_map_tree.cpp 2012-09-07 06:00:35.000000000 +0200
+++
misc/build/liborcus_0.1.0/
src/liborcus/xml_map_tree.cpp 2012-09-07 16:59:23.000000000 +0200
--- src/liborcus/xml_map_tree.cpp 2012-09-07 06:00:35.000000000 +0200
+++ src/liborcus/xml_map_tree.cpp 2012-09-07 16:59:23.000000000 +0200
@@ -55,15 +55,14 @@
{
const char* mp_char;
...
...
liborcus/makefile.mk
deleted
100644 → 0
Dosyayı görüntüle @
ed2ad963
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# This file incorporates work covered by the following license notice:
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed
# with this work for additional information regarding copyright
# ownership. The ASF licenses this file to you under the Apache
# License, Version 2.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
PRJ
=
.
PRJNAME
=
orcus
TARGET
=
orcus
# --- Settings -----------------------------------------------------
.INCLUDE
:
settings.mk
# --- Files --------------------------------------------------------
.IF
"$(SYSTEM_LIBORCUS)"
==
"YES"
@all
:
@echo
"Using system liborcus..."
.ENDIF
TARFILE_NAME
=
liborcus_0.1.0
TARFILE_MD5
=
46d9f4cf8b145c21ce1056e116d2ce71
PATCH_FILES
=
liborcus_0.1.0-warnings.patch
# -Werror,-Wunused-variable -Werror,-Wunused-private-field
PATCH_FILES
+=
liborcus_0.1.0-configure.patch
# make config.sub recognize arm-linux-androideabi
# fix MinGW build
PATCH_FILES
+=
liborcus_0.1.0-mingw.patch
.IF
"$(GUI)$(COM)"
==
"WNTMSC"
# disable boost "auto lib" in MSVC build
# for some reason (CRLF in file?) this patch doesn't want to apply on unix...
PATCH_FILES
+=
liborcus_0.1.0-boost_disable_auto_lib.patch
BUILD_DIR
=
vsprojects/liborcus-static-nozip
BUILD_ACTION
=
\
export
BOOST_INCLUDE_DIR
=
$(OUTDIR)
/inc/external
&&
\
export
BOOST_LIB_DIR
=
$(OUTDIR)
/lib
&&
\
$(COMPATH)$/
vcpackages
$/
vcbuild.exe liborcus-static-nozip.vcproj
"Release|Win32"
.ELSE
.IF
"$(SYSTEM_BOOST)"
==
"NO"
MY_CXXFLAGS
=
CXXFLAGS
=
-I
$(OUTDIR)
/inc/external
.END
CONFIGURE_DIR
=
CONFIGURE_ACTION
=
./configure
\
--with-pic
\
--enable-static
\
--disable-shared
\
--without-libzip
\
--disable-debug
\
--disable-spreadsheet-model
$(MY_CXXFLAGS)
.IF
"$(CROSS_COMPILING)"
==
"YES"
CONFIGURE_ACTION
+=
--build
=
$(BUILD_PLATFORM)
--host
=
$(HOST_PLATFORM)
.ENDIF
.IF
"$(OS)"
==
"ANDROID"
CONFIGURE_ACTION
:=
LIBS
=
'-lgnustl_shared -lm'
$(CONFIGURE_ACTION)
.ENDIF
BUILD_ACTION
=
make
BUILD_DIR
=
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE
:
set_ext.mk
.INCLUDE
:
target.mk
.INCLUDE
:
tg_ext.mk
liborcus/prj/d.lst
Dosyayı görüntüle @
1ee76033
mkdir: %_DEST%\inc\orcus
mkdir: %_DEST%\inc\orcus\spreadsheet
..\%__SRC%\misc\build\liborcus*\include\orcus\*.hpp %_DEST%\inc\orcus\
..\%__SRC%\misc\build\liborcus*\include\orcus\spreadsheet\*.hpp %_DEST%\inc\orcus\spreadsheet\
..\%__SRC%\misc\build\liborcus*\src\liborcus\.libs\liborcus-0.2.a %_DEST%\lib\
symlink: %_DEST%\lib\liborcus-0.2.a %_DEST%\lib\liborcus.a
..\%__SRC%\misc\build\liborcus*\vsprojects\liborcus-static-nozip\Release\orcus.lib %_DEST%\lib\
liborcus/prj/dmake
deleted
100644 → 0
Dosyayı görüntüle @
ed2ad963
sc/CppunitTest_sc_filters_test.mk
Dosyayı görüntüle @
1ee76033
...
...
@@ -31,7 +31,10 @@ $(eval $(call gb_CppunitTest_add_exception_objects,sc_filters_test, \
sc/qa/unit/filters-test \
))
$(eval $(call gb_CppunitTest_use_external,sc_filters_test,mdds_headers))
$(eval $(call gb_CppunitTest_use_externals,sc_filters_test, \
mdds_headers \
orcus \
))
$(eval $(call gb_CppunitTest_use_libraries,sc_filters_test, \
avmedia \
...
...
sc/CppunitTest_sc_subsequent_filters_test.mk
Dosyayı görüntüle @
1ee76033
...
...
@@ -31,7 +31,10 @@ $(eval $(call gb_CppunitTest_add_exception_objects,sc_subsequent_filters_test, \
sc/qa/unit/subsequent_filters-test \
))
$(eval $(call gb_CppunitTest_use_external,sc_subsequent_filters_test,mdds_headers))
$(eval $(call gb_CppunitTest_use_externals,sc_subsequent_filters_test, \
mdds_headers \
orcus \
))
$(eval $(call gb_CppunitTest_use_libraries,sc_subsequent_filters_test, \
avmedia \
...
...
sc/prj/build.lst
Dosyayı görüntüle @
1ee76033
sc sc : basic filter TRANSLATIONS:translations vbahelper oovbaapi svx uui stoc BOOST:boost formula mdds oox LIBXSLT:libxslt unoxml ure test xmloff desktop ucb package configmgr officecfg scripting chart2 eventattacher forms scaddins xmlsecurity tubes
LIBORCUS:
liborcus NULL
sc sc : basic filter TRANSLATIONS:translations vbahelper oovbaapi svx uui stoc BOOST:boost formula mdds oox LIBXSLT:libxslt unoxml ure test xmloff desktop ucb package configmgr officecfg scripting chart2 eventattacher forms scaddins xmlsecurity tubes liborcus NULL
sc sc\prj nmake - all sc_prj NULL
tail_build/prj/build.lst
Dosyayı görüntüle @
1ee76033
tb tail_build : AFMS:afms APACHE_COMMONS:apache-commons BSH:beanshell BERKELEYDB:berkeleydb BOOST:boost CAIRO:cairo CPPUNIT:cppunit DESKTOP:codemaker CURL:curl EXPAT:expat FONTCONFIG:fontconfig FREETYPE:freetype GLIB:glib GRAPHITE:graphite HUNSPELL:hunspell HYPHEN:hyphen ICU:icu DESKTOP:l10ntools JFREEREPORT:jfreereport JPEG:jpeg LCMS2:lcms2 LIBEXTTEXTCAT:libexttextcat LIBLANGTAG:liblangtag LIBXML2:libxml2 libxmlsec LIBXSLT:libxslt L
IBORCUS:liborcus L
PSOLVE:lpsolve MOZ:moz MYTHES:mythes NEON:neon NSS:nss OPENLDAP:openldap OPENSSL:openssl POSTGRESQL:postgresql PYTHON:python REDLAND:redland SAXON:saxon TRANSLATIONS:translations XPDF:xpdf ZLIB:zlib bridges cli_ure comphelper cppu cppuhelper external jurt jvmaccess jvmfwk offapi officecfg DESKTOP:rdbmaker readlicense_oo RHINO:rhino ridljar sal salhelper solenv soltools stoc ucbhelper ucpp udkapi xmlreader xsltml NULL
tb tail_build : AFMS:afms APACHE_COMMONS:apache-commons BSH:beanshell BERKELEYDB:berkeleydb BOOST:boost CAIRO:cairo CPPUNIT:cppunit DESKTOP:codemaker CURL:curl EXPAT:expat FONTCONFIG:fontconfig FREETYPE:freetype GLIB:glib GRAPHITE:graphite HUNSPELL:hunspell HYPHEN:hyphen ICU:icu DESKTOP:l10ntools JFREEREPORT:jfreereport JPEG:jpeg LCMS2:lcms2 LIBEXTTEXTCAT:libexttextcat LIBLANGTAG:liblangtag LIBXML2:libxml2 libxmlsec LIBXSLT:libxslt LPSOLVE:lpsolve MOZ:moz MYTHES:mythes NEON:neon NSS:nss OPENLDAP:openldap OPENSSL:openssl POSTGRESQL:postgresql PYTHON:python REDLAND:redland SAXON:saxon TRANSLATIONS:translations XPDF:xpdf ZLIB:zlib bridges cli_ure comphelper cppu cppuhelper external jurt jvmaccess jvmfwk offapi officecfg DESKTOP:rdbmaker readlicense_oo RHINO:rhino ridljar sal salhelper solenv soltools stoc ucbhelper ucpp udkapi xmlreader xsltml NULL
tb tail_build\prj nmake - all tb_prj NULL
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment