Merge branch 'lzma'
Add support for using externally available liblzma via new wxLZMA{Input,Output}Stream classes. Closes https://github.com/wxWidgets/wxWidgets/pull/771
This commit is contained in:
19
Makefile.in
19
Makefile.in
@@ -530,6 +530,7 @@ ALL_BASE_HEADERS = \
|
|||||||
wx/fswatcher.h \
|
wx/fswatcher.h \
|
||||||
wx/generic/fswatcher.h \
|
wx/generic/fswatcher.h \
|
||||||
wx/secretstore.h \
|
wx/secretstore.h \
|
||||||
|
wx/lzmastream.h \
|
||||||
$(BASE_PLATFORM_HDR) \
|
$(BASE_PLATFORM_HDR) \
|
||||||
wx/fs_inet.h \
|
wx/fs_inet.h \
|
||||||
wx/protocol/file.h \
|
wx/protocol/file.h \
|
||||||
@@ -713,6 +714,7 @@ ALL_PORTS_BASE_HEADERS = \
|
|||||||
wx/fswatcher.h \
|
wx/fswatcher.h \
|
||||||
wx/generic/fswatcher.h \
|
wx/generic/fswatcher.h \
|
||||||
wx/secretstore.h \
|
wx/secretstore.h \
|
||||||
|
wx/lzmastream.h \
|
||||||
wx/unix/app.h \
|
wx/unix/app.h \
|
||||||
wx/unix/apptbase.h \
|
wx/unix/apptbase.h \
|
||||||
wx/unix/apptrait.h \
|
wx/unix/apptrait.h \
|
||||||
@@ -851,6 +853,7 @@ ALL_BASE_SOURCES = \
|
|||||||
src/common/fswatchercmn.cpp \
|
src/common/fswatchercmn.cpp \
|
||||||
src/generic/fswatcherg.cpp \
|
src/generic/fswatcherg.cpp \
|
||||||
src/common/secretstore.cpp \
|
src/common/secretstore.cpp \
|
||||||
|
src/common/lzmastream.cpp \
|
||||||
src/common/fdiodispatcher.cpp \
|
src/common/fdiodispatcher.cpp \
|
||||||
src/common/selectdispatcher.cpp \
|
src/common/selectdispatcher.cpp \
|
||||||
src/unix/appunix.cpp \
|
src/unix/appunix.cpp \
|
||||||
@@ -1034,6 +1037,7 @@ MONODLL_OBJECTS = \
|
|||||||
monodll_fswatchercmn.o \
|
monodll_fswatchercmn.o \
|
||||||
monodll_fswatcherg.o \
|
monodll_fswatcherg.o \
|
||||||
monodll_common_secretstore.o \
|
monodll_common_secretstore.o \
|
||||||
|
monodll_lzmastream.o \
|
||||||
$(__BASE_PLATFORM_SRC_OBJECTS) \
|
$(__BASE_PLATFORM_SRC_OBJECTS) \
|
||||||
monodll_event.o \
|
monodll_event.o \
|
||||||
monodll_fs_mem.o \
|
monodll_fs_mem.o \
|
||||||
@@ -1176,6 +1180,7 @@ MONOLIB_OBJECTS = \
|
|||||||
monolib_fswatchercmn.o \
|
monolib_fswatchercmn.o \
|
||||||
monolib_fswatcherg.o \
|
monolib_fswatcherg.o \
|
||||||
monolib_common_secretstore.o \
|
monolib_common_secretstore.o \
|
||||||
|
monolib_lzmastream.o \
|
||||||
$(__BASE_PLATFORM_SRC_OBJECTS_1) \
|
$(__BASE_PLATFORM_SRC_OBJECTS_1) \
|
||||||
monolib_event.o \
|
monolib_event.o \
|
||||||
monolib_fs_mem.o \
|
monolib_fs_mem.o \
|
||||||
@@ -1307,6 +1312,7 @@ BASEDLL_OBJECTS = \
|
|||||||
basedll_fswatchercmn.o \
|
basedll_fswatchercmn.o \
|
||||||
basedll_fswatcherg.o \
|
basedll_fswatcherg.o \
|
||||||
basedll_common_secretstore.o \
|
basedll_common_secretstore.o \
|
||||||
|
basedll_lzmastream.o \
|
||||||
$(__BASE_PLATFORM_SRC_OBJECTS_2) \
|
$(__BASE_PLATFORM_SRC_OBJECTS_2) \
|
||||||
basedll_event.o \
|
basedll_event.o \
|
||||||
basedll_fs_mem.o \
|
basedll_fs_mem.o \
|
||||||
@@ -1421,6 +1427,7 @@ BASELIB_OBJECTS = \
|
|||||||
baselib_fswatchercmn.o \
|
baselib_fswatchercmn.o \
|
||||||
baselib_fswatcherg.o \
|
baselib_fswatcherg.o \
|
||||||
baselib_common_secretstore.o \
|
baselib_common_secretstore.o \
|
||||||
|
baselib_lzmastream.o \
|
||||||
$(__BASE_PLATFORM_SRC_OBJECTS_3) \
|
$(__BASE_PLATFORM_SRC_OBJECTS_3) \
|
||||||
baselib_event.o \
|
baselib_event.o \
|
||||||
baselib_fs_mem.o \
|
baselib_fs_mem.o \
|
||||||
@@ -16270,6 +16277,9 @@ monodll_fswatcherg.o: $(srcdir)/src/generic/fswatcherg.cpp $(MONODLL_ODEP)
|
|||||||
monodll_common_secretstore.o: $(srcdir)/src/common/secretstore.cpp $(MONODLL_ODEP)
|
monodll_common_secretstore.o: $(srcdir)/src/common/secretstore.cpp $(MONODLL_ODEP)
|
||||||
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/secretstore.cpp
|
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/secretstore.cpp
|
||||||
|
|
||||||
|
monodll_lzmastream.o: $(srcdir)/src/common/lzmastream.cpp $(MONODLL_ODEP)
|
||||||
|
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/lzmastream.cpp
|
||||||
|
|
||||||
monodll_unix_mimetype.o: $(srcdir)/src/unix/mimetype.cpp $(MONODLL_ODEP)
|
monodll_unix_mimetype.o: $(srcdir)/src/unix/mimetype.cpp $(MONODLL_ODEP)
|
||||||
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/mimetype.cpp
|
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/mimetype.cpp
|
||||||
|
|
||||||
@@ -21529,6 +21539,9 @@ monolib_fswatcherg.o: $(srcdir)/src/generic/fswatcherg.cpp $(MONOLIB_ODEP)
|
|||||||
monolib_common_secretstore.o: $(srcdir)/src/common/secretstore.cpp $(MONOLIB_ODEP)
|
monolib_common_secretstore.o: $(srcdir)/src/common/secretstore.cpp $(MONOLIB_ODEP)
|
||||||
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/secretstore.cpp
|
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/secretstore.cpp
|
||||||
|
|
||||||
|
monolib_lzmastream.o: $(srcdir)/src/common/lzmastream.cpp $(MONOLIB_ODEP)
|
||||||
|
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/lzmastream.cpp
|
||||||
|
|
||||||
monolib_unix_mimetype.o: $(srcdir)/src/unix/mimetype.cpp $(MONOLIB_ODEP)
|
monolib_unix_mimetype.o: $(srcdir)/src/unix/mimetype.cpp $(MONOLIB_ODEP)
|
||||||
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/mimetype.cpp
|
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/mimetype.cpp
|
||||||
|
|
||||||
@@ -26788,6 +26801,9 @@ basedll_fswatcherg.o: $(srcdir)/src/generic/fswatcherg.cpp $(BASEDLL_ODEP)
|
|||||||
basedll_common_secretstore.o: $(srcdir)/src/common/secretstore.cpp $(BASEDLL_ODEP)
|
basedll_common_secretstore.o: $(srcdir)/src/common/secretstore.cpp $(BASEDLL_ODEP)
|
||||||
$(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/common/secretstore.cpp
|
$(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/common/secretstore.cpp
|
||||||
|
|
||||||
|
basedll_lzmastream.o: $(srcdir)/src/common/lzmastream.cpp $(BASEDLL_ODEP)
|
||||||
|
$(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/common/lzmastream.cpp
|
||||||
|
|
||||||
basedll_unix_mimetype.o: $(srcdir)/src/unix/mimetype.cpp $(BASEDLL_ODEP)
|
basedll_unix_mimetype.o: $(srcdir)/src/unix/mimetype.cpp $(BASEDLL_ODEP)
|
||||||
$(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/mimetype.cpp
|
$(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/mimetype.cpp
|
||||||
|
|
||||||
@@ -27265,6 +27281,9 @@ baselib_fswatcherg.o: $(srcdir)/src/generic/fswatcherg.cpp $(BASELIB_ODEP)
|
|||||||
baselib_common_secretstore.o: $(srcdir)/src/common/secretstore.cpp $(BASELIB_ODEP)
|
baselib_common_secretstore.o: $(srcdir)/src/common/secretstore.cpp $(BASELIB_ODEP)
|
||||||
$(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/common/secretstore.cpp
|
$(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/common/secretstore.cpp
|
||||||
|
|
||||||
|
baselib_lzmastream.o: $(srcdir)/src/common/lzmastream.cpp $(BASELIB_ODEP)
|
||||||
|
$(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/common/lzmastream.cpp
|
||||||
|
|
||||||
baselib_unix_mimetype.o: $(srcdir)/src/unix/mimetype.cpp $(BASELIB_ODEP)
|
baselib_unix_mimetype.o: $(srcdir)/src/unix/mimetype.cpp $(BASELIB_ODEP)
|
||||||
$(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/mimetype.cpp
|
$(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/mimetype.cpp
|
||||||
|
|
||||||
|
@@ -546,6 +546,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
src/common/fswatchercmn.cpp
|
src/common/fswatchercmn.cpp
|
||||||
src/generic/fswatcherg.cpp
|
src/generic/fswatcherg.cpp
|
||||||
src/common/secretstore.cpp
|
src/common/secretstore.cpp
|
||||||
|
src/common/lzmastream.cpp
|
||||||
</set>
|
</set>
|
||||||
<set var="BASE_AND_GUI_CMN_SRC" hints="files">
|
<set var="BASE_AND_GUI_CMN_SRC" hints="files">
|
||||||
src/common/event.cpp
|
src/common/event.cpp
|
||||||
@@ -719,6 +720,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
wx/fswatcher.h
|
wx/fswatcher.h
|
||||||
wx/generic/fswatcher.h
|
wx/generic/fswatcher.h
|
||||||
wx/secretstore.h
|
wx/secretstore.h
|
||||||
|
wx/lzmastream.h
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
|
|
||||||
|
@@ -458,6 +458,7 @@ set(BASE_CMN_SRC
|
|||||||
src/common/zstream.cpp
|
src/common/zstream.cpp
|
||||||
src/common/fswatchercmn.cpp
|
src/common/fswatchercmn.cpp
|
||||||
src/generic/fswatcherg.cpp
|
src/generic/fswatcherg.cpp
|
||||||
|
src/common/lzmastream.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
set(BASE_AND_GUI_CMN_SRC
|
set(BASE_AND_GUI_CMN_SRC
|
||||||
@@ -633,6 +634,7 @@ set(BASE_CMN_HDR
|
|||||||
wx/meta/removeref.h
|
wx/meta/removeref.h
|
||||||
wx/fswatcher.h
|
wx/fswatcher.h
|
||||||
wx/generic/fswatcher.h
|
wx/generic/fswatcher.h
|
||||||
|
wx/lzmastream.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(NET_UNIX_SRC
|
set(NET_UNIX_SRC
|
||||||
|
@@ -67,6 +67,12 @@ wx_add_thirdparty_library(wxUSE_LIBJPEG JPEG "use libjpeg (JPEG file format)")
|
|||||||
wx_add_thirdparty_library(wxUSE_LIBPNG PNG "use libpng (PNG image format)")
|
wx_add_thirdparty_library(wxUSE_LIBPNG PNG "use libpng (PNG image format)")
|
||||||
wx_add_thirdparty_library(wxUSE_LIBTIFF TIFF "use libtiff (TIFF file format)")
|
wx_add_thirdparty_library(wxUSE_LIBTIFF TIFF "use libtiff (TIFF file format)")
|
||||||
|
|
||||||
|
wx_option(wxUSE_LIBLZMA "use LZMA compression" OFF)
|
||||||
|
if(wxUSE_LIBLZMA)
|
||||||
|
find_package(LibLZMA REQUIRED)
|
||||||
|
endif()
|
||||||
|
set(wxTHIRD_PARTY_LIBRARIES ${wxTHIRD_PARTY_LIBRARIES} wxUSE_LIBLZMA "use liblzma for LZMA compression")
|
||||||
|
|
||||||
wx_option(wxUSE_OPENGL "use OpenGL (or Mesa)")
|
wx_option(wxUSE_OPENGL "use OpenGL (or Mesa)")
|
||||||
|
|
||||||
if(NOT WIN32)
|
if(NOT WIN32)
|
||||||
|
@@ -275,6 +275,8 @@
|
|||||||
|
|
||||||
#cmakedefine01 wxUSE_ZLIB
|
#cmakedefine01 wxUSE_ZLIB
|
||||||
|
|
||||||
|
#cmakedefine01 wxUSE_LIBLZMA
|
||||||
|
|
||||||
#cmakedefine01 wxUSE_APPLE_IEEE
|
#cmakedefine01 wxUSE_APPLE_IEEE
|
||||||
|
|
||||||
#cmakedefine01 wxUSE_JOYSTICK
|
#cmakedefine01 wxUSE_JOYSTICK
|
||||||
|
@@ -433,6 +433,7 @@ BASE_CMN_SRC =
|
|||||||
src/common/list.cpp
|
src/common/list.cpp
|
||||||
src/common/log.cpp
|
src/common/log.cpp
|
||||||
src/common/longlong.cpp
|
src/common/longlong.cpp
|
||||||
|
src/common/lzmastream.cpp
|
||||||
src/common/memory.cpp
|
src/common/memory.cpp
|
||||||
src/common/mimecmn.cpp
|
src/common/mimecmn.cpp
|
||||||
src/common/module.cpp
|
src/common/module.cpp
|
||||||
@@ -559,6 +560,7 @@ BASE_CMN_HDR =
|
|||||||
wx/listimpl.cpp
|
wx/listimpl.cpp
|
||||||
wx/log.h
|
wx/log.h
|
||||||
wx/longlong.h
|
wx/longlong.h
|
||||||
|
wx/lzmastream.h
|
||||||
wx/math.h
|
wx/math.h
|
||||||
wx/memconf.h
|
wx/memconf.h
|
||||||
wx/memory.h
|
wx/memory.h
|
||||||
|
@@ -455,6 +455,7 @@ MONODLL_OBJECTS = \
|
|||||||
$(OBJS)\monodll_fswatchercmn.obj \
|
$(OBJS)\monodll_fswatchercmn.obj \
|
||||||
$(OBJS)\monodll_fswatcherg.obj \
|
$(OBJS)\monodll_fswatcherg.obj \
|
||||||
$(OBJS)\monodll_common_secretstore.obj \
|
$(OBJS)\monodll_common_secretstore.obj \
|
||||||
|
$(OBJS)\monodll_lzmastream.obj \
|
||||||
$(OBJS)\monodll_basemsw.obj \
|
$(OBJS)\monodll_basemsw.obj \
|
||||||
$(OBJS)\monodll_crashrpt.obj \
|
$(OBJS)\monodll_crashrpt.obj \
|
||||||
$(OBJS)\monodll_debughlp.obj \
|
$(OBJS)\monodll_debughlp.obj \
|
||||||
@@ -607,6 +608,7 @@ MONOLIB_OBJECTS = \
|
|||||||
$(OBJS)\monolib_fswatchercmn.obj \
|
$(OBJS)\monolib_fswatchercmn.obj \
|
||||||
$(OBJS)\monolib_fswatcherg.obj \
|
$(OBJS)\monolib_fswatcherg.obj \
|
||||||
$(OBJS)\monolib_common_secretstore.obj \
|
$(OBJS)\monolib_common_secretstore.obj \
|
||||||
|
$(OBJS)\monolib_lzmastream.obj \
|
||||||
$(OBJS)\monolib_basemsw.obj \
|
$(OBJS)\monolib_basemsw.obj \
|
||||||
$(OBJS)\monolib_crashrpt.obj \
|
$(OBJS)\monolib_crashrpt.obj \
|
||||||
$(OBJS)\monolib_debughlp.obj \
|
$(OBJS)\monolib_debughlp.obj \
|
||||||
@@ -755,6 +757,7 @@ BASEDLL_OBJECTS = \
|
|||||||
$(OBJS)\basedll_fswatchercmn.obj \
|
$(OBJS)\basedll_fswatchercmn.obj \
|
||||||
$(OBJS)\basedll_fswatcherg.obj \
|
$(OBJS)\basedll_fswatcherg.obj \
|
||||||
$(OBJS)\basedll_common_secretstore.obj \
|
$(OBJS)\basedll_common_secretstore.obj \
|
||||||
|
$(OBJS)\basedll_lzmastream.obj \
|
||||||
$(OBJS)\basedll_basemsw.obj \
|
$(OBJS)\basedll_basemsw.obj \
|
||||||
$(OBJS)\basedll_crashrpt.obj \
|
$(OBJS)\basedll_crashrpt.obj \
|
||||||
$(OBJS)\basedll_debughlp.obj \
|
$(OBJS)\basedll_debughlp.obj \
|
||||||
@@ -888,6 +891,7 @@ BASELIB_OBJECTS = \
|
|||||||
$(OBJS)\baselib_fswatchercmn.obj \
|
$(OBJS)\baselib_fswatchercmn.obj \
|
||||||
$(OBJS)\baselib_fswatcherg.obj \
|
$(OBJS)\baselib_fswatcherg.obj \
|
||||||
$(OBJS)\baselib_common_secretstore.obj \
|
$(OBJS)\baselib_common_secretstore.obj \
|
||||||
|
$(OBJS)\baselib_lzmastream.obj \
|
||||||
$(OBJS)\baselib_basemsw.obj \
|
$(OBJS)\baselib_basemsw.obj \
|
||||||
$(OBJS)\baselib_crashrpt.obj \
|
$(OBJS)\baselib_crashrpt.obj \
|
||||||
$(OBJS)\baselib_debughlp.obj \
|
$(OBJS)\baselib_debughlp.obj \
|
||||||
@@ -6690,6 +6694,9 @@ $(OBJS)\monodll_fswatcherg.obj: ..\..\src\generic\fswatcherg.cpp
|
|||||||
$(OBJS)\monodll_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
$(OBJS)\monodll_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
||||||
|
|
||||||
|
$(OBJS)\monodll_lzmastream.obj: ..\..\src\common\lzmastream.cpp
|
||||||
|
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\common\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\monodll_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
$(OBJS)\monodll_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
||||||
|
|
||||||
@@ -9236,6 +9243,9 @@ $(OBJS)\monolib_fswatcherg.obj: ..\..\src\generic\fswatcherg.cpp
|
|||||||
$(OBJS)\monolib_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
$(OBJS)\monolib_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
||||||
|
|
||||||
|
$(OBJS)\monolib_lzmastream.obj: ..\..\src\common\lzmastream.cpp
|
||||||
|
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\monolib_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
$(OBJS)\monolib_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
||||||
|
|
||||||
@@ -11782,6 +11792,9 @@ $(OBJS)\basedll_fswatcherg.obj: ..\..\src\generic\fswatcherg.cpp
|
|||||||
$(OBJS)\basedll_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
$(OBJS)\basedll_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
$(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
||||||
|
|
||||||
|
$(OBJS)\basedll_lzmastream.obj: ..\..\src\common\lzmastream.cpp
|
||||||
|
$(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) ..\..\src\common\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\basedll_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
$(OBJS)\basedll_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
$(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
||||||
|
|
||||||
@@ -12127,6 +12140,9 @@ $(OBJS)\baselib_fswatcherg.obj: ..\..\src\generic\fswatcherg.cpp
|
|||||||
$(OBJS)\baselib_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
$(OBJS)\baselib_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
$(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
||||||
|
|
||||||
|
$(OBJS)\baselib_lzmastream.obj: ..\..\src\common\lzmastream.cpp
|
||||||
|
$(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) ..\..\src\common\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\baselib_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
$(OBJS)\baselib_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
$(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
||||||
|
|
||||||
|
@@ -443,6 +443,7 @@ MONODLL_OBJECTS = \
|
|||||||
$(OBJS)\monodll_fswatchercmn.o \
|
$(OBJS)\monodll_fswatchercmn.o \
|
||||||
$(OBJS)\monodll_fswatcherg.o \
|
$(OBJS)\monodll_fswatcherg.o \
|
||||||
$(OBJS)\monodll_common_secretstore.o \
|
$(OBJS)\monodll_common_secretstore.o \
|
||||||
|
$(OBJS)\monodll_lzmastream.o \
|
||||||
$(OBJS)\monodll_basemsw.o \
|
$(OBJS)\monodll_basemsw.o \
|
||||||
$(OBJS)\monodll_crashrpt.o \
|
$(OBJS)\monodll_crashrpt.o \
|
||||||
$(OBJS)\monodll_debughlp.o \
|
$(OBJS)\monodll_debughlp.o \
|
||||||
@@ -596,6 +597,7 @@ MONOLIB_OBJECTS = \
|
|||||||
$(OBJS)\monolib_fswatchercmn.o \
|
$(OBJS)\monolib_fswatchercmn.o \
|
||||||
$(OBJS)\monolib_fswatcherg.o \
|
$(OBJS)\monolib_fswatcherg.o \
|
||||||
$(OBJS)\monolib_common_secretstore.o \
|
$(OBJS)\monolib_common_secretstore.o \
|
||||||
|
$(OBJS)\monolib_lzmastream.o \
|
||||||
$(OBJS)\monolib_basemsw.o \
|
$(OBJS)\monolib_basemsw.o \
|
||||||
$(OBJS)\monolib_crashrpt.o \
|
$(OBJS)\monolib_crashrpt.o \
|
||||||
$(OBJS)\monolib_debughlp.o \
|
$(OBJS)\monolib_debughlp.o \
|
||||||
@@ -745,6 +747,7 @@ BASEDLL_OBJECTS = \
|
|||||||
$(OBJS)\basedll_fswatchercmn.o \
|
$(OBJS)\basedll_fswatchercmn.o \
|
||||||
$(OBJS)\basedll_fswatcherg.o \
|
$(OBJS)\basedll_fswatcherg.o \
|
||||||
$(OBJS)\basedll_common_secretstore.o \
|
$(OBJS)\basedll_common_secretstore.o \
|
||||||
|
$(OBJS)\basedll_lzmastream.o \
|
||||||
$(OBJS)\basedll_basemsw.o \
|
$(OBJS)\basedll_basemsw.o \
|
||||||
$(OBJS)\basedll_crashrpt.o \
|
$(OBJS)\basedll_crashrpt.o \
|
||||||
$(OBJS)\basedll_debughlp.o \
|
$(OBJS)\basedll_debughlp.o \
|
||||||
@@ -878,6 +881,7 @@ BASELIB_OBJECTS = \
|
|||||||
$(OBJS)\baselib_fswatchercmn.o \
|
$(OBJS)\baselib_fswatchercmn.o \
|
||||||
$(OBJS)\baselib_fswatcherg.o \
|
$(OBJS)\baselib_fswatcherg.o \
|
||||||
$(OBJS)\baselib_common_secretstore.o \
|
$(OBJS)\baselib_common_secretstore.o \
|
||||||
|
$(OBJS)\baselib_lzmastream.o \
|
||||||
$(OBJS)\baselib_basemsw.o \
|
$(OBJS)\baselib_basemsw.o \
|
||||||
$(OBJS)\baselib_crashrpt.o \
|
$(OBJS)\baselib_crashrpt.o \
|
||||||
$(OBJS)\baselib_debughlp.o \
|
$(OBJS)\baselib_debughlp.o \
|
||||||
@@ -6872,6 +6876,9 @@ $(OBJS)\monodll_fswatcherg.o: ../../src/generic/fswatcherg.cpp
|
|||||||
$(OBJS)\monodll_common_secretstore.o: ../../src/common/secretstore.cpp
|
$(OBJS)\monodll_common_secretstore.o: ../../src/common/secretstore.cpp
|
||||||
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
|
$(OBJS)\monodll_lzmastream.o: ../../src/common/lzmastream.cpp
|
||||||
|
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
$(OBJS)\monodll_basemsw.o: ../../src/msw/basemsw.cpp
|
$(OBJS)\monodll_basemsw.o: ../../src/msw/basemsw.cpp
|
||||||
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
@@ -9420,6 +9427,9 @@ $(OBJS)\monolib_fswatcherg.o: ../../src/generic/fswatcherg.cpp
|
|||||||
$(OBJS)\monolib_common_secretstore.o: ../../src/common/secretstore.cpp
|
$(OBJS)\monolib_common_secretstore.o: ../../src/common/secretstore.cpp
|
||||||
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
|
$(OBJS)\monolib_lzmastream.o: ../../src/common/lzmastream.cpp
|
||||||
|
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
$(OBJS)\monolib_basemsw.o: ../../src/msw/basemsw.cpp
|
$(OBJS)\monolib_basemsw.o: ../../src/msw/basemsw.cpp
|
||||||
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
@@ -11968,6 +11978,9 @@ $(OBJS)\basedll_fswatcherg.o: ../../src/generic/fswatcherg.cpp
|
|||||||
$(OBJS)\basedll_common_secretstore.o: ../../src/common/secretstore.cpp
|
$(OBJS)\basedll_common_secretstore.o: ../../src/common/secretstore.cpp
|
||||||
$(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
|
$(OBJS)\basedll_lzmastream.o: ../../src/common/lzmastream.cpp
|
||||||
|
$(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
$(OBJS)\basedll_basemsw.o: ../../src/msw/basemsw.cpp
|
$(OBJS)\basedll_basemsw.o: ../../src/msw/basemsw.cpp
|
||||||
$(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
@@ -12313,6 +12326,9 @@ $(OBJS)\baselib_fswatcherg.o: ../../src/generic/fswatcherg.cpp
|
|||||||
$(OBJS)\baselib_common_secretstore.o: ../../src/common/secretstore.cpp
|
$(OBJS)\baselib_common_secretstore.o: ../../src/common/secretstore.cpp
|
||||||
$(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
|
$(OBJS)\baselib_lzmastream.o: ../../src/common/lzmastream.cpp
|
||||||
|
$(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
$(OBJS)\baselib_basemsw.o: ../../src/msw/basemsw.cpp
|
$(OBJS)\baselib_basemsw.o: ../../src/msw/basemsw.cpp
|
||||||
$(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
|
@@ -475,6 +475,7 @@ MONODLL_OBJECTS = \
|
|||||||
$(OBJS)\monodll_fswatchercmn.obj \
|
$(OBJS)\monodll_fswatchercmn.obj \
|
||||||
$(OBJS)\monodll_fswatcherg.obj \
|
$(OBJS)\monodll_fswatcherg.obj \
|
||||||
$(OBJS)\monodll_common_secretstore.obj \
|
$(OBJS)\monodll_common_secretstore.obj \
|
||||||
|
$(OBJS)\monodll_lzmastream.obj \
|
||||||
$(OBJS)\monodll_basemsw.obj \
|
$(OBJS)\monodll_basemsw.obj \
|
||||||
$(OBJS)\monodll_crashrpt.obj \
|
$(OBJS)\monodll_crashrpt.obj \
|
||||||
$(OBJS)\monodll_debughlp.obj \
|
$(OBJS)\monodll_debughlp.obj \
|
||||||
@@ -637,6 +638,7 @@ MONOLIB_OBJECTS = \
|
|||||||
$(OBJS)\monolib_fswatchercmn.obj \
|
$(OBJS)\monolib_fswatchercmn.obj \
|
||||||
$(OBJS)\monolib_fswatcherg.obj \
|
$(OBJS)\monolib_fswatcherg.obj \
|
||||||
$(OBJS)\monolib_common_secretstore.obj \
|
$(OBJS)\monolib_common_secretstore.obj \
|
||||||
|
$(OBJS)\monolib_lzmastream.obj \
|
||||||
$(OBJS)\monolib_basemsw.obj \
|
$(OBJS)\monolib_basemsw.obj \
|
||||||
$(OBJS)\monolib_crashrpt.obj \
|
$(OBJS)\monolib_crashrpt.obj \
|
||||||
$(OBJS)\monolib_debughlp.obj \
|
$(OBJS)\monolib_debughlp.obj \
|
||||||
@@ -793,6 +795,7 @@ BASEDLL_OBJECTS = \
|
|||||||
$(OBJS)\basedll_fswatchercmn.obj \
|
$(OBJS)\basedll_fswatchercmn.obj \
|
||||||
$(OBJS)\basedll_fswatcherg.obj \
|
$(OBJS)\basedll_fswatcherg.obj \
|
||||||
$(OBJS)\basedll_common_secretstore.obj \
|
$(OBJS)\basedll_common_secretstore.obj \
|
||||||
|
$(OBJS)\basedll_lzmastream.obj \
|
||||||
$(OBJS)\basedll_basemsw.obj \
|
$(OBJS)\basedll_basemsw.obj \
|
||||||
$(OBJS)\basedll_crashrpt.obj \
|
$(OBJS)\basedll_crashrpt.obj \
|
||||||
$(OBJS)\basedll_debughlp.obj \
|
$(OBJS)\basedll_debughlp.obj \
|
||||||
@@ -936,6 +939,7 @@ BASELIB_OBJECTS = \
|
|||||||
$(OBJS)\baselib_fswatchercmn.obj \
|
$(OBJS)\baselib_fswatchercmn.obj \
|
||||||
$(OBJS)\baselib_fswatcherg.obj \
|
$(OBJS)\baselib_fswatcherg.obj \
|
||||||
$(OBJS)\baselib_common_secretstore.obj \
|
$(OBJS)\baselib_common_secretstore.obj \
|
||||||
|
$(OBJS)\baselib_lzmastream.obj \
|
||||||
$(OBJS)\baselib_basemsw.obj \
|
$(OBJS)\baselib_basemsw.obj \
|
||||||
$(OBJS)\baselib_crashrpt.obj \
|
$(OBJS)\baselib_crashrpt.obj \
|
||||||
$(OBJS)\baselib_debughlp.obj \
|
$(OBJS)\baselib_debughlp.obj \
|
||||||
@@ -7387,6 +7391,9 @@ $(OBJS)\monodll_fswatcherg.obj: ..\..\src\generic\fswatcherg.cpp
|
|||||||
$(OBJS)\monodll_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
$(OBJS)\monodll_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
||||||
|
|
||||||
|
$(OBJS)\monodll_lzmastream.obj: ..\..\src\common\lzmastream.cpp
|
||||||
|
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\common\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\monodll_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
$(OBJS)\monodll_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
||||||
|
|
||||||
@@ -9933,6 +9940,9 @@ $(OBJS)\monolib_fswatcherg.obj: ..\..\src\generic\fswatcherg.cpp
|
|||||||
$(OBJS)\monolib_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
$(OBJS)\monolib_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
||||||
|
|
||||||
|
$(OBJS)\monolib_lzmastream.obj: ..\..\src\common\lzmastream.cpp
|
||||||
|
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\monolib_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
$(OBJS)\monolib_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
||||||
|
|
||||||
@@ -12479,6 +12489,9 @@ $(OBJS)\basedll_fswatcherg.obj: ..\..\src\generic\fswatcherg.cpp
|
|||||||
$(OBJS)\basedll_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
$(OBJS)\basedll_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
||||||
|
|
||||||
|
$(OBJS)\basedll_lzmastream.obj: ..\..\src\common\lzmastream.cpp
|
||||||
|
$(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) ..\..\src\common\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\basedll_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
$(OBJS)\basedll_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
||||||
|
|
||||||
@@ -12824,6 +12837,9 @@ $(OBJS)\baselib_fswatcherg.obj: ..\..\src\generic\fswatcherg.cpp
|
|||||||
$(OBJS)\baselib_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
$(OBJS)\baselib_common_secretstore.obj: ..\..\src\common\secretstore.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) ..\..\src\common\secretstore.cpp
|
||||||
|
|
||||||
|
$(OBJS)\baselib_lzmastream.obj: ..\..\src\common\lzmastream.cpp
|
||||||
|
$(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) ..\..\src\common\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\baselib_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
$(OBJS)\baselib_basemsw.obj: ..\..\src\msw\basemsw.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp
|
||||||
|
|
||||||
|
@@ -605,6 +605,7 @@
|
|||||||
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)common_%(Filename).obj</ObjectFileName>
|
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)common_%(Filename).obj</ObjectFileName>
|
||||||
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)common_%(Filename).obj</ObjectFileName>
|
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)common_%(Filename).obj</ObjectFileName>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\common\lzmastream.cpp" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ResourceCompile Include="..\..\src\msw\version.rc">
|
<ResourceCompile Include="..\..\src\msw\version.rc">
|
||||||
@@ -822,6 +823,7 @@
|
|||||||
<ClInclude Include="..\..\include\wx\arrimpl.cpp" />
|
<ClInclude Include="..\..\include\wx\arrimpl.cpp" />
|
||||||
<ClInclude Include="..\..\include\wx\secretstore.h" />
|
<ClInclude Include="..\..\include\wx\secretstore.h" />
|
||||||
<ClInclude Include="..\..\include\wx\evtloopsrc.h" />
|
<ClInclude Include="..\..\include\wx\evtloopsrc.h" />
|
||||||
|
<ClInclude Include="..\..\include\wx\lzmastream.h" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
<ImportGroup Label="ExtensionTargets">
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
@@ -162,6 +162,9 @@
|
|||||||
<ClCompile Include="..\..\src\common\longlong.cpp">
|
<ClCompile Include="..\..\src\common\longlong.cpp">
|
||||||
<Filter>Common Sources</Filter>
|
<Filter>Common Sources</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\..\src\common\lzmastream.cpp">
|
||||||
|
<Filter>Common Sources</Filter>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="..\..\src\common\memory.cpp">
|
<ClCompile Include="..\..\src\common\memory.cpp">
|
||||||
<Filter>Common Sources</Filter>
|
<Filter>Common Sources</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@@ -604,6 +607,9 @@
|
|||||||
<ClInclude Include="..\..\include\wx\longlong.h">
|
<ClInclude Include="..\..\include\wx\longlong.h">
|
||||||
<Filter>Common Headers</Filter>
|
<Filter>Common Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\..\include\wx\lzmastream.h">
|
||||||
|
<Filter>Common Headers</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\..\include\wx\math.h">
|
<ClInclude Include="..\..\include\wx\math.h">
|
||||||
<Filter>Common Headers</Filter>
|
<Filter>Common Headers</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@@ -462,6 +462,9 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\src\common\longlong.cpp">
|
RelativePath="..\..\src\common\longlong.cpp">
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\src\common\lzmastream.cpp">
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\src\common\memory.cpp">
|
RelativePath="..\..\src\common\memory.cpp">
|
||||||
</File>
|
</File>
|
||||||
@@ -1135,6 +1138,9 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath="..\..\include\wx\longlong.h">
|
RelativePath="..\..\include\wx\longlong.h">
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\include\wx\lzmastream.h">
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\include\wx\math.h">
|
RelativePath="..\..\include\wx\math.h">
|
||||||
</File>
|
</File>
|
||||||
|
@@ -1053,6 +1053,10 @@
|
|||||||
RelativePath="..\..\src\common\longlong.cpp"
|
RelativePath="..\..\src\common\longlong.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\src\common\lzmastream.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\src\common\memory.cpp"
|
RelativePath="..\..\src\common\memory.cpp"
|
||||||
>
|
>
|
||||||
@@ -2111,6 +2115,10 @@
|
|||||||
RelativePath="..\..\include\wx\longlong.h"
|
RelativePath="..\..\include\wx\longlong.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\include\wx\lzmastream.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\include\wx\math.h"
|
RelativePath="..\..\include\wx\math.h"
|
||||||
>
|
>
|
||||||
|
@@ -1049,6 +1049,10 @@
|
|||||||
RelativePath="..\..\src\common\longlong.cpp"
|
RelativePath="..\..\src\common\longlong.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\src\common\lzmastream.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\src\common\memory.cpp"
|
RelativePath="..\..\src\common\memory.cpp"
|
||||||
>
|
>
|
||||||
@@ -2107,6 +2111,10 @@
|
|||||||
RelativePath="..\..\include\wx\longlong.h"
|
RelativePath="..\..\include\wx\longlong.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath="..\..\include\wx\lzmastream.h"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\include\wx\math.h"
|
RelativePath="..\..\include\wx\math.h"
|
||||||
>
|
>
|
||||||
|
184
configure
vendored
184
configure
vendored
@@ -1092,7 +1092,6 @@ with_libpng
|
|||||||
with_libjpeg
|
with_libjpeg
|
||||||
with_libtiff
|
with_libtiff
|
||||||
with_libjbig
|
with_libjbig
|
||||||
with_liblzma
|
|
||||||
with_libxpm
|
with_libxpm
|
||||||
with_libiconv
|
with_libiconv
|
||||||
with_libmspack
|
with_libmspack
|
||||||
@@ -1104,6 +1103,7 @@ with_xtest
|
|||||||
with_dmalloc
|
with_dmalloc
|
||||||
with_sdl
|
with_sdl
|
||||||
with_regex
|
with_regex
|
||||||
|
with_liblzma
|
||||||
with_zlib
|
with_zlib
|
||||||
with_expat
|
with_expat
|
||||||
with_macosx_sdk
|
with_macosx_sdk
|
||||||
@@ -2329,7 +2329,6 @@ Optional Packages:
|
|||||||
--with-libjpeg use libjpeg (JPEG file format)
|
--with-libjpeg use libjpeg (JPEG file format)
|
||||||
--with-libtiff use libtiff (TIFF file format)
|
--with-libtiff use libtiff (TIFF file format)
|
||||||
--without-libjbig don't use libjbig in libtiff even if available)
|
--without-libjbig don't use libjbig in libtiff even if available)
|
||||||
--without-liblzma don't use liblzma in libtiff even if available)
|
|
||||||
--with-libxpm use libxpm (XPM file format)
|
--with-libxpm use libxpm (XPM file format)
|
||||||
--with-libiconv use libiconv (character conversion)
|
--with-libiconv use libiconv (character conversion)
|
||||||
--with-libmspack use libmspack (CHM help files loading)
|
--with-libmspack use libmspack (CHM help files loading)
|
||||||
@@ -2341,6 +2340,7 @@ Optional Packages:
|
|||||||
--with-dmalloc use dmalloc library (http://dmalloc.com/)
|
--with-dmalloc use dmalloc library (http://dmalloc.com/)
|
||||||
--with-sdl use SDL for audio on Unix
|
--with-sdl use SDL for audio on Unix
|
||||||
--with-regex enable support for wxRegEx class
|
--with-regex enable support for wxRegEx class
|
||||||
|
--with-liblzma use LZMA compression)
|
||||||
--with-zlib use zlib for LZW compression
|
--with-zlib use zlib for LZW compression
|
||||||
--with-expat enable XML support using expat parser
|
--with-expat enable XML support using expat parser
|
||||||
--with-macosx-sdk=PATH use an OS X SDK at PATH
|
--with-macosx-sdk=PATH use an OS X SDK at PATH
|
||||||
@@ -3177,48 +3177,6 @@ $as_echo "$ac_res" >&6; }
|
|||||||
|
|
||||||
} # ac_fn_c_check_type
|
} # ac_fn_c_check_type
|
||||||
|
|
||||||
# ac_fn_cxx_try_run LINENO
|
|
||||||
# ------------------------
|
|
||||||
# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
|
|
||||||
# that executables *can* be run.
|
|
||||||
ac_fn_cxx_try_run ()
|
|
||||||
{
|
|
||||||
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
|
||||||
if { { ac_try="$ac_link"
|
|
||||||
case "(($ac_try" in
|
|
||||||
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
|
|
||||||
*) ac_try_echo=$ac_try;;
|
|
||||||
esac
|
|
||||||
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
|
|
||||||
$as_echo "$ac_try_echo"; } >&5
|
|
||||||
(eval "$ac_link") 2>&5
|
|
||||||
ac_status=$?
|
|
||||||
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
|
||||||
test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
|
|
||||||
{ { case "(($ac_try" in
|
|
||||||
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
|
|
||||||
*) ac_try_echo=$ac_try;;
|
|
||||||
esac
|
|
||||||
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
|
|
||||||
$as_echo "$ac_try_echo"; } >&5
|
|
||||||
(eval "$ac_try") 2>&5
|
|
||||||
ac_status=$?
|
|
||||||
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
|
||||||
test $ac_status = 0; }; }; then :
|
|
||||||
ac_retval=0
|
|
||||||
else
|
|
||||||
$as_echo "$as_me: program exited with status $ac_status" >&5
|
|
||||||
$as_echo "$as_me: failed program was:" >&5
|
|
||||||
sed 's/^/| /' conftest.$ac_ext >&5
|
|
||||||
|
|
||||||
ac_retval=$ac_status
|
|
||||||
fi
|
|
||||||
rm -rf conftest.dSYM conftest_ipa8_conftest.oo
|
|
||||||
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
|
|
||||||
as_fn_set_status $ac_retval
|
|
||||||
|
|
||||||
} # ac_fn_cxx_try_run
|
|
||||||
|
|
||||||
# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
|
# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
|
||||||
# -------------------------------------------------------
|
# -------------------------------------------------------
|
||||||
# Tests whether HEADER exists, giving a warning if it cannot be compiled using
|
# Tests whether HEADER exists, giving a warning if it cannot be compiled using
|
||||||
@@ -3309,6 +3267,48 @@ fi
|
|||||||
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
|
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
|
||||||
|
|
||||||
} # ac_fn_c_check_header_mongrel
|
} # ac_fn_c_check_header_mongrel
|
||||||
|
|
||||||
|
# ac_fn_cxx_try_run LINENO
|
||||||
|
# ------------------------
|
||||||
|
# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
|
||||||
|
# that executables *can* be run.
|
||||||
|
ac_fn_cxx_try_run ()
|
||||||
|
{
|
||||||
|
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||||||
|
if { { ac_try="$ac_link"
|
||||||
|
case "(($ac_try" in
|
||||||
|
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
|
||||||
|
*) ac_try_echo=$ac_try;;
|
||||||
|
esac
|
||||||
|
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
|
||||||
|
$as_echo "$ac_try_echo"; } >&5
|
||||||
|
(eval "$ac_link") 2>&5
|
||||||
|
ac_status=$?
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||||
|
test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
|
||||||
|
{ { case "(($ac_try" in
|
||||||
|
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
|
||||||
|
*) ac_try_echo=$ac_try;;
|
||||||
|
esac
|
||||||
|
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
|
||||||
|
$as_echo "$ac_try_echo"; } >&5
|
||||||
|
(eval "$ac_try") 2>&5
|
||||||
|
ac_status=$?
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||||
|
test $ac_status = 0; }; }; then :
|
||||||
|
ac_retval=0
|
||||||
|
else
|
||||||
|
$as_echo "$as_me: program exited with status $ac_status" >&5
|
||||||
|
$as_echo "$as_me: failed program was:" >&5
|
||||||
|
sed 's/^/| /' conftest.$ac_ext >&5
|
||||||
|
|
||||||
|
ac_retval=$ac_status
|
||||||
|
fi
|
||||||
|
rm -rf conftest.dSYM conftest_ipa8_conftest.oo
|
||||||
|
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
|
||||||
|
as_fn_set_status $ac_retval
|
||||||
|
|
||||||
|
} # ac_fn_cxx_try_run
|
||||||
cat >config.log <<_ACEOF
|
cat >config.log <<_ACEOF
|
||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
@@ -4751,7 +4751,6 @@ fi
|
|||||||
|
|
||||||
if test "$wxUSE_LIBTIFF" = "builtin" ; then
|
if test "$wxUSE_LIBTIFF" = "builtin" ; then
|
||||||
wxUSE_LIBJBIG=no
|
wxUSE_LIBJBIG=no
|
||||||
wxUSE_LIBLZMA=no
|
|
||||||
else
|
else
|
||||||
|
|
||||||
withstring=without
|
withstring=without
|
||||||
@@ -4782,35 +4781,6 @@ fi
|
|||||||
|
|
||||||
eval "$wx_cv_use_libjbig"
|
eval "$wx_cv_use_libjbig"
|
||||||
|
|
||||||
|
|
||||||
withstring=without
|
|
||||||
defaultval=$wxUSE_ALL_FEATURES
|
|
||||||
if test -z "$defaultval"; then
|
|
||||||
if test x"$withstring" = xwithout; then
|
|
||||||
defaultval=yes
|
|
||||||
else
|
|
||||||
defaultval=no
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check whether --with-liblzma was given.
|
|
||||||
if test "${with_liblzma+set}" = set; then :
|
|
||||||
withval=$with_liblzma;
|
|
||||||
if test "$withval" = yes; then
|
|
||||||
wx_cv_use_liblzma='wxUSE_LIBLZMA=yes'
|
|
||||||
else
|
|
||||||
wx_cv_use_liblzma='wxUSE_LIBLZMA=no'
|
|
||||||
fi
|
|
||||||
|
|
||||||
else
|
|
||||||
|
|
||||||
wx_cv_use_liblzma='wxUSE_LIBLZMA=${'DEFAULT_wxUSE_LIBLZMA":-$defaultval}"
|
|
||||||
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
eval "$wx_cv_use_liblzma"
|
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
@@ -5150,6 +5120,35 @@ fi
|
|||||||
eval "$wx_cv_use_regex"
|
eval "$wx_cv_use_regex"
|
||||||
|
|
||||||
|
|
||||||
|
withstring=
|
||||||
|
defaultval=$wxUSE_ALL_FEATURES
|
||||||
|
if test -z "$defaultval"; then
|
||||||
|
if test x"$withstring" = xwithout; then
|
||||||
|
defaultval=yes
|
||||||
|
else
|
||||||
|
defaultval=no
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check whether --with-liblzma was given.
|
||||||
|
if test "${with_liblzma+set}" = set; then :
|
||||||
|
withval=$with_liblzma;
|
||||||
|
if test "$withval" = yes; then
|
||||||
|
wx_cv_use_liblzma='wxUSE_LIBLZMA=yes'
|
||||||
|
else
|
||||||
|
wx_cv_use_liblzma='wxUSE_LIBLZMA=no'
|
||||||
|
fi
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
wx_cv_use_liblzma='wxUSE_LIBLZMA=${'DEFAULT_wxUSE_LIBLZMA":-$defaultval}"
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
eval "$wx_cv_use_liblzma"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Check whether --with-zlib was given.
|
# Check whether --with-zlib was given.
|
||||||
if test "${with_zlib+set}" = set; then :
|
if test "${with_zlib+set}" = set; then :
|
||||||
@@ -23317,9 +23316,16 @@ fi
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
LZMA_LINK=
|
if test "$wxUSE_LIBLZMA" != "no"; then
|
||||||
if test "$wxUSE_LIBLZMA" = "yes"; then
|
ac_fn_c_check_header_mongrel "$LINENO" "lzma.h" "ac_cv_header_lzma_h" "$ac_includes_default"
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for lzma_code in -llzma" >&5
|
if test "x$ac_cv_header_lzma_h" = xyes; then :
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if test "$ac_cv_header_lzma_h" = "yes"; then
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for lzma_code in -llzma" >&5
|
||||||
$as_echo_n "checking for lzma_code in -llzma... " >&6; }
|
$as_echo_n "checking for lzma_code in -llzma... " >&6; }
|
||||||
if ${ac_cv_lib_lzma_lzma_code+:} false; then :
|
if ${ac_cv_lib_lzma_lzma_code+:} false; then :
|
||||||
$as_echo_n "(cached) " >&6
|
$as_echo_n "(cached) " >&6
|
||||||
@@ -23356,10 +23362,22 @@ fi
|
|||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lzma_lzma_code" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lzma_lzma_code" >&5
|
||||||
$as_echo "$ac_cv_lib_lzma_lzma_code" >&6; }
|
$as_echo "$ac_cv_lib_lzma_lzma_code" >&6; }
|
||||||
if test "x$ac_cv_lib_lzma_lzma_code" = xyes; then :
|
if test "x$ac_cv_lib_lzma_lzma_code" = xyes; then :
|
||||||
LZMA_LINK=" -llzma"
|
|
||||||
|
LZMA_LINK="-llzma"
|
||||||
|
LIBS="$LZMA_LINK $LIBS"
|
||||||
|
$as_echo "#define wxUSE_LIBLZMA 1" >>confdefs.h
|
||||||
|
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
else
|
fi
|
||||||
|
|
||||||
|
if test -z "$LZMA_LINK"; then
|
||||||
|
wxUSE_LIBLZMA=no
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$HAVE_LZMA" = "no" -o "$wxUSE_LIBTIFF" = "builtin"; then
|
||||||
ac_configure_args="$ac_configure_args --disable-lzma"
|
ac_configure_args="$ac_configure_args --disable-lzma"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -23424,7 +23442,7 @@ if test "$wxUSE_LIBTIFF" != "no" ; then
|
|||||||
if test "$wxUSE_ZLIB" = "sys"; then
|
if test "$wxUSE_ZLIB" = "sys"; then
|
||||||
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $ZLIB_LINK"
|
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $ZLIB_LINK"
|
||||||
fi
|
fi
|
||||||
if test "$wxUSE_LIBLZMA" = "yes"; then
|
if test -n "$LZMA_LINK"; then
|
||||||
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $LZMA_LINK"
|
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $LZMA_LINK"
|
||||||
fi
|
fi
|
||||||
if test "$wxUSE_LIBJBIG" = "yes"; then
|
if test "$wxUSE_LIBJBIG" = "yes"; then
|
||||||
@@ -38925,6 +38943,11 @@ case "$wxUSE_EXPAT" in
|
|||||||
WXCONFIG_LIBS="$EXPAT_LINK $WXCONFIG_LIBS"
|
WXCONFIG_LIBS="$EXPAT_LINK $WXCONFIG_LIBS"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
if test "$wxUSE_LIBLZMA" = "yes"; then
|
||||||
|
if test "$wxUSE_GUI" != "yes" -o "$wxUSE_LIBTIFF" != "sys"; then
|
||||||
|
WXCONFIG_LIBS="$LZMA_LINK $WXCONFIG_LIBS"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
case "$wxUSE_ZLIB" in
|
case "$wxUSE_ZLIB" in
|
||||||
builtin)
|
builtin)
|
||||||
wxconfig_3rdparty="zlib $wxconfig_3rdparty"
|
wxconfig_3rdparty="zlib $wxconfig_3rdparty"
|
||||||
@@ -43251,6 +43274,7 @@ echo " tiff ${wxUSE_LIBTIFF-
|
|||||||
if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1; then
|
if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1; then
|
||||||
echo " xpm ${wxUSE_LIBXPM-none}"
|
echo " xpm ${wxUSE_LIBXPM-none}"
|
||||||
fi
|
fi
|
||||||
|
echo " lzma ${wxUSE_LIBLZMA}"
|
||||||
echo " zlib ${wxUSE_ZLIB}"
|
echo " zlib ${wxUSE_ZLIB}"
|
||||||
echo " expat ${wxUSE_EXPAT}"
|
echo " expat ${wxUSE_EXPAT}"
|
||||||
echo " libmspack ${wxUSE_LIBMSPACK}"
|
echo " libmspack ${wxUSE_LIBMSPACK}"
|
||||||
|
43
configure.in
43
configure.in
@@ -525,14 +525,12 @@ WX_ARG_SYS_WITH(libpng, [ --with-libpng use libpng (PNG image form
|
|||||||
WX_ARG_SYS_WITH(libjpeg, [ --with-libjpeg use libjpeg (JPEG file format)], wxUSE_LIBJPEG)
|
WX_ARG_SYS_WITH(libjpeg, [ --with-libjpeg use libjpeg (JPEG file format)], wxUSE_LIBJPEG)
|
||||||
WX_ARG_SYS_WITH(libtiff, [ --with-libtiff use libtiff (TIFF file format)], wxUSE_LIBTIFF)
|
WX_ARG_SYS_WITH(libtiff, [ --with-libtiff use libtiff (TIFF file format)], wxUSE_LIBTIFF)
|
||||||
|
|
||||||
dnl We don't provide built-in versions of these libraries, so if the use of
|
dnl We don't provide built-in version of this library, so if the use of system
|
||||||
dnl system libraries is explicitly disabled, we can't use them at all.
|
dnl libraries is explicitly disabled, we can't use it at all.
|
||||||
if test "$wxUSE_LIBTIFF" = "builtin" ; then
|
if test "$wxUSE_LIBTIFF" = "builtin" ; then
|
||||||
wxUSE_LIBJBIG=no
|
wxUSE_LIBJBIG=no
|
||||||
wxUSE_LIBLZMA=no
|
|
||||||
else
|
else
|
||||||
WX_ARG_WITHOUT(libjbig, [ --without-libjbig don't use libjbig in libtiff even if available)], wxUSE_LIBJBIG)
|
WX_ARG_WITHOUT(libjbig, [ --without-libjbig don't use libjbig in libtiff even if available)], wxUSE_LIBJBIG)
|
||||||
WX_ARG_WITHOUT(liblzma, [ --without-liblzma don't use liblzma in libtiff even if available)], wxUSE_LIBLZMA)
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
WX_ARG_SYS_WITH(libxpm, [ --with-libxpm use libxpm (XPM file format)], wxUSE_LIBXPM)
|
WX_ARG_SYS_WITH(libxpm, [ --with-libxpm use libxpm (XPM file format)], wxUSE_LIBXPM)
|
||||||
@@ -550,6 +548,7 @@ dnl for GUI only
|
|||||||
WX_ARG_WITH(dmalloc, [ --with-dmalloc use dmalloc library (http://dmalloc.com/)], wxUSE_DMALLOC)
|
WX_ARG_WITH(dmalloc, [ --with-dmalloc use dmalloc library (http://dmalloc.com/)], wxUSE_DMALLOC)
|
||||||
WX_ARG_WITH(sdl, [ --with-sdl use SDL for audio on Unix], wxUSE_LIBSDL)
|
WX_ARG_WITH(sdl, [ --with-sdl use SDL for audio on Unix], wxUSE_LIBSDL)
|
||||||
WX_ARG_SYS_WITH(regex, [ --with-regex enable support for wxRegEx class], wxUSE_REGEX)
|
WX_ARG_SYS_WITH(regex, [ --with-regex enable support for wxRegEx class], wxUSE_REGEX)
|
||||||
|
WX_ARG_WITH(liblzma, [ --with-liblzma use LZMA compression)], wxUSE_LIBLZMA)
|
||||||
WX_ARG_SYS_WITH(zlib, [ --with-zlib use zlib for LZW compression], wxUSE_ZLIB)
|
WX_ARG_SYS_WITH(zlib, [ --with-zlib use zlib for LZW compression], wxUSE_ZLIB)
|
||||||
WX_ARG_SYS_WITH(expat, [ --with-expat enable XML support using expat parser], wxUSE_EXPAT)
|
WX_ARG_SYS_WITH(expat, [ --with-expat enable XML support using expat parser], wxUSE_EXPAT)
|
||||||
|
|
||||||
@@ -2556,10 +2555,28 @@ dnl ------------------------------------------------------------------------
|
|||||||
dnl Check for lzma library
|
dnl Check for lzma library
|
||||||
dnl ------------------------------------------------------------------------
|
dnl ------------------------------------------------------------------------
|
||||||
|
|
||||||
LZMA_LINK=
|
if test "$wxUSE_LIBLZMA" != "no"; then
|
||||||
if test "$wxUSE_LIBLZMA" = "yes"; then
|
AC_CHECK_HEADER(lzma.h,,,[])
|
||||||
AC_CHECK_LIB(lzma, lzma_code, LZMA_LINK=" -llzma")
|
|
||||||
else
|
if test "$ac_cv_header_lzma_h" = "yes"; then
|
||||||
|
AC_CHECK_LIB(lzma, lzma_code,
|
||||||
|
[
|
||||||
|
LZMA_LINK="-llzma"
|
||||||
|
LIBS="$LZMA_LINK $LIBS"
|
||||||
|
AC_DEFINE(wxUSE_LIBLZMA)
|
||||||
|
])
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "$LZMA_LINK"; then
|
||||||
|
wxUSE_LIBLZMA=no
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl We need to disable the use of lzma in built-in libtiff explicitly, as
|
||||||
|
dnl otherwise we'd depend on the system lzma library, which is typically
|
||||||
|
dnl undesirable when using builtin libraries. We also disable the use of lzma
|
||||||
|
dnl if it's not available anyhow, just to speed up libtiff configure a little.
|
||||||
|
if test "$HAVE_LZMA" = "no" -o "$wxUSE_LIBTIFF" = "builtin"; then
|
||||||
ac_configure_args="$ac_configure_args --disable-lzma"
|
ac_configure_args="$ac_configure_args --disable-lzma"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -2592,7 +2609,7 @@ if test "$wxUSE_LIBTIFF" != "no" ; then
|
|||||||
if test "$wxUSE_ZLIB" = "sys"; then
|
if test "$wxUSE_ZLIB" = "sys"; then
|
||||||
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $ZLIB_LINK"
|
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $ZLIB_LINK"
|
||||||
fi
|
fi
|
||||||
if test "$wxUSE_LIBLZMA" = "yes"; then
|
if test -n "$LZMA_LINK"; then
|
||||||
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $LZMA_LINK"
|
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $LZMA_LINK"
|
||||||
fi
|
fi
|
||||||
if test "$wxUSE_LIBJBIG" = "yes"; then
|
if test "$wxUSE_LIBJBIG" = "yes"; then
|
||||||
@@ -7908,6 +7925,13 @@ case "$wxUSE_EXPAT" in
|
|||||||
WXCONFIG_LIBS="$EXPAT_LINK $WXCONFIG_LIBS"
|
WXCONFIG_LIBS="$EXPAT_LINK $WXCONFIG_LIBS"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
if test "$wxUSE_LIBLZMA" = "yes"; then
|
||||||
|
dnl It could be already present in WXCONFIG_LIBS as tiff dependency, avoid
|
||||||
|
dnl adding it again in this case:
|
||||||
|
if test "$wxUSE_GUI" != "yes" -o "$wxUSE_LIBTIFF" != "sys"; then
|
||||||
|
WXCONFIG_LIBS="$LZMA_LINK $WXCONFIG_LIBS"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
case "$wxUSE_ZLIB" in
|
case "$wxUSE_ZLIB" in
|
||||||
builtin)
|
builtin)
|
||||||
wxconfig_3rdparty="zlib $wxconfig_3rdparty"
|
wxconfig_3rdparty="zlib $wxconfig_3rdparty"
|
||||||
@@ -8389,6 +8413,7 @@ echo " tiff ${wxUSE_LIBTIFF-
|
|||||||
if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1; then
|
if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1; then
|
||||||
echo " xpm ${wxUSE_LIBXPM-none}"
|
echo " xpm ${wxUSE_LIBXPM-none}"
|
||||||
fi
|
fi
|
||||||
|
echo " lzma ${wxUSE_LIBLZMA}"
|
||||||
echo " zlib ${wxUSE_ZLIB}"
|
echo " zlib ${wxUSE_ZLIB}"
|
||||||
echo " expat ${wxUSE_EXPAT}"
|
echo " expat ${wxUSE_EXPAT}"
|
||||||
echo " libmspack ${wxUSE_LIBMSPACK}"
|
echo " libmspack ${wxUSE_LIBMSPACK}"
|
||||||
|
@@ -72,6 +72,7 @@ Changes in behaviour which may result in build errors
|
|||||||
|
|
||||||
All:
|
All:
|
||||||
|
|
||||||
|
- Add wxLZMA{Input,Output}Stream classes using external liblzma.
|
||||||
- Make wxList and wxVector iterators conform to input iterator requirements.
|
- Make wxList and wxVector iterators conform to input iterator requirements.
|
||||||
- Fix MT-safety problem when reading and writing from wxSocket (jkubalik).
|
- Fix MT-safety problem when reading and writing from wxSocket (jkubalik).
|
||||||
|
|
||||||
|
@@ -703,6 +703,8 @@ Related overview: @ref overview_stream
|
|||||||
@li wxTempFileOutputStream: Stream to safely replace an existing file
|
@li wxTempFileOutputStream: Stream to safely replace an existing file
|
||||||
@li wxStringInputStream: String input stream class
|
@li wxStringInputStream: String input stream class
|
||||||
@li wxStringOutputStream: String output stream class
|
@li wxStringOutputStream: String output stream class
|
||||||
|
@li wxLZMAInputStream: LZMA decompression stream class
|
||||||
|
@li wxLZMAOutputStream: LZMA compression stream class
|
||||||
@li wxZlibInputStream: Zlib and gzip (compression) input stream class
|
@li wxZlibInputStream: Zlib and gzip (compression) input stream class
|
||||||
@li wxZlibOutputStream: Zlib and gzip (compression) output stream class
|
@li wxZlibOutputStream: Zlib and gzip (compression) output stream class
|
||||||
@li wxZipInputStream: Input stream for reading from ZIP archives
|
@li wxZipInputStream: Input stream for reading from ZIP archives
|
||||||
|
@@ -148,6 +148,7 @@ library:
|
|||||||
@itemdef{wxUSE_IPV6, Use experimental wxIPV6address and related classes.}
|
@itemdef{wxUSE_IPV6, Use experimental wxIPV6address and related classes.}
|
||||||
@itemdef{wxUSE_JOYSTICK, Use wxJoystick class.}
|
@itemdef{wxUSE_JOYSTICK, Use wxJoystick class.}
|
||||||
@itemdef{wxUSE_LIBJPEG, Enables JPEG format support (requires libjpeg).}
|
@itemdef{wxUSE_LIBJPEG, Enables JPEG format support (requires libjpeg).}
|
||||||
|
@itemdef{wxUSE_LIBLZMA, Enables LZMA compression support (see @ref page_build_liblzma).}
|
||||||
@itemdef{wxUSE_LIBPNG, Enables PNG format support (requires libpng). Also requires wxUSE_ZLIB.}
|
@itemdef{wxUSE_LIBPNG, Enables PNG format support (requires libpng). Also requires wxUSE_ZLIB.}
|
||||||
@itemdef{wxUSE_LIBTIFF, Enables TIFF format support (requires libtiff).}
|
@itemdef{wxUSE_LIBTIFF, Enables TIFF format support (requires libtiff).}
|
||||||
@itemdef{wxUSE_LISTBOOK, Use wxListbook class.}
|
@itemdef{wxUSE_LISTBOOK, Use wxListbook class.}
|
||||||
|
140
docs/doxygen/mainpages/liblzma.h
Normal file
140
docs/doxygen/mainpages/liblzma.h
Normal file
@@ -0,0 +1,140 @@
|
|||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Name: liblzma.h
|
||||||
|
// Purpose: Documentation of the use of liblzma with wxWidgets
|
||||||
|
// Author: Vadim Zeitlin <vadim@wxwidgets.org>
|
||||||
|
// Licence: wxWindows licence
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
/**
|
||||||
|
|
||||||
|
@page page_build_liblzma Using LZMA compression with liblzma
|
||||||
|
|
||||||
|
To use wxLZMAInputStream and wxLZMAOutputStream classes, a public domain
|
||||||
|
liblzma library is required when building wxWidgets. This guide explains how to
|
||||||
|
make liblzma available and let wxWidgets build system use it. The exact steps
|
||||||
|
depend on the operating system and compiler used, please refer to the
|
||||||
|
section appropriate for your environment below.
|
||||||
|
|
||||||
|
@section page_build_liblzma_unix Unix-like operating system (including Cygwin)
|
||||||
|
|
||||||
|
Under many Unix or Unix-like (including Cygwin) systems, liblzma is available
|
||||||
|
as a system package and the simplest thing to do is to just install it using
|
||||||
|
the system-specific tool (apt, yum, ...). Just note that you need to install
|
||||||
|
the liblzma-dev or liblzma-devel package in order to obtain the library headers
|
||||||
|
and not just the library itself.
|
||||||
|
|
||||||
|
If your system doesn't provide such package or you need to use a newer version
|
||||||
|
than is available in the system repositories, it is also simple to build
|
||||||
|
liblzma from sources: basically, just download the library sources from
|
||||||
|
https://tukaani.org/xz/ or clone its repository and perform the usual
|
||||||
|
|
||||||
|
@code
|
||||||
|
$ ./configure
|
||||||
|
$ make
|
||||||
|
$ make install
|
||||||
|
@endcode
|
||||||
|
|
||||||
|
commands sequence.
|
||||||
|
|
||||||
|
As wxWidgets is built using either configure or CMake under Unix-like systems,
|
||||||
|
there is nothing special to do to let wxWidgets use liblzma, as it will be
|
||||||
|
detected automatically -- just check the end of configure or CMake output to
|
||||||
|
confirm that it was found. If this is not the case because the library was
|
||||||
|
installed in some non-default location, you need to provide @c CPPFLAGS and @c
|
||||||
|
LDFLAGS on configure command line, e.g.:
|
||||||
|
|
||||||
|
@code
|
||||||
|
$ ../configure CPPFLAGS=-I/opt/liblzma/include LDFLAGS=-L/opt/liblzma/lib
|
||||||
|
@endcode
|
||||||
|
|
||||||
|
|
||||||
|
@section page_build_liblzma_msw MSW not using configure
|
||||||
|
|
||||||
|
When not using configure, you must edit @c wx/msw/setup.h file and change the
|
||||||
|
value of @c wxUSE_LIBLZMA option to @c 1 manually in order to enable LZMA
|
||||||
|
support, which is disabled by default.
|
||||||
|
|
||||||
|
Next, you need to actually ensure that the library is available to be able to
|
||||||
|
build wxWidgets:
|
||||||
|
|
||||||
|
@subsection page_build_liblzma_msw_vcpkg MSW using MSVS 2015 with Vcpkg
|
||||||
|
|
||||||
|
If you build wxWidgets with Microsoft Visual Studio 2015.3 or later, you can
|
||||||
|
use Microsoft vcpkg tool (see https://github.com/Microsoft/vcpkg) to install
|
||||||
|
liblzma as any other library and integrate it with Microsoft Visual Studio
|
||||||
|
automatically. Please see vcpkg documentation for details, but, basically, it's
|
||||||
|
as simple as executing the following commands:
|
||||||
|
|
||||||
|
@code
|
||||||
|
> git clone https://github.com/Microsoft/vcpkg.git
|
||||||
|
> cd vcpkg
|
||||||
|
> .\bootstrap-vcpkg.bat
|
||||||
|
> .\vcpkg integrate install
|
||||||
|
> .\vcpkg install liblzma
|
||||||
|
@endcode
|
||||||
|
|
||||||
|
Afterwards, liblzma headers and libraries (in DLL form) will be available to
|
||||||
|
all C++ Visual Studio projects, including wxWidgets, so you just need to build
|
||||||
|
it as usual, i.e. by opening @c build/msw/wx_vcXX.sln file and building it.
|
||||||
|
|
||||||
|
|
||||||
|
@section page_build_liblzma_msw_manual MSW manual setup
|
||||||
|
|
||||||
|
First of all, you need to either build or download liblzma binaries. Building
|
||||||
|
the library from source with gcc requires configure, and as you don't use an
|
||||||
|
environment capable of running it (if you're, you're reading the wrong section
|
||||||
|
of this guide, please go to the first one instead), it might be simpler to just
|
||||||
|
download the binaries from https://tukaani.org/xz/
|
||||||
|
|
||||||
|
However these binaries don't provide import libraries for MSVC, so you may
|
||||||
|
prefer building from source when using this compiler, provided it is at least
|
||||||
|
2013.2 or later (otherwise, you must use the binaries and create the import
|
||||||
|
library from the DLL). To do it, simply open the MSVS solution provided under
|
||||||
|
@c windows directory of the source archive corresponding to your compiler
|
||||||
|
version and build all the relevant configurations. Notice that you may build it
|
||||||
|
as either a static or a dynamic library, but if you choose the former, you must
|
||||||
|
also predefine @c LZMA_API_STATIC when building wxWidgets.
|
||||||
|
|
||||||
|
|
||||||
|
Second, you need to let wxWidgets build system know about the liblzma headers
|
||||||
|
and libraries location. When using makefiles, with either gcc or MSVC compiler,
|
||||||
|
this can be done simply by specifying @c CPPFLAGS and @c LDFLAGS on make
|
||||||
|
command line, e.g.
|
||||||
|
|
||||||
|
@code
|
||||||
|
> make -f makefile.gcc CPPFLAGS=-Ic:/dev/include LDFLAGS=-Lc:/dev/lib
|
||||||
|
@endcode
|
||||||
|
|
||||||
|
If you built liblzma as a static library, change @c CPPFLAGS to also include @c
|
||||||
|
-DLZMA_API_STATIC.
|
||||||
|
|
||||||
|
|
||||||
|
When building wxWidgets with MSVC project files, you must update them to use
|
||||||
|
liblzma. For this, start by copying build\\msw\\wx_setup.props file to
|
||||||
|
build\\msw\\wx_local.props, if you don't have the latter file yet. Then open
|
||||||
|
this file in your favourite editor and locate the @c Link tag inside an @c
|
||||||
|
ItemDefinitionGroup tag and add a new @c AdditionalIncludeDirectories line
|
||||||
|
inside the @c ClCompile tag as well as add @c liblzma.lib to the @c
|
||||||
|
AdditionalDependencies tag under @c Link itself. The result should look like
|
||||||
|
the following, assuming liblzma sources are in c:\\src\\liblzma:
|
||||||
|
|
||||||
|
@code
|
||||||
|
<ItemDefinitionGroup>
|
||||||
|
<ClCompile>
|
||||||
|
... any existing lines here ...
|
||||||
|
<AdditionalIncludeDirectories>c:\src\liblzma\src\liblzma\api;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
<!--
|
||||||
|
Uncomment this line if, and only if, you link with liblzma statically.
|
||||||
|
<PreprocessorDefinitions>LZMA_API_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
-->
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<AdditionalDependencies>... all the previously listed libraries;c:\src\liblzma\windows\vs2017\$(Configuration)\$(Platform)\liblzma_dll\liblzma.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
@endcode
|
||||||
|
|
||||||
|
Afterwards, build wxWidgets as usual and don't forget to provide @c liblzma.dll
|
||||||
|
when distributing your application unless you have decided to link it
|
||||||
|
statically.
|
||||||
|
*/
|
@@ -610,6 +610,22 @@
|
|||||||
// wxUSE_LIBPNG
|
// wxUSE_LIBPNG
|
||||||
#define wxUSE_ZLIB 1
|
#define wxUSE_ZLIB 1
|
||||||
|
|
||||||
|
// Set to 1 if liblzma is available to enable wxLZMA{Input,Output}Stream
|
||||||
|
// classes.
|
||||||
|
//
|
||||||
|
// Notice that if you enable this build option when not using configure or
|
||||||
|
// CMake, you need to ensure that liblzma headers and libraries are available
|
||||||
|
// (i.e. by building the library yourself or downloading its binaries) and can
|
||||||
|
// be found, either by copying them to one of the locations searched by the
|
||||||
|
// compiler/linker by default (e.g. any of the directories in the INCLUDE or
|
||||||
|
// LIB environment variables, respectively, when using MSVC) or modify the
|
||||||
|
// make- or project files to add references to these directories.
|
||||||
|
//
|
||||||
|
// Default is 0 under MSW, auto-detected by configure.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you need LZMA compression.
|
||||||
|
#define wxUSE_LIBLZMA 0
|
||||||
|
|
||||||
// If enabled, the code written by Apple will be used to write, in a portable
|
// If enabled, the code written by Apple will be used to write, in a portable
|
||||||
// way, float on the disk. See extended.c for the license which is different
|
// way, float on the disk. See extended.c for the license which is different
|
||||||
// from wxWidgets one.
|
// from wxWidgets one.
|
||||||
|
@@ -611,6 +611,22 @@
|
|||||||
// wxUSE_LIBPNG
|
// wxUSE_LIBPNG
|
||||||
#define wxUSE_ZLIB 1
|
#define wxUSE_ZLIB 1
|
||||||
|
|
||||||
|
// Set to 1 if liblzma is available to enable wxLZMA{Input,Output}Stream
|
||||||
|
// classes.
|
||||||
|
//
|
||||||
|
// Notice that if you enable this build option when not using configure or
|
||||||
|
// CMake, you need to ensure that liblzma headers and libraries are available
|
||||||
|
// (i.e. by building the library yourself or downloading its binaries) and can
|
||||||
|
// be found, either by copying them to one of the locations searched by the
|
||||||
|
// compiler/linker by default (e.g. any of the directories in the INCLUDE or
|
||||||
|
// LIB environment variables, respectively, when using MSVC) or modify the
|
||||||
|
// make- or project files to add references to these directories.
|
||||||
|
//
|
||||||
|
// Default is 0 under MSW, auto-detected by configure.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you need LZMA compression.
|
||||||
|
#define wxUSE_LIBLZMA 0
|
||||||
|
|
||||||
// If enabled, the code written by Apple will be used to write, in a portable
|
// If enabled, the code written by Apple will be used to write, in a portable
|
||||||
// way, float on the disk. See extended.c for the license which is different
|
// way, float on the disk. See extended.c for the license which is different
|
||||||
// from wxWidgets one.
|
// from wxWidgets one.
|
||||||
|
149
include/wx/lzmastream.h
Normal file
149
include/wx/lzmastream.h
Normal file
@@ -0,0 +1,149 @@
|
|||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Name: wx/lzmastream.h
|
||||||
|
// Purpose: Filters streams using LZMA(2) compression
|
||||||
|
// Author: Vadim Zeitlin
|
||||||
|
// Created: 2018-03-29
|
||||||
|
// Copyright: (c) 2018 Vadim Zeitlin <vadim@wxwidgets.org>
|
||||||
|
// Licence: wxWindows licence
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#ifndef _WX_LZMASTREAM_H_
|
||||||
|
#define _WX_LZMASTREAM_H_
|
||||||
|
|
||||||
|
#include "wx/defs.h"
|
||||||
|
|
||||||
|
#if wxUSE_LIBLZMA && wxUSE_STREAMS
|
||||||
|
|
||||||
|
#include "wx/stream.h"
|
||||||
|
#include "wx/versioninfo.h"
|
||||||
|
|
||||||
|
namespace wxPrivate
|
||||||
|
{
|
||||||
|
|
||||||
|
// Private wrapper for lzma_stream struct.
|
||||||
|
struct wxLZMAStream;
|
||||||
|
|
||||||
|
// Common part of input and output LZMA streams: this is just an implementation
|
||||||
|
// detail and is not part of the public API.
|
||||||
|
class WXDLLIMPEXP_BASE wxLZMAData
|
||||||
|
{
|
||||||
|
protected:
|
||||||
|
wxLZMAData();
|
||||||
|
~wxLZMAData();
|
||||||
|
|
||||||
|
wxLZMAStream* m_stream;
|
||||||
|
wxUint8* m_streamBuf;
|
||||||
|
wxFileOffset m_pos;
|
||||||
|
|
||||||
|
wxDECLARE_NO_COPY_CLASS(wxLZMAData);
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace wxPrivate
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Filter for decompressing data compressed using LZMA
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
class WXDLLIMPEXP_BASE wxLZMAInputStream : public wxFilterInputStream,
|
||||||
|
private wxPrivate::wxLZMAData
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit wxLZMAInputStream(wxInputStream& stream)
|
||||||
|
: wxFilterInputStream(stream)
|
||||||
|
{
|
||||||
|
Init();
|
||||||
|
}
|
||||||
|
|
||||||
|
explicit wxLZMAInputStream(wxInputStream* stream)
|
||||||
|
: wxFilterInputStream(stream)
|
||||||
|
{
|
||||||
|
Init();
|
||||||
|
}
|
||||||
|
|
||||||
|
char Peek() wxOVERRIDE { return wxInputStream::Peek(); }
|
||||||
|
wxFileOffset GetLength() const wxOVERRIDE { return wxInputStream::GetLength(); }
|
||||||
|
|
||||||
|
protected:
|
||||||
|
size_t OnSysRead(void *buffer, size_t size) wxOVERRIDE;
|
||||||
|
wxFileOffset OnSysTell() const wxOVERRIDE { return m_pos; }
|
||||||
|
|
||||||
|
private:
|
||||||
|
void Init();
|
||||||
|
};
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Filter for compressing data using LZMA(2) algorithm
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
class WXDLLIMPEXP_BASE wxLZMAOutputStream : public wxFilterOutputStream,
|
||||||
|
private wxPrivate::wxLZMAData
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit wxLZMAOutputStream(wxOutputStream& stream, int level = -1)
|
||||||
|
: wxFilterOutputStream(stream)
|
||||||
|
{
|
||||||
|
Init(level);
|
||||||
|
}
|
||||||
|
|
||||||
|
explicit wxLZMAOutputStream(wxOutputStream* stream, int level = -1)
|
||||||
|
: wxFilterOutputStream(stream)
|
||||||
|
{
|
||||||
|
Init(level);
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual ~wxLZMAOutputStream() { Close(); }
|
||||||
|
|
||||||
|
void Sync() wxOVERRIDE { DoFlush(false); }
|
||||||
|
bool Close() wxOVERRIDE;
|
||||||
|
wxFileOffset GetLength() const wxOVERRIDE { return m_pos; }
|
||||||
|
|
||||||
|
protected:
|
||||||
|
size_t OnSysWrite(const void *buffer, size_t size) wxOVERRIDE;
|
||||||
|
wxFileOffset OnSysTell() const wxOVERRIDE { return m_pos; }
|
||||||
|
|
||||||
|
private:
|
||||||
|
void Init(int level);
|
||||||
|
|
||||||
|
// Write the contents of the internal buffer to the output stream.
|
||||||
|
bool UpdateOutput();
|
||||||
|
|
||||||
|
// Write out the current buffer if necessary, i.e. if no space remains in
|
||||||
|
// it, and reinitialize m_stream to point to it. Returns false on success
|
||||||
|
// or false on error, in which case m_lasterror is updated.
|
||||||
|
bool UpdateOutputIfNecessary();
|
||||||
|
|
||||||
|
// Run LZMA_FINISH (if argument is true) or LZMA_FULL_FLUSH, return true on
|
||||||
|
// success or false on error.
|
||||||
|
bool DoFlush(bool finish);
|
||||||
|
};
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Support for creating LZMA streams from extension/MIME type
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
class WXDLLIMPEXP_BASE wxLZMAClassFactory: public wxFilterClassFactory
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
wxLZMAClassFactory();
|
||||||
|
|
||||||
|
wxFilterInputStream *NewStream(wxInputStream& stream) const wxOVERRIDE
|
||||||
|
{ return new wxLZMAInputStream(stream); }
|
||||||
|
wxFilterOutputStream *NewStream(wxOutputStream& stream) const wxOVERRIDE
|
||||||
|
{ return new wxLZMAOutputStream(stream, -1); }
|
||||||
|
wxFilterInputStream *NewStream(wxInputStream *stream) const wxOVERRIDE
|
||||||
|
{ return new wxLZMAInputStream(stream); }
|
||||||
|
wxFilterOutputStream *NewStream(wxOutputStream *stream) const wxOVERRIDE
|
||||||
|
{ return new wxLZMAOutputStream(stream, -1); }
|
||||||
|
|
||||||
|
const wxChar * const *GetProtocols(wxStreamProtocolType type
|
||||||
|
= wxSTREAM_PROTOCOL) const wxOVERRIDE;
|
||||||
|
|
||||||
|
private:
|
||||||
|
wxDECLARE_DYNAMIC_CLASS(wxLZMAClassFactory);
|
||||||
|
};
|
||||||
|
|
||||||
|
WXDLLIMPEXP_BASE wxVersionInfo wxGetLibLZMAVersionInfo();
|
||||||
|
|
||||||
|
#endif // wxUSE_LIBLZMA && wxUSE_STREAMS
|
||||||
|
|
||||||
|
#endif // _WX_LZMASTREAM_H_
|
@@ -611,6 +611,22 @@
|
|||||||
// wxUSE_LIBPNG
|
// wxUSE_LIBPNG
|
||||||
#define wxUSE_ZLIB 1
|
#define wxUSE_ZLIB 1
|
||||||
|
|
||||||
|
// Set to 1 if liblzma is available to enable wxLZMA{Input,Output}Stream
|
||||||
|
// classes.
|
||||||
|
//
|
||||||
|
// Notice that if you enable this build option when not using configure or
|
||||||
|
// CMake, you need to ensure that liblzma headers and libraries are available
|
||||||
|
// (i.e. by building the library yourself or downloading its binaries) and can
|
||||||
|
// be found, either by copying them to one of the locations searched by the
|
||||||
|
// compiler/linker by default (e.g. any of the directories in the INCLUDE or
|
||||||
|
// LIB environment variables, respectively, when using MSVC) or modify the
|
||||||
|
// make- or project files to add references to these directories.
|
||||||
|
//
|
||||||
|
// Default is 0 under MSW, auto-detected by configure.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you need LZMA compression.
|
||||||
|
#define wxUSE_LIBLZMA 0
|
||||||
|
|
||||||
// If enabled, the code written by Apple will be used to write, in a portable
|
// If enabled, the code written by Apple will be used to write, in a portable
|
||||||
// way, float on the disk. See extended.c for the license which is different
|
// way, float on the disk. See extended.c for the license which is different
|
||||||
// from wxWidgets one.
|
// from wxWidgets one.
|
||||||
|
@@ -611,6 +611,22 @@
|
|||||||
// wxUSE_LIBPNG
|
// wxUSE_LIBPNG
|
||||||
#define wxUSE_ZLIB 1
|
#define wxUSE_ZLIB 1
|
||||||
|
|
||||||
|
// Set to 1 if liblzma is available to enable wxLZMA{Input,Output}Stream
|
||||||
|
// classes.
|
||||||
|
//
|
||||||
|
// Notice that if you enable this build option when not using configure or
|
||||||
|
// CMake, you need to ensure that liblzma headers and libraries are available
|
||||||
|
// (i.e. by building the library yourself or downloading its binaries) and can
|
||||||
|
// be found, either by copying them to one of the locations searched by the
|
||||||
|
// compiler/linker by default (e.g. any of the directories in the INCLUDE or
|
||||||
|
// LIB environment variables, respectively, when using MSVC) or modify the
|
||||||
|
// make- or project files to add references to these directories.
|
||||||
|
//
|
||||||
|
// Default is 0 under MSW, auto-detected by configure.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you need LZMA compression.
|
||||||
|
#define wxUSE_LIBLZMA 0
|
||||||
|
|
||||||
// If enabled, the code written by Apple will be used to write, in a portable
|
// If enabled, the code written by Apple will be used to write, in a portable
|
||||||
// way, float on the disk. See extended.c for the license which is different
|
// way, float on the disk. See extended.c for the license which is different
|
||||||
// from wxWidgets one.
|
// from wxWidgets one.
|
||||||
|
@@ -617,6 +617,22 @@
|
|||||||
// wxUSE_LIBPNG
|
// wxUSE_LIBPNG
|
||||||
#define wxUSE_ZLIB 1
|
#define wxUSE_ZLIB 1
|
||||||
|
|
||||||
|
// Set to 1 if liblzma is available to enable wxLZMA{Input,Output}Stream
|
||||||
|
// classes.
|
||||||
|
//
|
||||||
|
// Notice that if you enable this build option when not using configure or
|
||||||
|
// CMake, you need to ensure that liblzma headers and libraries are available
|
||||||
|
// (i.e. by building the library yourself or downloading its binaries) and can
|
||||||
|
// be found, either by copying them to one of the locations searched by the
|
||||||
|
// compiler/linker by default (e.g. any of the directories in the INCLUDE or
|
||||||
|
// LIB environment variables, respectively, when using MSVC) or modify the
|
||||||
|
// make- or project files to add references to these directories.
|
||||||
|
//
|
||||||
|
// Default is 0 under MSW, auto-detected by configure.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you need LZMA compression.
|
||||||
|
#define wxUSE_LIBLZMA 0
|
||||||
|
|
||||||
// If enabled, the code written by Apple will be used to write, in a portable
|
// If enabled, the code written by Apple will be used to write, in a portable
|
||||||
// way, float on the disk. See extended.c for the license which is different
|
// way, float on the disk. See extended.c for the license which is different
|
||||||
// from wxWidgets one.
|
// from wxWidgets one.
|
||||||
|
@@ -607,6 +607,22 @@
|
|||||||
// wxUSE_LIBPNG
|
// wxUSE_LIBPNG
|
||||||
#define wxUSE_ZLIB 1
|
#define wxUSE_ZLIB 1
|
||||||
|
|
||||||
|
// Set to 1 if liblzma is available to enable wxLZMA{Input,Output}Stream
|
||||||
|
// classes.
|
||||||
|
//
|
||||||
|
// Notice that if you enable this build option when not using configure or
|
||||||
|
// CMake, you need to ensure that liblzma headers and libraries are available
|
||||||
|
// (i.e. by building the library yourself or downloading its binaries) and can
|
||||||
|
// be found, either by copying them to one of the locations searched by the
|
||||||
|
// compiler/linker by default (e.g. any of the directories in the INCLUDE or
|
||||||
|
// LIB environment variables, respectively, when using MSVC) or modify the
|
||||||
|
// make- or project files to add references to these directories.
|
||||||
|
//
|
||||||
|
// Default is 0 under MSW, auto-detected by configure.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you need LZMA compression.
|
||||||
|
#define wxUSE_LIBLZMA 0
|
||||||
|
|
||||||
// If enabled, the code written by Apple will be used to write, in a portable
|
// If enabled, the code written by Apple will be used to write, in a portable
|
||||||
// way, float on the disk. See extended.c for the license which is different
|
// way, float on the disk. See extended.c for the license which is different
|
||||||
// from wxWidgets one.
|
// from wxWidgets one.
|
||||||
|
@@ -610,6 +610,22 @@
|
|||||||
// wxUSE_LIBPNG
|
// wxUSE_LIBPNG
|
||||||
#define wxUSE_ZLIB 1
|
#define wxUSE_ZLIB 1
|
||||||
|
|
||||||
|
// Set to 1 if liblzma is available to enable wxLZMA{Input,Output}Stream
|
||||||
|
// classes.
|
||||||
|
//
|
||||||
|
// Notice that if you enable this build option when not using configure or
|
||||||
|
// CMake, you need to ensure that liblzma headers and libraries are available
|
||||||
|
// (i.e. by building the library yourself or downloading its binaries) and can
|
||||||
|
// be found, either by copying them to one of the locations searched by the
|
||||||
|
// compiler/linker by default (e.g. any of the directories in the INCLUDE or
|
||||||
|
// LIB environment variables, respectively, when using MSVC) or modify the
|
||||||
|
// make- or project files to add references to these directories.
|
||||||
|
//
|
||||||
|
// Default is 0 under MSW, auto-detected by configure.
|
||||||
|
//
|
||||||
|
// Recommended setting: 1 if you need LZMA compression.
|
||||||
|
#define wxUSE_LIBLZMA 0
|
||||||
|
|
||||||
// If enabled, the code written by Apple will be used to write, in a portable
|
// If enabled, the code written by Apple will be used to write, in a portable
|
||||||
// way, float on the disk. See extended.c for the license which is different
|
// way, float on the disk. See extended.c for the license which is different
|
||||||
// from wxWidgets one.
|
// from wxWidgets one.
|
||||||
|
116
interface/wx/lzmastream.h
Normal file
116
interface/wx/lzmastream.h
Normal file
@@ -0,0 +1,116 @@
|
|||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Name: wx/lzmastream.h
|
||||||
|
// Purpose: LZMA [de]compression classes documentation
|
||||||
|
// Author: Vadim Zeitlin
|
||||||
|
// Created: 2018-03-29
|
||||||
|
// Copyright: (c) 2018 Vadim Zeitlin <vadim@wxwidgets.org>
|
||||||
|
// Licence: wxWindows licence
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
/**
|
||||||
|
@class wxLZMAInputStream
|
||||||
|
|
||||||
|
This filter stream decompresses data in XZ format.
|
||||||
|
|
||||||
|
XZ format uses LZMA2 algorithm for compression used for .xz files and is
|
||||||
|
similar to GZip or BZip2 format. Notice that it is different from, and
|
||||||
|
incompatible with, 7z archive format even although it uses the same
|
||||||
|
compression algorithm.
|
||||||
|
|
||||||
|
To decompress contents of standard input to standard output, the following
|
||||||
|
(not optimally efficient) code could be used:
|
||||||
|
@code
|
||||||
|
wxFFileInputStream fin(stdin);
|
||||||
|
wxLZMAInputStream zin(fin);
|
||||||
|
wxFFileOutputStream fout(stdout);
|
||||||
|
zin.Read(fout);
|
||||||
|
|
||||||
|
if ( zin.GetLastError() != wxSTREAM_EOF ) {
|
||||||
|
... handle error ...
|
||||||
|
}
|
||||||
|
@endcode
|
||||||
|
|
||||||
|
See @ref page_build_liblzma for information about liblzma, required in
|
||||||
|
order to use this class.
|
||||||
|
|
||||||
|
@library{wxbase}
|
||||||
|
@category{archive,streams}
|
||||||
|
|
||||||
|
@see wxInputStream, wxZlibInputStream, wxLZMAOutputStream.
|
||||||
|
|
||||||
|
@since 3.1.2
|
||||||
|
*/
|
||||||
|
class wxLZMAInputStream : public wxFilterInputStream
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
/**
|
||||||
|
Create decompressing stream associated with the given underlying
|
||||||
|
stream.
|
||||||
|
|
||||||
|
This overload does not take ownership of the @a stream.
|
||||||
|
*/
|
||||||
|
wxLZMAInputStream(wxInputStream& stream);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Create decompressing stream associated with the given underlying
|
||||||
|
stream and takes ownership of it.
|
||||||
|
|
||||||
|
As with the base wxFilterInputStream class, passing @a stream by
|
||||||
|
pointer indicates that this object takes ownership of it and will
|
||||||
|
delete it when it is itself destroyed.
|
||||||
|
*/
|
||||||
|
wxLZMAInputStream(wxInputStream* stream);
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
@class wxLZMAOutputStream
|
||||||
|
|
||||||
|
This filter stream compresses data using XZ format.
|
||||||
|
|
||||||
|
XZ format uses LZMA compression, making it (significantly) more efficient
|
||||||
|
than Gzip format used by wxZlibOutputStream. Output generated by this class
|
||||||
|
is compatible with xz utilities working with .xz files and also supported
|
||||||
|
by 7-Zip program, even though it is different from its native .7z format.
|
||||||
|
|
||||||
|
See @ref page_build_liblzma for information about liblzma, required in
|
||||||
|
order to use this class.
|
||||||
|
|
||||||
|
@library{wxbase}
|
||||||
|
@category{archive,streams}
|
||||||
|
|
||||||
|
@see wxOutputStream, wxZlibOutputStream, wxLZMAInputStream
|
||||||
|
|
||||||
|
@since 3.1.2
|
||||||
|
*/
|
||||||
|
class wxLZMAOutputStream : public wxFilterOutputStream
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
Create compressing stream associated with the given underlying
|
||||||
|
stream.
|
||||||
|
|
||||||
|
This overload does not take ownership of the @a stream.
|
||||||
|
*/
|
||||||
|
wxLZMAOutputStream(wxOutputStream& stream);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Create compressing stream associated with the given underlying
|
||||||
|
stream and takes ownership of it.
|
||||||
|
|
||||||
|
As with the base wxFilterOutputStream class, passing @a stream by
|
||||||
|
pointer indicates that this object takes ownership of it and will
|
||||||
|
delete it when it is itself destroyed.
|
||||||
|
*/
|
||||||
|
wxLZMAOutputStream(wxOutputStream* stream);
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
Return the version of liblzma library used by LZMA stream classes.
|
||||||
|
|
||||||
|
@see wxVersionInfo
|
||||||
|
|
||||||
|
@header{wx/lzmastream.h}
|
||||||
|
@library{wxbase}
|
||||||
|
|
||||||
|
@since 3.1.2
|
||||||
|
*/
|
||||||
|
wxVersionInfo wxGetLibLZMAVersionInfo();
|
@@ -287,6 +287,8 @@
|
|||||||
|
|
||||||
#define wxUSE_ZLIB 0
|
#define wxUSE_ZLIB 0
|
||||||
|
|
||||||
|
#define wxUSE_LIBLZMA 0
|
||||||
|
|
||||||
#define wxUSE_APPLE_IEEE 0
|
#define wxUSE_APPLE_IEEE 0
|
||||||
|
|
||||||
#define wxUSE_JOYSTICK 0
|
#define wxUSE_JOYSTICK 0
|
||||||
|
405
src/common/lzmastream.cpp
Normal file
405
src/common/lzmastream.cpp
Normal file
@@ -0,0 +1,405 @@
|
|||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Name: src/common/lzmastream.cpp
|
||||||
|
// Purpose: Implementation of LZMA stream classes
|
||||||
|
// Author: Vadim Zeitlin
|
||||||
|
// Created: 2018-03-29
|
||||||
|
// Copyright: (c) 2018 Vadim Zeitlin <vadim@wxwidgets.org>
|
||||||
|
// Licence: wxWindows licence
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// declarations
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// headers
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// for compilers that support precompilation, includes "wx.h".
|
||||||
|
#include "wx/wxprec.h"
|
||||||
|
|
||||||
|
#ifdef __BORLANDC__
|
||||||
|
#pragma hdrstop
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if wxUSE_LIBLZMA && wxUSE_STREAMS
|
||||||
|
|
||||||
|
#include "wx/lzmastream.h"
|
||||||
|
|
||||||
|
#ifndef WX_PRECOMP
|
||||||
|
#include "wx/log.h"
|
||||||
|
#include "wx/translation.h"
|
||||||
|
#endif // WX_PRECOMP
|
||||||
|
|
||||||
|
#include <lzma.h>
|
||||||
|
|
||||||
|
namespace wxPrivate
|
||||||
|
{
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Constants
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
const size_t wxLZMA_BUF_SIZE = 4096;
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Private helpers
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Simpler wrapper around lzma_stream, taking care of initializing and
|
||||||
|
// finalizing it.
|
||||||
|
struct wxLZMAStream : lzma_stream
|
||||||
|
{
|
||||||
|
wxLZMAStream()
|
||||||
|
{
|
||||||
|
memset(this, 0, sizeof(lzma_stream));
|
||||||
|
}
|
||||||
|
|
||||||
|
~wxLZMAStream()
|
||||||
|
{
|
||||||
|
lzma_end(this);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace wxPrivate
|
||||||
|
|
||||||
|
using namespace wxPrivate;
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// implementation
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// Functions
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
wxVersionInfo wxGetLibLZMAVersionInfo()
|
||||||
|
{
|
||||||
|
const uint32_t ver = lzma_version_number();
|
||||||
|
|
||||||
|
// For now ignore the "stability" part of the version.
|
||||||
|
return wxVersionInfo
|
||||||
|
(
|
||||||
|
"liblzma",
|
||||||
|
ver / 10000000,
|
||||||
|
(ver % 10000000) / 10000,
|
||||||
|
(ver % 10000) / 10
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// wxLZMAData: common helpers for compression and decompression
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
wxLZMAData::wxLZMAData()
|
||||||
|
{
|
||||||
|
m_stream = new wxLZMAStream;
|
||||||
|
m_streamBuf = new wxUint8[wxLZMA_BUF_SIZE];
|
||||||
|
m_pos = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
wxLZMAData::~wxLZMAData()
|
||||||
|
{
|
||||||
|
delete [] m_streamBuf;
|
||||||
|
delete m_stream;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// wxLZMAInputStream: decompression
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
void wxLZMAInputStream::Init()
|
||||||
|
{
|
||||||
|
// We don't specify any memory usage limit nor any flags, not even
|
||||||
|
// LZMA_CONCATENATED recommended by liblzma documentation, because we don't
|
||||||
|
// foresee the need to support concatenated compressed files for now.
|
||||||
|
const lzma_ret rc = lzma_stream_decoder(m_stream, UINT64_MAX, 0);
|
||||||
|
switch ( rc )
|
||||||
|
{
|
||||||
|
case LZMA_OK:
|
||||||
|
// Skip setting m_lasterror below.
|
||||||
|
return;
|
||||||
|
|
||||||
|
case LZMA_MEM_ERROR:
|
||||||
|
wxLogError(_("Failed to allocate memory for LZMA decompression."));
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
wxLogError(_("Failed to initialize LZMA decompression: "
|
||||||
|
"unexpected error %u."),
|
||||||
|
rc);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_lasterror = wxSTREAM_READ_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
|
size_t wxLZMAInputStream::OnSysRead(void* outbuf, size_t size)
|
||||||
|
{
|
||||||
|
m_stream->next_out = static_cast<uint8_t*>(outbuf);
|
||||||
|
m_stream->avail_out = size;
|
||||||
|
|
||||||
|
// Decompress input as long as we don't have any errors (including EOF, as
|
||||||
|
// it doesn't make sense to continue after it neither) and have space to
|
||||||
|
// decompress it to.
|
||||||
|
while ( m_lasterror == wxSTREAM_NO_ERROR && m_stream->avail_out > 0 )
|
||||||
|
{
|
||||||
|
// Get more input data if needed.
|
||||||
|
if ( !m_stream->avail_in )
|
||||||
|
{
|
||||||
|
m_parent_i_stream->Read(m_streamBuf, wxLZMA_BUF_SIZE);
|
||||||
|
m_stream->next_in = m_streamBuf;
|
||||||
|
m_stream->avail_in = m_parent_i_stream->LastRead();
|
||||||
|
|
||||||
|
if ( !m_stream->avail_in )
|
||||||
|
{
|
||||||
|
if ( m_parent_i_stream->GetLastError() == wxSTREAM_EOF )
|
||||||
|
{
|
||||||
|
// We have reached end of the underlying stream.
|
||||||
|
m_lasterror = wxSTREAM_EOF;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_lasterror = wxSTREAM_READ_ERROR;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Do decompress.
|
||||||
|
const lzma_ret rc = lzma_code(m_stream, LZMA_RUN);
|
||||||
|
|
||||||
|
wxString err;
|
||||||
|
switch ( rc )
|
||||||
|
{
|
||||||
|
case LZMA_OK:
|
||||||
|
continue;
|
||||||
|
|
||||||
|
case LZMA_STREAM_END:
|
||||||
|
m_lasterror = wxSTREAM_EOF;
|
||||||
|
continue;
|
||||||
|
|
||||||
|
case LZMA_FORMAT_ERROR:
|
||||||
|
err = wxTRANSLATE("input is not in XZ format");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LZMA_OPTIONS_ERROR:
|
||||||
|
err = wxTRANSLATE("input compressed using unknown XZ option");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LZMA_DATA_ERROR:
|
||||||
|
case LZMA_BUF_ERROR:
|
||||||
|
err = wxTRANSLATE("input is corrupted");
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
err = wxTRANSLATE("unknown decompression error");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
wxLogError(_("LZMA decompression error: %s"), wxGetTranslation(err));
|
||||||
|
|
||||||
|
m_lasterror = wxSTREAM_READ_ERROR;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Return the number of bytes actually read, this may be less than the
|
||||||
|
// requested size if we hit EOF.
|
||||||
|
size -= m_stream->avail_out;
|
||||||
|
m_pos += size;
|
||||||
|
return size;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// wxLZMAOutputStream: compression
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
void wxLZMAOutputStream::Init(int level)
|
||||||
|
{
|
||||||
|
if ( level == -1 )
|
||||||
|
level = LZMA_PRESET_DEFAULT;
|
||||||
|
|
||||||
|
// Use the check type recommended by liblzma documentation.
|
||||||
|
const lzma_ret rc = lzma_easy_encoder(m_stream, level, LZMA_CHECK_CRC64);
|
||||||
|
switch ( rc )
|
||||||
|
{
|
||||||
|
case LZMA_OK:
|
||||||
|
// Prepare for the first call to OnSysWrite().
|
||||||
|
m_stream->next_out = m_streamBuf;
|
||||||
|
m_stream->avail_out = wxLZMA_BUF_SIZE;
|
||||||
|
|
||||||
|
// Skip setting m_lasterror below.
|
||||||
|
return;
|
||||||
|
|
||||||
|
case LZMA_MEM_ERROR:
|
||||||
|
wxLogError(_("Failed to allocate memory for LZMA compression."));
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
wxLogError(_("Failed to initialize LZMA compression: "
|
||||||
|
"unexpected error %u."),
|
||||||
|
rc);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_lasterror = wxSTREAM_WRITE_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
|
size_t wxLZMAOutputStream::OnSysWrite(const void *inbuf, size_t size)
|
||||||
|
{
|
||||||
|
m_stream->next_in = static_cast<const uint8_t*>(inbuf);
|
||||||
|
m_stream->avail_in = size;
|
||||||
|
|
||||||
|
// Compress as long as we have any input data, but stop at first error as
|
||||||
|
// it's useless to try to continue after it (or even starting if the stream
|
||||||
|
// had already been in an error state).
|
||||||
|
while ( m_lasterror == wxSTREAM_NO_ERROR && m_stream->avail_in > 0 )
|
||||||
|
{
|
||||||
|
// Flush the output buffer if necessary.
|
||||||
|
if ( !UpdateOutputIfNecessary() )
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
const lzma_ret rc = lzma_code(m_stream, LZMA_RUN);
|
||||||
|
|
||||||
|
wxString err;
|
||||||
|
switch ( rc )
|
||||||
|
{
|
||||||
|
case LZMA_OK:
|
||||||
|
continue;
|
||||||
|
|
||||||
|
case LZMA_MEM_ERROR:
|
||||||
|
err = wxTRANSLATE("out of memory");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case LZMA_STREAM_END:
|
||||||
|
// This is unexpected as we don't use LZMA_FINISH here.
|
||||||
|
wxFAIL_MSG( "Unexpected LZMA stream end" );
|
||||||
|
wxFALLTHROUGH;
|
||||||
|
|
||||||
|
default:
|
||||||
|
err = wxTRANSLATE("unknown compression error");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
wxLogError(_("LZMA compression error: %s"), wxGetTranslation(err));
|
||||||
|
|
||||||
|
m_lasterror = wxSTREAM_WRITE_ERROR;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_pos += size;
|
||||||
|
return size;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool wxLZMAOutputStream::UpdateOutput()
|
||||||
|
{
|
||||||
|
// Write the buffer contents to the real output, taking care only to write
|
||||||
|
// as much of it as we actually have, as the buffer can (and very likely
|
||||||
|
// will) be incomplete.
|
||||||
|
const size_t numOut = wxLZMA_BUF_SIZE - m_stream->avail_out;
|
||||||
|
m_parent_o_stream->Write(m_streamBuf, numOut);
|
||||||
|
if ( m_parent_o_stream->LastWrite() != numOut )
|
||||||
|
{
|
||||||
|
m_lasterror = wxSTREAM_WRITE_ERROR;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool wxLZMAOutputStream::UpdateOutputIfNecessary()
|
||||||
|
{
|
||||||
|
if ( !m_stream->avail_out )
|
||||||
|
{
|
||||||
|
if ( !UpdateOutput() )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
m_stream->next_out = m_streamBuf;
|
||||||
|
m_stream->avail_out = wxLZMA_BUF_SIZE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool wxLZMAOutputStream::DoFlush(bool finish)
|
||||||
|
{
|
||||||
|
const lzma_action action = finish ? LZMA_FINISH : LZMA_FULL_FLUSH;
|
||||||
|
|
||||||
|
while ( m_lasterror == wxSTREAM_NO_ERROR )
|
||||||
|
{
|
||||||
|
if ( !UpdateOutputIfNecessary() )
|
||||||
|
break;
|
||||||
|
|
||||||
|
const lzma_ret rc = lzma_code(m_stream, action);
|
||||||
|
|
||||||
|
wxString err;
|
||||||
|
switch ( rc )
|
||||||
|
{
|
||||||
|
case LZMA_OK:
|
||||||
|
continue;
|
||||||
|
|
||||||
|
case LZMA_STREAM_END:
|
||||||
|
// Don't forget to output the last part of the data.
|
||||||
|
return UpdateOutput();
|
||||||
|
|
||||||
|
case LZMA_MEM_ERROR:
|
||||||
|
err = wxTRANSLATE("out of memory");
|
||||||
|
|
||||||
|
default:
|
||||||
|
err = wxTRANSLATE("unknown compression error");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
wxLogError(_("LZMA compression error when flushing output: %s"),
|
||||||
|
wxGetTranslation(err));
|
||||||
|
|
||||||
|
m_lasterror = wxSTREAM_WRITE_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool wxLZMAOutputStream::Close()
|
||||||
|
{
|
||||||
|
if ( !DoFlush(true) )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
m_stream->next_out = m_streamBuf;
|
||||||
|
m_stream->avail_out = wxLZMA_BUF_SIZE;
|
||||||
|
|
||||||
|
return wxFilterOutputStream::Close() && IsOk();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
// wxLZMAClassFactory: allow creating streams from extension/MIME type
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
wxIMPLEMENT_DYNAMIC_CLASS(wxLZMAClassFactory, wxFilterClassFactory);
|
||||||
|
|
||||||
|
static wxLZMAClassFactory g_wxLZMAClassFactory;
|
||||||
|
|
||||||
|
wxLZMAClassFactory::wxLZMAClassFactory()
|
||||||
|
{
|
||||||
|
if ( this == &g_wxLZMAClassFactory )
|
||||||
|
PushFront();
|
||||||
|
}
|
||||||
|
|
||||||
|
const wxChar * const *
|
||||||
|
wxLZMAClassFactory::GetProtocols(wxStreamProtocolType type) const
|
||||||
|
{
|
||||||
|
static const wxChar *mime[] = { wxT("application/xz"), NULL };
|
||||||
|
static const wxChar *encs[] = { wxT("xz"), NULL };
|
||||||
|
static const wxChar *exts[] = { wxT(".xz"), NULL };
|
||||||
|
|
||||||
|
const wxChar* const* ret = NULL;
|
||||||
|
switch ( type )
|
||||||
|
{
|
||||||
|
case wxSTREAM_PROTOCOL: ret = encs; break;
|
||||||
|
case wxSTREAM_MIMETYPE: ret = mime; break;
|
||||||
|
case wxSTREAM_ENCODING: ret = encs; break;
|
||||||
|
case wxSTREAM_FILEEXT: ret = exts; break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // wxUSE_LIBLZMA && wxUSE_STREAMS
|
@@ -120,6 +120,7 @@ TEST_OBJECTS = \
|
|||||||
test_filestream.o \
|
test_filestream.o \
|
||||||
test_iostreams.o \
|
test_iostreams.o \
|
||||||
test_largefile.o \
|
test_largefile.o \
|
||||||
|
test_lzmastream.o \
|
||||||
test_memstream.o \
|
test_memstream.o \
|
||||||
test_socketstream.o \
|
test_socketstream.o \
|
||||||
test_sstream.o \
|
test_sstream.o \
|
||||||
@@ -687,6 +688,9 @@ test_iostreams.o: $(srcdir)/streams/iostreams.cpp $(TEST_ODEP)
|
|||||||
test_largefile.o: $(srcdir)/streams/largefile.cpp $(TEST_ODEP)
|
test_largefile.o: $(srcdir)/streams/largefile.cpp $(TEST_ODEP)
|
||||||
$(CXXC) -c -o $@ $(TEST_CXXFLAGS) $(srcdir)/streams/largefile.cpp
|
$(CXXC) -c -o $@ $(TEST_CXXFLAGS) $(srcdir)/streams/largefile.cpp
|
||||||
|
|
||||||
|
test_lzmastream.o: $(srcdir)/streams/lzmastream.cpp $(TEST_ODEP)
|
||||||
|
$(CXXC) -c -o $@ $(TEST_CXXFLAGS) $(srcdir)/streams/lzmastream.cpp
|
||||||
|
|
||||||
test_memstream.o: $(srcdir)/streams/memstream.cpp $(TEST_ODEP)
|
test_memstream.o: $(srcdir)/streams/memstream.cpp $(TEST_ODEP)
|
||||||
$(CXXC) -c -o $@ $(TEST_CXXFLAGS) $(srcdir)/streams/memstream.cpp
|
$(CXXC) -c -o $@ $(TEST_CXXFLAGS) $(srcdir)/streams/memstream.cpp
|
||||||
|
|
||||||
|
@@ -102,6 +102,7 @@ TEST_OBJECTS = \
|
|||||||
$(OBJS)\test_filestream.obj \
|
$(OBJS)\test_filestream.obj \
|
||||||
$(OBJS)\test_iostreams.obj \
|
$(OBJS)\test_iostreams.obj \
|
||||||
$(OBJS)\test_largefile.obj \
|
$(OBJS)\test_largefile.obj \
|
||||||
|
$(OBJS)\test_lzmastream.obj \
|
||||||
$(OBJS)\test_memstream.obj \
|
$(OBJS)\test_memstream.obj \
|
||||||
$(OBJS)\test_socketstream.obj \
|
$(OBJS)\test_socketstream.obj \
|
||||||
$(OBJS)\test_sstream.obj \
|
$(OBJS)\test_sstream.obj \
|
||||||
@@ -734,6 +735,9 @@ $(OBJS)\test_iostreams.obj: .\streams\iostreams.cpp
|
|||||||
$(OBJS)\test_largefile.obj: .\streams\largefile.cpp
|
$(OBJS)\test_largefile.obj: .\streams\largefile.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(TEST_CXXFLAGS) .\streams\largefile.cpp
|
$(CXX) -q -c -P -o$@ $(TEST_CXXFLAGS) .\streams\largefile.cpp
|
||||||
|
|
||||||
|
$(OBJS)\test_lzmastream.obj: .\streams\lzmastream.cpp
|
||||||
|
$(CXX) -q -c -P -o$@ $(TEST_CXXFLAGS) .\streams\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\test_memstream.obj: .\streams\memstream.cpp
|
$(OBJS)\test_memstream.obj: .\streams\memstream.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(TEST_CXXFLAGS) .\streams\memstream.cpp
|
$(CXX) -q -c -P -o$@ $(TEST_CXXFLAGS) .\streams\memstream.cpp
|
||||||
|
|
||||||
|
@@ -94,6 +94,7 @@ TEST_OBJECTS = \
|
|||||||
$(OBJS)\test_filestream.o \
|
$(OBJS)\test_filestream.o \
|
||||||
$(OBJS)\test_iostreams.o \
|
$(OBJS)\test_iostreams.o \
|
||||||
$(OBJS)\test_largefile.o \
|
$(OBJS)\test_largefile.o \
|
||||||
|
$(OBJS)\test_lzmastream.o \
|
||||||
$(OBJS)\test_memstream.o \
|
$(OBJS)\test_memstream.o \
|
||||||
$(OBJS)\test_socketstream.o \
|
$(OBJS)\test_socketstream.o \
|
||||||
$(OBJS)\test_sstream.o \
|
$(OBJS)\test_sstream.o \
|
||||||
@@ -711,6 +712,9 @@ $(OBJS)\test_iostreams.o: ./streams/iostreams.cpp
|
|||||||
$(OBJS)\test_largefile.o: ./streams/largefile.cpp
|
$(OBJS)\test_largefile.o: ./streams/largefile.cpp
|
||||||
$(CXX) -c -o $@ $(TEST_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(TEST_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
|
$(OBJS)\test_lzmastream.o: ./streams/lzmastream.cpp
|
||||||
|
$(CXX) -c -o $@ $(TEST_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
$(OBJS)\test_memstream.o: ./streams/memstream.cpp
|
$(OBJS)\test_memstream.o: ./streams/memstream.cpp
|
||||||
$(CXX) -c -o $@ $(TEST_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(TEST_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
|
@@ -97,6 +97,7 @@ TEST_OBJECTS = \
|
|||||||
$(OBJS)\test_filestream.obj \
|
$(OBJS)\test_filestream.obj \
|
||||||
$(OBJS)\test_iostreams.obj \
|
$(OBJS)\test_iostreams.obj \
|
||||||
$(OBJS)\test_largefile.obj \
|
$(OBJS)\test_largefile.obj \
|
||||||
|
$(OBJS)\test_lzmastream.obj \
|
||||||
$(OBJS)\test_memstream.obj \
|
$(OBJS)\test_memstream.obj \
|
||||||
$(OBJS)\test_socketstream.obj \
|
$(OBJS)\test_socketstream.obj \
|
||||||
$(OBJS)\test_sstream.obj \
|
$(OBJS)\test_sstream.obj \
|
||||||
@@ -913,6 +914,9 @@ $(OBJS)\test_iostreams.obj: .\streams\iostreams.cpp
|
|||||||
$(OBJS)\test_largefile.obj: .\streams\largefile.cpp
|
$(OBJS)\test_largefile.obj: .\streams\largefile.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(TEST_CXXFLAGS) .\streams\largefile.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(TEST_CXXFLAGS) .\streams\largefile.cpp
|
||||||
|
|
||||||
|
$(OBJS)\test_lzmastream.obj: .\streams\lzmastream.cpp
|
||||||
|
$(CXX) /c /nologo /TP /Fo$@ $(TEST_CXXFLAGS) .\streams\lzmastream.cpp
|
||||||
|
|
||||||
$(OBJS)\test_memstream.obj: .\streams\memstream.cpp
|
$(OBJS)\test_memstream.obj: .\streams\memstream.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(TEST_CXXFLAGS) .\streams\memstream.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(TEST_CXXFLAGS) .\streams\memstream.cpp
|
||||||
|
|
||||||
|
90
tests/streams/lzmastream.cpp
Normal file
90
tests/streams/lzmastream.cpp
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Name: tests/streams/lzmastream.cpp
|
||||||
|
// Purpose: Unit tests for LZMA stream classes
|
||||||
|
// Author: Vadim Zeitlin
|
||||||
|
// Created: 2018-03-30
|
||||||
|
// Copyright: (c) 2018 Vadim Zeitlin <vadim@wxwidgets.org>
|
||||||
|
// Licence: wxWindows licence
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#include "testprec.h"
|
||||||
|
|
||||||
|
#ifdef __BORLANDC__
|
||||||
|
#pragma hdrstop
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if wxUSE_LIBLZMA && wxUSE_STREAMS
|
||||||
|
|
||||||
|
#include "wx/mstream.h"
|
||||||
|
#include "wx/lzmastream.h"
|
||||||
|
|
||||||
|
#include "bstream.h"
|
||||||
|
|
||||||
|
class LZMAStream : public BaseStreamTestCase<wxLZMAInputStream, wxLZMAOutputStream>
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
LZMAStream();
|
||||||
|
|
||||||
|
CPPUNIT_TEST_SUITE(zlibStream);
|
||||||
|
// Base class stream tests.
|
||||||
|
CPPUNIT_TEST(Input_GetSizeFail);
|
||||||
|
CPPUNIT_TEST(Input_GetC);
|
||||||
|
CPPUNIT_TEST(Input_Read);
|
||||||
|
CPPUNIT_TEST(Input_Eof);
|
||||||
|
CPPUNIT_TEST(Input_LastRead);
|
||||||
|
CPPUNIT_TEST(Input_CanRead);
|
||||||
|
CPPUNIT_TEST(Input_SeekIFail);
|
||||||
|
CPPUNIT_TEST(Input_TellI);
|
||||||
|
CPPUNIT_TEST(Input_Peek);
|
||||||
|
CPPUNIT_TEST(Input_Ungetch);
|
||||||
|
|
||||||
|
CPPUNIT_TEST(Output_PutC);
|
||||||
|
CPPUNIT_TEST(Output_Write);
|
||||||
|
CPPUNIT_TEST(Output_LastWrite);
|
||||||
|
CPPUNIT_TEST(Output_SeekOFail);
|
||||||
|
CPPUNIT_TEST(Output_TellO);
|
||||||
|
CPPUNIT_TEST_SUITE_END();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
wxLZMAInputStream *DoCreateInStream() wxOVERRIDE;
|
||||||
|
wxLZMAOutputStream *DoCreateOutStream() wxOVERRIDE;
|
||||||
|
|
||||||
|
private:
|
||||||
|
wxDECLARE_NO_COPY_CLASS(LZMAStream);
|
||||||
|
};
|
||||||
|
|
||||||
|
STREAM_TEST_SUBSUITE_NAMED_REGISTRATION(LZMAStream)
|
||||||
|
|
||||||
|
LZMAStream::LZMAStream()
|
||||||
|
{
|
||||||
|
// Disable TellI() and TellO() tests in the base class which don't work
|
||||||
|
// with the compressed streams.
|
||||||
|
m_bSimpleTellITest =
|
||||||
|
m_bSimpleTellOTest = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
wxLZMAInputStream *LZMAStream::DoCreateInStream()
|
||||||
|
{
|
||||||
|
// Compress some data.
|
||||||
|
const char data[] = "This is just some test data for LZMA streams unit test";
|
||||||
|
const size_t len = sizeof(data);
|
||||||
|
|
||||||
|
wxMemoryOutputStream outmem;
|
||||||
|
wxLZMAOutputStream outz(outmem);
|
||||||
|
outz.Write(data, len);
|
||||||
|
REQUIRE( outz.LastWrite() == len );
|
||||||
|
REQUIRE( outz.Close() );
|
||||||
|
|
||||||
|
wxMemoryInputStream* const inmem = new wxMemoryInputStream(outmem);
|
||||||
|
REQUIRE( inmem->IsOk() );
|
||||||
|
|
||||||
|
// Give ownership of the memory input stream to the LZMA stream.
|
||||||
|
return new wxLZMAInputStream(inmem);
|
||||||
|
}
|
||||||
|
|
||||||
|
wxLZMAOutputStream *LZMAStream::DoCreateOutStream()
|
||||||
|
{
|
||||||
|
return new wxLZMAOutputStream(new wxMemoryOutputStream());
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // wxUSE_LIBLZMA && wxUSE_STREAMS
|
@@ -90,6 +90,7 @@
|
|||||||
streams/filestream.cpp
|
streams/filestream.cpp
|
||||||
streams/iostreams.cpp
|
streams/iostreams.cpp
|
||||||
streams/largefile.cpp
|
streams/largefile.cpp
|
||||||
|
streams/lzmastream.cpp
|
||||||
streams/memstream.cpp
|
streams/memstream.cpp
|
||||||
streams/socketstream.cpp
|
streams/socketstream.cpp
|
||||||
streams/sstream.cpp
|
streams/sstream.cpp
|
||||||
|
@@ -517,6 +517,7 @@
|
|||||||
<ClCompile Include="streams\filestream.cpp" />
|
<ClCompile Include="streams\filestream.cpp" />
|
||||||
<ClCompile Include="streams\iostreams.cpp" />
|
<ClCompile Include="streams\iostreams.cpp" />
|
||||||
<ClCompile Include="streams\largefile.cpp" />
|
<ClCompile Include="streams\largefile.cpp" />
|
||||||
|
<ClCompile Include="streams\lzmastream.cpp" />
|
||||||
<ClCompile Include="streams\memstream.cpp" />
|
<ClCompile Include="streams\memstream.cpp" />
|
||||||
<ClCompile Include="streams\socketstream.cpp" />
|
<ClCompile Include="streams\socketstream.cpp" />
|
||||||
<ClCompile Include="streams\sstream.cpp" />
|
<ClCompile Include="streams\sstream.cpp" />
|
||||||
@@ -553,4 +554,4 @@
|
|||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
<ImportGroup Label="ExtensionTargets">
|
<ImportGroup Label="ExtensionTargets">
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
</Project>
|
</Project>
|
@@ -262,5 +262,8 @@
|
|||||||
<ClCompile Include="streams\zlibstream.cpp">
|
<ClCompile Include="streams\zlibstream.cpp">
|
||||||
<Filter>Source Files</Filter>
|
<Filter>Source Files</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="streams\lzmastream.cpp">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
@@ -448,6 +448,9 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath=".\longlong\longlongtest.cpp">
|
RelativePath=".\longlong\longlongtest.cpp">
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\streams\lzmastream.cpp">
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\mbconv\mbconvtest.cpp">
|
RelativePath=".\mbconv\mbconvtest.cpp">
|
||||||
</File>
|
</File>
|
||||||
|
@@ -1066,6 +1066,10 @@
|
|||||||
RelativePath=".\longlong\longlongtest.cpp"
|
RelativePath=".\longlong\longlongtest.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\streams\lzmastream.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\mbconv\mbconvtest.cpp"
|
RelativePath=".\mbconv\mbconvtest.cpp"
|
||||||
>
|
>
|
||||||
|
@@ -1038,6 +1038,10 @@
|
|||||||
RelativePath=".\longlong\longlongtest.cpp"
|
RelativePath=".\longlong\longlongtest.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\streams\lzmastream.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\mbconv\mbconvtest.cpp"
|
RelativePath=".\mbconv\mbconvtest.cpp"
|
||||||
>
|
>
|
||||||
|
Reference in New Issue
Block a user