From a53f8d506e212f862f54e5a758fb50666ec7c3ba Mon Sep 17 00:00:00 2001 From: Jan Dalheimer Date: Thu, 12 Feb 2015 22:01:20 +0100 Subject: GH-366: Plain and simple modpack export/import/download Also removed the in-source QuaZIP in favour of upstream version --- CMakeLists.txt | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index c26f57e6..60e6d1b2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -210,10 +210,23 @@ set(DIRS "${QT_LIBS_DIR}") ################################ Included Libs ################################ +include(ExternalProject) +set_directory_properties(PROPERTIES EP_BASE External) + # Add quazip add_definitions(-DQUAZIP_STATIC) -add_subdirectory(depends/quazip) -include_directories(depends/quazip) +set(QUAZIP_VERSION "0.7.1") +if(NOT EXISTS ${CMAKE_BINARY_DIR}/quazip-${QUAZIP_VERSION}.tar.gz) + file(DOWNLOAD http://downloads.sourceforge.net/project/quazip/quazip/${QUAZIP_VERSION}/quazip-${QUAZIP_VERSION}.tar.gz ${CMAKE_BINARY_DIR}/quazip-${QUAZIP_VERSION}.tar.gz) +endif() +ExternalProject_Add(QuaZIP + SOURCE_DIR /../Source/quazip-${QUAZIP_VERSION} + DOWNLOAD_COMMAND ${CMAKE_COMMAND} -E chdir /.. ${CMAKE_COMMAND} -E tar xzf ${CMAKE_BINARY_DIR}/quazip-${QUAZIP_VERSION}.tar.gz + PATCH_COMMAND patch -p0 -i ${CMAKE_SOURCE_DIR}/quazip.patch + CMAKE_ARGS -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} -DCMAKE_INSTALL_PREFIX= +) +include_directories("${CMAKE_BINARY_DIR}/External/Install/QuaZIP/include/quazip") +set(QUAZIP_LIBRARIES -L"${CMAKE_BINARY_DIR}/External/Install/QuaZIP/lib" quazip) # Add the java launcher and checker add_subdirectory(depends/launcher) @@ -728,10 +741,12 @@ add_executable(MultiMC MACOSX_BUNDLE WIN32 main.cpp ${MULTIMC_RCS}) # Link target_link_libraries(MultiMC MultiMC_common) -target_link_libraries(MultiMC_common xz-embedded unpack200 quazip libUtil LogicalGui ${MultiMC_LINK_ADDITIONAL_LIBS}) +target_link_libraries(MultiMC_common xz-embedded unpack200 libUtil LogicalGui ${QUAZIP_LIBRARIES} ${MultiMC_LINK_ADDITIONAL_LIBS}) qt5_use_modules(MultiMC Core Widgets Network Xml Concurrent WebKitWidgets ${MultiMC_QT_ADDITIONAL_MODULES}) qt5_use_modules(MultiMC_common Core Widgets Network Xml Concurrent WebKitWidgets ${MultiMC_QT_ADDITIONAL_MODULES}) +add_dependencies(MultiMC_common QuaZip) + ################################ INSTALLATION AND PACKAGING ################################ ######## Install ######## -- cgit v1.2.3