build: Migrate Linux '.tar.gz' package creation from CPack to linuxdeployqt (#1034)
Unified Linux package creation into single script 'setup/Linux/createPackages.sh' that uses 'linuxdeployqt' for both the '.tar.gz' and '.AppImage' package.
This commit is contained in:
+6
-17
@@ -130,19 +130,19 @@ if (BUILD_CXX_LANGUAGE_PACKAGE)
|
||||
if (LLVM_FOUND)
|
||||
message(STATUS "Found LLVM ${LLVM_VERSION}")
|
||||
endif()
|
||||
|
||||
|
||||
if (UNIX)
|
||||
set(LLVM_CONFIGURATION_TYPES ".")
|
||||
endif()
|
||||
|
||||
|
||||
set (CLANG_COMPILER_HEADER_SEARCH_PATH "")
|
||||
foreach(LLVM_CONFIGURATION_TYPE ${LLVM_CONFIGURATION_TYPES})
|
||||
if (CLANG_COMPILER_HEADER_SEARCH_PATH STREQUAL "")
|
||||
set (CLANG_COMPILER_HEADER_SEARCH_PATH "${LLVM_BINARY_DIR}/${LLVM_CONFIGURATION_TYPE}/lib/clang/${LLVM_VERSION}/include")
|
||||
set (CLANG_COMPILER_HEADER_SEARCH_PATH "${LLVM_BINARY_DIR}/${LLVM_CONFIGURATION_TYPE}/lib/clang/${LLVM_VERSION}/include")
|
||||
message (STATUS "Trying to find Clang compiler headers in '${LLVM_CONFIGURATION_TYPE}' build config in directory '${CLANG_COMPILER_HEADER_SEARCH_PATH}'.")
|
||||
if (EXISTS ${CLANG_COMPILER_HEADER_SEARCH_PATH})
|
||||
message (STATUS "Found headers for '${LLVM_CONFIGURATION_TYPE}' build config.")
|
||||
file(GLOB_RECURSE CLANG_COMPILER_HEADER_PATHS RELATIVE "${CLANG_COMPILER_HEADER_SEARCH_PATH}" "${CLANG_COMPILER_HEADER_SEARCH_PATH}/*")
|
||||
file(GLOB_RECURSE CLANG_COMPILER_HEADER_PATHS RELATIVE "${CLANG_COMPILER_HEADER_SEARCH_PATH}" "${CLANG_COMPILER_HEADER_SEARCH_PATH}/*")
|
||||
foreach(CLANG_COMPILER_HEADER_PATH ${CLANG_COMPILER_HEADER_PATHS})
|
||||
configure_file("${CLANG_COMPILER_HEADER_SEARCH_PATH}/${CLANG_COMPILER_HEADER_PATH}" "${CMAKE_SOURCE_DIR}/bin/app/data/cxx/include/${CLANG_COMPILER_HEADER_PATH}" COPYONLY)
|
||||
endforeach()
|
||||
@@ -155,7 +155,7 @@ if (BUILD_CXX_LANGUAGE_PACKAGE)
|
||||
if (CLANG_COMPILER_HEADER_SEARCH_PATH STREQUAL "")
|
||||
message(FATAL_ERROR "Unable to copy Clang compiler headers from clang build dir.")
|
||||
endif()
|
||||
|
||||
|
||||
endif()
|
||||
|
||||
|
||||
@@ -658,7 +658,7 @@ if (WIN32)
|
||||
|
||||
# generate pdb for release build
|
||||
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi")
|
||||
|
||||
|
||||
set_property(
|
||||
TARGET ${APP_PROJECT_NAME}
|
||||
PROPERTY VS_DEBUGGER_WORKING_DIRECTORY
|
||||
@@ -832,17 +832,6 @@ if (UNIX)
|
||||
COMMAND "${CMAKE_COMMAND}" "-E" "create_symlink" "${CMAKE_SOURCE_DIR}/bin/app/user" "${CMAKE_BINARY_DIR}/app/user"
|
||||
COMMAND "${CMAKE_COMMAND}" "-E" "create_symlink" "${CMAKE_SOURCE_DIR}/bin/test/data" "${CMAKE_BINARY_DIR}/test/data"
|
||||
)
|
||||
|
||||
if (UNIX AND NOT APPLE)
|
||||
# Create different sized icons
|
||||
message(STATUS "create icons")
|
||||
execute_process(
|
||||
COMMAND "${CMAKE_SOURCE_DIR}/setup/Linux/createIcons.sh" "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}"
|
||||
)
|
||||
|
||||
# Linux package
|
||||
include(cmake/linux_package.cmake)
|
||||
endif ()
|
||||
elseif(WIN32)
|
||||
foreach(OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES})
|
||||
if (EXISTS "${BACKSLASHED_CMAKE_BINARY_DIR}\\${OUTPUTCONFIG}")
|
||||
|
||||
@@ -60,7 +60,7 @@ If you want to support a certain feature request or you have the same bug that a
|
||||
|
||||
## How to Contribute
|
||||
|
||||
* Please read and follow the steps in [CONTRIBUTING.md](CONTRIBUTING.md) file.
|
||||
* Please read and follow the steps in [CONTRIBUTING.md](CONTRIBUTING.md) file.
|
||||
* You may want to look out for issues labeled [good first issue](https://github.com/CoatiSoftware/Sourcetrail/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22) to find some initial tasks to tackle.
|
||||
* If you are looking for more information about Sourcetrail software development, please refer to our [wiki](https://github.com/CoatiSoftware/Sourcetrail/wiki).
|
||||
|
||||
@@ -72,20 +72,20 @@ Building Sourcetrail requires several dependencies to be in place on your machin
|
||||
|
||||
### Required Tools
|
||||
|
||||
* __CMake v3.12 (required for Windows, Linux and MacOS)__
|
||||
* __CMake v3.12 (required for Windows, Linux and MacOS)__
|
||||
* __Reason__: Used to generate a build configuration for your build system
|
||||
* __Download__: https://cmake.org/download
|
||||
|
||||
* __Git (required for Windows, Linux and MacOS)__
|
||||
* __Git (required for Windows, Linux and MacOS)__
|
||||
* __Reason__: Used for version control and to automatically generate the Sourcetrail version number from commits and tags
|
||||
* __Download__: https://git-scm.com/download
|
||||
* __Remarks__: Make sure `git` is added to your `PATH` environment variable before running CMake
|
||||
|
||||
* __Visual Studio (required for Windows)__
|
||||
* __Visual Studio (required for Windows)__
|
||||
* __Reason__: Used for building Sourcetrail
|
||||
* __Download__: https://visualstudio.microsoft.com/downloads/
|
||||
|
||||
* __ccache (optional for Linux and MacOS)__
|
||||
|
||||
* __ccache (optional for Linux and MacOS)__
|
||||
* __Reason__: Used to speed up rebuilds if found in `PATH`
|
||||
* __Download__: https://ccache.dev/download.html
|
||||
|
||||
@@ -94,7 +94,7 @@ Building Sourcetrail requires several dependencies to be in place on your machin
|
||||
* __Boost 1.67__
|
||||
* __Reason__: Used for file system access and interprocess communication
|
||||
* __Prebuilt Download for Windows__: https://sourceforge.net/projects/boost/files/boost-binaries/
|
||||
* __Building for Unix__:
|
||||
* __Building for Unix__:
|
||||
```
|
||||
$ ./bootstrap.sh --with-libraries=filesystem,program_options,system,date_time
|
||||
$ ./b2 --link=static --variant=release --threading=multi --runtime-link=static --cxxflags=-fPIC
|
||||
@@ -109,7 +109,7 @@ Building Sourcetrail requires several dependencies to be in place on your machin
|
||||
#### On Windows
|
||||
* To set up your build environment run:
|
||||
```
|
||||
$ git clone https://github.com/CoatiSoftware/Sourcetrail.git
|
||||
$ git clone https://github.com/CoatiSoftware/Sourcetrail.git
|
||||
$ cd Sourcetrail
|
||||
$ mkdir -p build/win64
|
||||
$ cd build/win64
|
||||
@@ -188,7 +188,7 @@ Building Sourcetrail requires several dependencies to be in place on your machin
|
||||
|
||||
### Required Tools
|
||||
|
||||
* __WinRAR (required for Windows)__
|
||||
* __WinRAR (required for Windows)__
|
||||
* __REASON__: Used to extract the prebuilt SourcetrailPythonIndexer which is downloaded automatically during build execution.
|
||||
|
||||
### Building
|
||||
@@ -206,8 +206,8 @@ Building Sourcetrail requires several dependencies to be in place on your machin
|
||||
|
||||
#### Required Tools
|
||||
|
||||
* __Visual Studio (required for Windows)__
|
||||
* __Reason__: Used for building the Sourcetrail Windows installer.
|
||||
* __Visual Studio (required for Windows)__
|
||||
* __Reason__: Used for building the Sourcetrail Windows installer.
|
||||
* __Remarks__: Make sure to install the `.Net desktop development` workload.
|
||||
* __Download__: https://visualstudio.microsoft.com/downloads/
|
||||
|
||||
@@ -237,7 +237,7 @@ After building, run the `bundle_install.sh` script within the build directory wh
|
||||
|
||||
### Linux
|
||||
|
||||
Run `./script/buildonly.sh package`
|
||||
Run `./setup/Linux/createPackages.sh` from the main directory, which creates both a `.tar.gz` and a `.AppImage` package in the main directory. Packaging depends on [linuxdeployqt](https://github.com/probonopd/linuxdeployqt).
|
||||
|
||||
|
||||
# How to Run the Tests
|
||||
|
||||
@@ -1,200 +0,0 @@
|
||||
|
||||
function(InstallQtModule module qtversion)
|
||||
get_filename_component(realpath $ENV{Qt5_DIR}/lib/libQt5${module}.so.${qtversion} REALPATH)
|
||||
INSTALL(FILES
|
||||
${realpath}
|
||||
DESTINATION Sourcetrail/lib
|
||||
RENAME libQt5${module}.so.${qtversion}
|
||||
)
|
||||
endfunction(InstallQtModule)
|
||||
|
||||
function(GetAndInstallLibrary libraryName withoutVersion)
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_CXX_COMPILER} -print-file-name=${libraryName}
|
||||
OUTPUT_VARIABLE LIB
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
message(STATUS "lib: ${LIB}")
|
||||
|
||||
get_filename_component(realPath ${LIB} REALPATH)
|
||||
string(REGEX MATCH "([^\/]*)$" fileName ${realPath})
|
||||
|
||||
if (withoutVersion)
|
||||
string(REGEX MATCH ".*\.so" SHORTER ${fileName})
|
||||
else()
|
||||
string(REGEX MATCH ".*\.so\.[^.]*" SHORTER ${fileName})
|
||||
endif()
|
||||
if (NOT EXISTS ${realPath})
|
||||
message(WARNING "${libraryName} not found")
|
||||
else()
|
||||
INSTALL(FILES
|
||||
${realPath}
|
||||
DESTINATION Sourcetrail/lib
|
||||
RENAME ${SHORTER}
|
||||
)
|
||||
endif()
|
||||
endfunction(GetAndInstallLibrary)
|
||||
|
||||
function(InstallQt qtversion)
|
||||
InstallQtModule(Gui ${qtversion})
|
||||
InstallQtModule(Core ${qtversion})
|
||||
InstallQtModule(Network ${qtversion})
|
||||
InstallQtModule(XcbQpa ${qtversion})
|
||||
InstallQtModule(Widgets ${qtversion})
|
||||
InstallQtModule(DBus ${qtversion})
|
||||
InstallQtModule(Svg ${qtversion})
|
||||
endfunction(InstallQt)
|
||||
|
||||
function(AddSharedToComponent)
|
||||
INSTALL(DIRECTORY
|
||||
${CMAKE_SOURCE_DIR}/bin/app/data
|
||||
DESTINATION Sourcetrail
|
||||
PATTERN "install" EXCLUDE
|
||||
PATTERN "ProjectSettings_template.xml" EXCLUDE
|
||||
PATTERN "color_scheme_template.xml" EXCLUDE
|
||||
PATTERN "python/SourcetrailPythonIndexer" EXCLUDE
|
||||
)
|
||||
|
||||
if (BUILD_PYTHON_LANGUAGE_PACKAGE)
|
||||
INSTALL(PROGRAMS
|
||||
${CMAKE_SOURCE_DIR}/bin/app/data/python/SourcetrailPythonIndexer
|
||||
DESTINATION Sourcetrail/data/python
|
||||
)
|
||||
endif()
|
||||
|
||||
InstallQt(5)
|
||||
|
||||
GetAndInstallLibrary(libicui18n.so 0)
|
||||
GetAndInstallLibrary(libicudata.so 0)
|
||||
GetAndInstallLibrary(libicuuc.so 0)
|
||||
GetAndInstallLibrary(libudev.so 0)
|
||||
GetAndInstallLibrary(libpng.so 0)
|
||||
GetAndInstallLibrary(libEGL.so 0)
|
||||
GetAndInstallLibrary(libselinux.so 0)
|
||||
GetAndInstallLibrary(libXrender.so 0)
|
||||
#GetAndInstallLibrary(libstdc++.so 0)
|
||||
GetAndInstallLibrary(libX11-xcb.so 0)
|
||||
GetAndInstallLibrary(libXi.so 0)
|
||||
GetAndInstallLibrary(libxcb.so 0)
|
||||
GetAndInstallLibrary(libfontconfig.so 0)
|
||||
GetAndInstallLibrary(libfreetype.so 0)
|
||||
GetAndInstallLibrary(libXext.so 0)
|
||||
GetAndInstallLibrary(libX11.so 0)
|
||||
GetAndInstallLibrary(libudev.so 0)
|
||||
GetAndInstallLibrary(libGL.so 0)
|
||||
GetAndInstallLibrary(libxcb-dri2.so 0)
|
||||
GetAndInstallLibrary(libxcb-xfixes.so 0)
|
||||
GetAndInstallLibrary(libxcb-render.so 0)
|
||||
GetAndInstallLibrary(libxcb-shape.so 0)
|
||||
GetAndInstallLibrary(libgbm.so.1 0)
|
||||
GetAndInstallLibrary(libdrm.so 0)
|
||||
GetAndInstallLibrary(libglapi.so 0)
|
||||
GetAndInstallLibrary(libXdamage.so 0)
|
||||
GetAndInstallLibrary(libXfixes.so 0)
|
||||
GetAndInstallLibrary(libxcb-glx.so 0)
|
||||
GetAndInstallLibrary(libXxf86vm.so 0)
|
||||
GetAndInstallLibrary(libdrm.so 0)
|
||||
GetAndInstallLibrary(libXau.so 0)
|
||||
GetAndInstallLibrary(libssl.so 1)
|
||||
GetAndInstallLibrary(libcrypto.so 1)
|
||||
|
||||
INSTALL(DIRECTORY
|
||||
$ENV{Qt5_DIR}/plugins/platforms
|
||||
DESTINATION Sourcetrail/lib
|
||||
)
|
||||
|
||||
INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/bin/app/user
|
||||
DESTINATION Sourcetrail
|
||||
PATTERN "log/*" EXCLUDE
|
||||
PATTERN "ApplicationSettings.xml" EXCLUDE
|
||||
PATTERN "ApplicationSettings_template.xml" EXCLUDE
|
||||
)
|
||||
|
||||
endfunction(AddSharedToComponent)
|
||||
|
||||
AddSharedToComponent()
|
||||
|
||||
INSTALL(DIRECTORY
|
||||
${CMAKE_SOURCE_DIR}/ide_plugins/
|
||||
DESTINATION Sourcetrail/plugin
|
||||
PATTERN "vs" EXCLUDE
|
||||
)
|
||||
|
||||
INSTALL(DIRECTORY
|
||||
${CMAKE_BINARY_DIR}/share
|
||||
DESTINATION Sourcetrail/setup
|
||||
)
|
||||
|
||||
INSTALL(FILES
|
||||
${CMAKE_SOURCE_DIR}/setup/Linux/README
|
||||
DESTINATION Sourcetrail
|
||||
)
|
||||
|
||||
INSTALL(FILES
|
||||
${CMAKE_SOURCE_DIR}/setup/Linux/sourcetrail-mime.xml
|
||||
DESTINATION Sourcetrail/setup/share/mime/packages
|
||||
)
|
||||
|
||||
INSTALL(FILES
|
||||
${CMAKE_SOURCE_DIR}/setup/Linux/sourcetrail.desktop
|
||||
DESTINATION Sourcetrail/setup/share/applications
|
||||
)
|
||||
|
||||
INSTALL(PROGRAMS
|
||||
${CMAKE_SOURCE_DIR}/setup/Linux/install.sh
|
||||
${CMAKE_SOURCE_DIR}/setup/Linux/uninstall.sh
|
||||
${CMAKE_SOURCE_DIR}/setup/Linux/resetPreferences.sh
|
||||
DESTINATION Sourcetrail
|
||||
)
|
||||
|
||||
INSTALL(PROGRAMS
|
||||
${CMAKE_SOURCE_DIR}/setup/Linux/Sourcetrail.sh
|
||||
DESTINATION Sourcetrail
|
||||
)
|
||||
|
||||
INSTALL(TARGETS
|
||||
${APP_PROJECT_NAME}
|
||||
DESTINATION Sourcetrail
|
||||
)
|
||||
|
||||
INSTALL(TARGETS
|
||||
${APP_INDEXER_NAME}
|
||||
DESTINATION Sourcetrail
|
||||
)
|
||||
|
||||
# SET(CPACK_GENERATOR "DEB;TGZ")
|
||||
SET(CPACK_GENERATOR "TGZ")
|
||||
SET(CPACK_ARCHIVE_COMPONENT_INSTALL "ON")
|
||||
|
||||
string(REGEX REPLACE "^([0-9]+)\\..*" "\\1" VERSION_MAJOR "${GIT_VERSION_NUMBER}")
|
||||
string(REGEX REPLACE "^[0-9]+\\.([0-9]+).*" "\\1" VERSION_MINOR "${GIT_VERSION_NUMBER}")
|
||||
#string(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" VERSION_PATCH "${GIT_VERSION_NUMBER}")
|
||||
#if(${GIT_VERSION_NUMBER} STREQUAL ${VERSION_PATCH})
|
||||
#SET(VERSIONA_PATCH 0)
|
||||
#endif()
|
||||
string(REGEX REPLACE "^[0-9]+\\.[0-9]+-([0-9]+).*" "\\1" VERSION_COMMIT "${GIT_VERSION_NUMBER}")
|
||||
|
||||
if(${GIT_VERSION_NUMBER} STREQUAL ${VERSION_COMMIT})
|
||||
set(VERSION_NUMBER "${VERSION_MAJOR}_${VERSION_MINOR}")
|
||||
else()
|
||||
set(VERSION_NUMBER "${VERSION_MAJOR}_${VERSION_MINOR}_${VERSION_COMMIT}")
|
||||
endif()
|
||||
|
||||
SET(CPACK_PACKAGE_NAME "Sourcetrail")
|
||||
SET(CPACK_PACKAGING_INSTALL_PREFIX "")
|
||||
SET(CPACK_INCLUDE_TOPLEVEL_DIRECTORY 0)
|
||||
#SET(CPACK_TOPLEVEL_TAG "Sourcetrail")
|
||||
SET(CPACK_PACKAGING_INSTALL_DIRECTORY "Sourcetrail")
|
||||
SET(CPACK_PACKAGE_VERSION ${VERSION_NUMBER})
|
||||
SET(CPACK_PACKAGE_VENDOR "Coati Software")
|
||||
SET(CPACK_INSTALL_SCRIPT "${CMAKE_SOURCE_DIR}/cmake/pre_install_linux.cmake")
|
||||
if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "x86_64")
|
||||
SET(CPACK_SYSTEM_NAME "${CMAKE_SYSTEM_NAME}_64bit")
|
||||
else()
|
||||
SET(CPACK_SYSTEM_NAME "${CMAKE_SYSTEM_NAME}_32bit")
|
||||
endif()
|
||||
SET(CPACK_PACKAGE_FILE_NAME "Sourcetrail_${VERSION_NUMBER}_${CPACK_SYSTEM_NAME}")
|
||||
SET(CPACK_STRIP_FILES "Sourcetrail/sourcetrail")
|
||||
SET(CPACK_PACKAGE_CONTACT "astallinger@coati.io")
|
||||
|
||||
INCLUDE(CPack)
|
||||
@@ -1,32 +0,0 @@
|
||||
#pre install script
|
||||
function(Print text)
|
||||
execute_process(
|
||||
COMMAND echo ${text}
|
||||
)
|
||||
endfunction()
|
||||
|
||||
function(Run)
|
||||
execute_process(
|
||||
COMMAND ${ARGV}
|
||||
)
|
||||
endfunction()
|
||||
|
||||
set(binPath ${CMAKE_CURRENT_LIST_DIR}/../build/Release/app/Sourcetrail)
|
||||
set(projPath ${CMAKE_CURRENT_LIST_DIR}/../bin/app/user/projects)
|
||||
|
||||
execute_process(
|
||||
COMMAND ${binPath} index --full ${projPath}/tictactoe_cpp/tictactoe_cpp.srctrlprj
|
||||
)
|
||||
|
||||
execute_process(
|
||||
COMMAND ${binPath} index --full ${projPath}/tictactoe_py/tictactoe_py.srctrlprj
|
||||
)
|
||||
|
||||
execute_process(
|
||||
COMMAND ${binPath} index --full ${projPath}/tutorial/tutorial.srctrlprj
|
||||
)
|
||||
|
||||
execute_process(
|
||||
COMMAND ${binPath} index --full ${projPath}/javaparser/javaparser.srctrlprj
|
||||
)
|
||||
|
||||
@@ -10,11 +10,9 @@ git checkout $1
|
||||
|
||||
./script/buildonly.sh all
|
||||
|
||||
./script/buildonly.sh package
|
||||
|
||||
./script/build.sh release test
|
||||
|
||||
./setup/Linux/createAppImage.sh
|
||||
./setup/Linux/createPackages.sh
|
||||
|
||||
mkdir release
|
||||
cp ./Sourcetrail*.tar.gz ./release/
|
||||
|
||||
@@ -51,11 +51,6 @@ then
|
||||
#echo "debug app"
|
||||
cmake --build build/Debug --target Sourcetrail
|
||||
fi
|
||||
elif [ "$1" = "package" ] || [ "$1" = "p" ]
|
||||
then
|
||||
cmake --build build/Release --target package
|
||||
mv build/Release/Sourcetrail*.tar.gz . #&& cp build/Release/Sourcetrail*.deb distr
|
||||
echo "Packages copied into the root folder"
|
||||
elif [ "$1" = "all" ] || [ "$1" = "a" ]
|
||||
then
|
||||
cmake --build build/Release --target all
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
SOURCE_DIR=$1
|
||||
BUILD_DIR=$2
|
||||
ICON=$SOURCE_DIR/bin/app/data/gui/icon/logo_1024_1024.png
|
||||
HICOLOR_DIR=$BUILD_DIR/share/icons/hicolor
|
||||
|
||||
echo "sourcedir: $SOURCE_DIR"
|
||||
echo "builddir : $BUILD_DIR"
|
||||
echo "hicolor : $HICOLOR_DIR"
|
||||
echo "icon : $ICON"
|
||||
|
||||
createIcon()
|
||||
{
|
||||
mkdir -p $HICOLOR_DIR/$1/apps/
|
||||
convert $ICON -resize $1 $HICOLOR_DIR/$1/apps/sourcetrail.png
|
||||
}
|
||||
|
||||
createIcon 512x512
|
||||
createIcon 256x256
|
||||
createIcon 128x128
|
||||
createIcon 64x64
|
||||
createIcon 48x48
|
||||
@@ -1,5 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
# index sample projects
|
||||
|
||||
BIN_PATH=build/Release/app/Sourcetrail
|
||||
PROJECTS_PATH=bin/app/user/projects
|
||||
|
||||
@@ -8,6 +10,9 @@ PROJECTS_PATH=bin/app/user/projects
|
||||
./$BIN_PATH index --full $PROJECTS_PATH/tutorial/tutorial.srctrlprj
|
||||
./$BIN_PATH index --full $PROJECTS_PATH/javaparser/javaparser.srctrlprj
|
||||
|
||||
|
||||
# create AppDir
|
||||
|
||||
rm -rf AppDir
|
||||
|
||||
mkdir AppDir
|
||||
@@ -29,16 +34,14 @@ cd share
|
||||
|
||||
mkdir applications
|
||||
cd applications
|
||||
cp ../../../../setup/Linux/sourcetrail.desktop .
|
||||
cp ../../../../setup/Linux/data/sourcetrail.desktop .
|
||||
cd ..
|
||||
|
||||
cp -r ../../../build/Release/share/icons/ .
|
||||
|
||||
mkdir mime
|
||||
cd mime
|
||||
mkdir packages
|
||||
cd packages
|
||||
cp ../../../../../setup/Linux/sourcetrail-mime.xml .
|
||||
cp ../../../../../setup/Linux/data/sourcetrail-mime.xml .
|
||||
cd ../..
|
||||
|
||||
mkdir data
|
||||
@@ -57,16 +60,57 @@ cd ..
|
||||
|
||||
cd ../../..
|
||||
|
||||
# print file structure
|
||||
# find AppDir | sed -e "s/[^-][^\/]*\// |/g" -e "s/|\([^ ]\)/|-\1/"
|
||||
|
||||
export VERSION=$(cat build/Release/version.txt)
|
||||
|
||||
# create icons
|
||||
|
||||
ICON=AppDir/usr/share/data/gui/icon/logo_1024_1024.png
|
||||
HICOLOR_DIR=AppDir/usr/share/icons/hicolor
|
||||
|
||||
createIcon()
|
||||
{
|
||||
mkdir -p $HICOLOR_DIR/$1/apps/
|
||||
convert $ICON -resize $1 $HICOLOR_DIR/$1/apps/sourcetrail.png
|
||||
}
|
||||
|
||||
createIcon 512x512
|
||||
createIcon 256x256
|
||||
createIcon 128x128
|
||||
createIcon 64x64
|
||||
createIcon 48x48
|
||||
|
||||
|
||||
# Version for filename
|
||||
|
||||
VERSION=$(cat build/Release/version.txt)
|
||||
VERSION=${VERSION/./_}
|
||||
VERSION=${VERSION/./_}
|
||||
export VERSION
|
||||
|
||||
|
||||
# create .AppImage
|
||||
|
||||
linuxdeployqt AppDir/usr/bin/sourcetrail_indexer -qmake=$Qt5_DIR/bin/qmake -ignore-glob=*python*
|
||||
rm -f AppDir/AppRun
|
||||
|
||||
linuxdeployqt AppDir/usr/share/applications/sourcetrail.desktop -qmake=$Qt5_DIR/bin/qmake -ignore-glob=*python* -appimage
|
||||
|
||||
rename x86_64 Linux_64bit *.AppImage
|
||||
rename - _ *.AppImage
|
||||
rename - _ *.AppImage
|
||||
rename . _ *.AppImage
|
||||
rename . _ *.AppImage
|
||||
|
||||
|
||||
# create .tar.gz
|
||||
|
||||
mv AppDir/usr/ Sourcetrail
|
||||
cp -R setup/Linux/data/package/* Sourcetrail
|
||||
|
||||
tar -czvf Sourcetrail_${VERSION}_Linux_64bit.tar.gz Sourcetrail
|
||||
|
||||
|
||||
# cleanup
|
||||
|
||||
rm -rf AppDir
|
||||
rm -rf Sourcetrail
|
||||
@@ -14,9 +14,9 @@ SOURCETRAIL_PATH="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
||||
|
||||
export LD_LIBRARY_PATH="$SOURCETRAIL_PATH/lib:$LD_LIBRARY_PATH"
|
||||
export QT_XKB_CONFIG_ROOT="/usr/share/X11/xkb:$QT_XKB_CONFIG_ROOT"
|
||||
export QT_QPA_PLATFORM_PLUGIN_PATH="$SOURCETRAIL_PATH/lib/platforms"
|
||||
export QT_QPA_PLATFORM_PLUGIN_PATH="$SOURCETRAIL_PATH/plugins/platforms"
|
||||
export QT_QPA_FONTDIR="$SOURCETRAIL_PATH/data/fonts:$QT_QPA_FONTDIR"
|
||||
export SOURCETRAIL_VIA_SCRIPT=1
|
||||
export OPENSSL_CONF=/etc/ssl/
|
||||
|
||||
exec "$SOURCETRAIL_PATH/Sourcetrail" $@
|
||||
exec "$SOURCETRAIL_PATH/bin/sourcetrail" $@
|
||||
@@ -1,19 +1,23 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "Installing Sourcetrail in /opt/sourcetrail"
|
||||
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo >&2 "Error: Please run script as root or with sudo. Exiting..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Installing Sourcetrail in /opt/sourcetrail"
|
||||
|
||||
MY_PATH="$( cd "$( dirname "$0" )" && pwd )"
|
||||
|
||||
rm -rf /opt/sourcetrail > /dev/null
|
||||
|
||||
cp -rf "$MY_PATH/" /opt/sourcetrail > /dev/null
|
||||
cp -rf "$MY_PATH/setup/share/" /usr > /dev/null
|
||||
cp "$MY_PATH/data/gui/icon/logo_1024_1024.png" /usr/share/icons/sourcetrail.png > /dev/null
|
||||
cp "$MY_PATH/data/gui/icon/project_256_256.png" /usr/share/icons/project-sourcetrail.png > /dev/null
|
||||
cp -rf "$MY_PATH/share/applications" /usr/share > /dev/null
|
||||
cp -rf "$MY_PATH/share/icons" /usr/share > /dev/null
|
||||
cp -rf "$MY_PATH/share/mime" /usr/share > /dev/null
|
||||
|
||||
cp "$MY_PATH/share/data/gui/icon/logo_1024_1024.png" /usr/share/icons/sourcetrail.png > /dev/null
|
||||
cp "$MY_PATH/share/data/gui/icon/project_256_256.png" /usr/share/icons/project-sourcetrail.png > /dev/null
|
||||
|
||||
ln -f -s /opt/sourcetrail/Sourcetrail.sh /usr/bin/sourcetrail
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "Do you want to uninstall Sourcetrail?"
|
||||
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo >&2 "Error: Please run script as root or with sudo. Exiting..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Do you want to uninstall Sourcetrail?"
|
||||
|
||||
printf 'enter [y/n] '
|
||||
read ans
|
||||
case ${ans:=y} in [yY]*) ;; *) exit ;; esac
|
||||
@@ -1,9 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
mkdir -p setup/Linux/lib
|
||||
ldd bin/app/Release/Sourcetrail | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' setup/Linux/lib
|
||||
|
||||
# extra files needed and not copied with the lines above
|
||||
cp /usr/lib/qt/plugins/platforms/libqxcb.so setup/Linux
|
||||
cp /usr/lib/libQt5XcbQpa.so.5 setup/Linux/lib
|
||||
cp /usr/lib/libQt5DBus.so.5 setup/Linux/lib
|
||||
Reference in New Issue
Block a user