Vladimir Golovnev
1 year ago
committed by
GitHub
26 changed files with 8 additions and 14523 deletions
@ -1,101 +0,0 @@
@@ -1,101 +0,0 @@
|
||||
version: '{branch}-{build}' |
||||
|
||||
# Do not build on tags (GitHub only) |
||||
skip_tags: true |
||||
|
||||
image: Visual Studio 2022 |
||||
|
||||
branches: |
||||
except: # blacklist |
||||
- coverity_scan |
||||
|
||||
environment: |
||||
REPO_DIR: &REPO_DIR c:\qbittorrent |
||||
CACHE_DIR: &CACHE_DIR c:\qbt_cache |
||||
|
||||
QBT_VER_URL: https://builds.shiki.hu/appveyor/version_64 |
||||
QBT_LIB_URL: https://builds.shiki.hu/appveyor/qbt_libraries_64.7z |
||||
|
||||
# project directory |
||||
clone_folder: *REPO_DIR |
||||
|
||||
# cache size should < 100MB (after compressing with fastest option): |
||||
# see: https://www.appveyor.com/docs/build-cache#save-update-cache-before-build-finishes |
||||
cache: |
||||
- *CACHE_DIR |
||||
|
||||
clone_depth: 50 |
||||
|
||||
install: |
||||
# check if library needs update |
||||
- appveyor DownloadFile "%QBT_VER_URL%" -FileName "c:\version_new" && SET /P newVersion=<"c:\version_new" |
||||
- IF EXIST "%CACHE_DIR%\version" (SET /P oldVersion=<"%CACHE_DIR%\version") |
||||
- IF NOT EXIST "%CACHE_DIR%\version" (SET updateCache=1) |
||||
- IF NOT "%oldVersion%" == "%newVersion%" (SET updateCache=1) |
||||
# update library |
||||
- IF "%updateCache%" == "1" (ECHO "--- Will redownload libraries ---" && |
||||
RMDIR /S /Q "%CACHE_DIR%" & MKDIR "%CACHE_DIR%" && |
||||
appveyor DownloadFile "%QBT_LIB_URL%" -FileName "c:\qbt_lib.7z" && 7z x "c:\qbt_lib.7z" -o"%CACHE_DIR%" > nul && |
||||
COPY "c:\version_new" "%CACHE_DIR%\version") |
||||
|
||||
before_build: |
||||
# setup env |
||||
- CALL "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 |
||||
- SET PATH=%PATH%;C:\Qt\5.15.2\msvc2019_64\bin;%CACHE_DIR%\jom |
||||
# setup project |
||||
- COPY /Y "%CACHE_DIR%\conf.pri" "%REPO_DIR%" |
||||
# workarounds |
||||
- MKDIR "c:\qbt" |
||||
- MKLINK /J "c:\qbt\base" "%CACHE_DIR%\base" |
||||
|
||||
build_script: |
||||
- cd "%REPO_DIR%" |
||||
# lupdate chokes when it parses headers from system includes, especially Boost |
||||
# it also chokes with the sources from src/app/qtlocalpeer (formerly qtsingleapplication) |
||||
# Workaround: temporarily rename them to run lupdate with the .pro file |
||||
- RENAME conf.pri conf.pri.temp |
||||
- RENAME src\app\qtlocalpeer qtlocalpeer.temp |
||||
- lupdate qbittorrent.pro |
||||
- RENAME conf.pri.temp conf.pri |
||||
- RENAME src\app\qtlocalpeer.temp qtlocalpeer |
||||
- qmake qbittorrent.pro && cd src && qmake src.pro |
||||
- jom -j2 -f Makefile.Release |
||||
|
||||
after_build: |
||||
- cd "%REPO_DIR%" |
||||
- MKDIR upload |
||||
- COPY dist\windows\qt.conf upload |
||||
- COPY src\release\qbittorrent.exe upload |
||||
- COPY src\release\qbittorrent.pdb upload |
||||
- COPY "%CACHE_DIR%\base\bin\libcrypto-1_1-x64.dll" upload |
||||
- COPY "%CACHE_DIR%\base\bin\libcrypto-1_1-x64.pdb" upload |
||||
- COPY "%CACHE_DIR%\base\bin\libssl-1_1-x64.dll" upload |
||||
- COPY "%CACHE_DIR%\base\bin\libssl-1_1-x64.pdb" upload |
||||
- COPY "%CACHE_DIR%\base\bin\torrent-rasterbar.dll" upload |
||||
- COPY "%CACHE_DIR%\base\bin\torrent-rasterbar.pdb" upload |
||||
- COPY "%CACHE_DIR%\base\lib\zlib1.dll" upload |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\bin\Qt5Core.dll upload |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\bin\Qt5Gui.dll upload |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\bin\Qt5Network.dll upload |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\bin\Qt5Sql.dll upload |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\bin\Qt5Svg.dll upload |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\bin\Qt5Widgets.dll upload |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\bin\Qt5WinExtras.dll upload |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\bin\Qt5Xml.dll upload |
||||
- MKDIR upload\plugins\iconengines |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\plugins\iconengines\qsvgicon.dll upload\plugins\iconengines |
||||
- MKDIR upload\plugins\imageformats |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\plugins\imageformats\qico.dll upload\plugins\imageformats |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\plugins\imageformats\qsvg.dll upload\plugins\imageformats |
||||
- MKDIR upload\plugins\platforms |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\plugins\platforms\qwindows.dll upload\plugins\platforms |
||||
- MKDIR upload\plugins\sqldrivers |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\plugins\sqldrivers\qsqlite.dll upload\plugins\sqldrivers |
||||
- MKDIR upload\plugins\styles |
||||
- COPY C:\Qt\5.15.2\msvc2019_64\plugins\styles\qwindowsvistastyle.dll upload\plugins\styles |
||||
|
||||
test: off |
||||
|
||||
artifacts: |
||||
- path: upload |
||||
name: qBittorrent-Appveyor_Windows-x64 |
@ -1,348 +0,0 @@
@@ -1,348 +0,0 @@
|
||||
#! /bin/sh |
||||
# Wrapper for compilers which do not understand '-c -o'. |
||||
|
||||
scriptversion=2018-03-07.03; # UTC |
||||
|
||||
# Copyright (C) 1999-2018 Free Software Foundation, Inc. |
||||
# Written by Tom Tromey <tromey@cygnus.com>. |
||||
# |
||||
# This program is free software; you can redistribute it and/or modify |
||||
# it under the terms of the GNU General Public License as published by |
||||
# the Free Software Foundation; either version 2, or (at your option) |
||||
# any later version. |
||||
# |
||||
# This program is distributed in the hope that it will be useful, |
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
# GNU General Public License for more details. |
||||
# |
||||
# You should have received a copy of the GNU General Public License |
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. |
||||
|
||||
# As a special exception to the GNU General Public License, if you |
||||
# distribute this file as part of a program that contains a |
||||
# configuration script generated by Autoconf, you may include it under |
||||
# the same distribution terms that you use for the rest of that program. |
||||
|
||||
# This file is maintained in Automake, please report |
||||
# bugs to <bug-automake@gnu.org> or send patches to |
||||
# <automake-patches@gnu.org>. |
||||
|
||||
nl=' |
||||
' |
||||
|
||||
# We need space, tab and new line, in precisely that order. Quoting is |
||||
# there to prevent tools from complaining about whitespace usage. |
||||
IFS=" "" $nl" |
||||
|
||||
file_conv= |
||||
|
||||
# func_file_conv build_file lazy |
||||
# Convert a $build file to $host form and store it in $file |
||||
# Currently only supports Windows hosts. If the determined conversion |
||||
# type is listed in (the comma separated) LAZY, no conversion will |
||||
# take place. |
||||
func_file_conv () |
||||
{ |
||||
file=$1 |
||||
case $file in |
||||
/ | /[!/]*) # absolute file, and not a UNC file |
||||
if test -z "$file_conv"; then |
||||
# lazily determine how to convert abs files |
||||
case `uname -s` in |
||||
MINGW*) |
||||
file_conv=mingw |
||||
;; |
||||
CYGWIN*) |
||||
file_conv=cygwin |
||||
;; |
||||
*) |
||||
file_conv=wine |
||||
;; |
||||
esac |
||||
fi |
||||
case $file_conv/,$2, in |
||||
*,$file_conv,*) |
||||
;; |
||||
mingw/*) |
||||
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` |
||||
;; |
||||
cygwin/*) |
||||
file=`cygpath -m "$file" || echo "$file"` |
||||
;; |
||||
wine/*) |
||||
file=`winepath -w "$file" || echo "$file"` |
||||
;; |
||||
esac |
||||
;; |
||||
esac |
||||
} |
||||
|
||||
# func_cl_dashL linkdir |
||||
# Make cl look for libraries in LINKDIR |
||||
func_cl_dashL () |
||||
{ |
||||
func_file_conv "$1" |
||||
if test -z "$lib_path"; then |
||||
lib_path=$file |
||||
else |
||||
lib_path="$lib_path;$file" |
||||
fi |
||||
linker_opts="$linker_opts -LIBPATH:$file" |
||||
} |
||||
|
||||
# func_cl_dashl library |
||||
# Do a library search-path lookup for cl |
||||
func_cl_dashl () |
||||
{ |
||||
lib=$1 |
||||
found=no |
||||
save_IFS=$IFS |
||||
IFS=';' |
||||
for dir in $lib_path $LIB |
||||
do |
||||
IFS=$save_IFS |
||||
if $shared && test -f "$dir/$lib.dll.lib"; then |
||||
found=yes |
||||
lib=$dir/$lib.dll.lib |
||||
break |
||||
fi |
||||
if test -f "$dir/$lib.lib"; then |
||||
found=yes |
||||
lib=$dir/$lib.lib |
||||
break |
||||
fi |
||||
if test -f "$dir/lib$lib.a"; then |
||||
found=yes |
||||
lib=$dir/lib$lib.a |
||||
break |
||||
fi |
||||
done |
||||
IFS=$save_IFS |
||||
|
||||
if test "$found" != yes; then |
||||
lib=$lib.lib |
||||
fi |
||||
} |
||||
|
||||
# func_cl_wrapper cl arg... |
||||
# Adjust compile command to suit cl |
||||
func_cl_wrapper () |
||||
{ |
||||
# Assume a capable shell |
||||
lib_path= |
||||
shared=: |
||||
linker_opts= |
||||
for arg |
||||
do |
||||
if test -n "$eat"; then |
||||
eat= |
||||
else |
||||
case $1 in |
||||
-o) |
||||
# configure might choose to run compile as 'compile cc -o foo foo.c'. |
||||
eat=1 |
||||
case $2 in |
||||
*.o | *.[oO][bB][jJ]) |
||||
func_file_conv "$2" |
||||
set x "$@" -Fo"$file" |
||||
shift |
||||
;; |
||||
*) |
||||
func_file_conv "$2" |
||||
set x "$@" -Fe"$file" |
||||
shift |
||||
;; |
||||
esac |
||||
;; |
||||
-I) |
||||
eat=1 |
||||
func_file_conv "$2" mingw |
||||
set x "$@" -I"$file" |
||||
shift |
||||
;; |
||||
-I*) |
||||
func_file_conv "${1#-I}" mingw |
||||
set x "$@" -I"$file" |
||||
shift |
||||
;; |
||||
-l) |
||||
eat=1 |
||||
func_cl_dashl "$2" |
||||
set x "$@" "$lib" |
||||
shift |
||||
;; |
||||
-l*) |
||||
func_cl_dashl "${1#-l}" |
||||
set x "$@" "$lib" |
||||
shift |
||||
;; |
||||
-L) |
||||
eat=1 |
||||
func_cl_dashL "$2" |
||||
;; |
||||
-L*) |
||||
func_cl_dashL "${1#-L}" |
||||
;; |
||||
-static) |
||||
shared=false |
||||
;; |
||||
-Wl,*) |
||||
arg=${1#-Wl,} |
||||
save_ifs="$IFS"; IFS=',' |
||||
for flag in $arg; do |
||||
IFS="$save_ifs" |
||||
linker_opts="$linker_opts $flag" |
||||
done |
||||
IFS="$save_ifs" |
||||
;; |
||||
-Xlinker) |
||||
eat=1 |
||||
linker_opts="$linker_opts $2" |
||||
;; |
||||
-*) |
||||
set x "$@" "$1" |
||||
shift |
||||
;; |
||||
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++) |
||||
func_file_conv "$1" |
||||
set x "$@" -Tp"$file" |
||||
shift |
||||
;; |
||||
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) |
||||
func_file_conv "$1" mingw |
||||
set x "$@" "$file" |
||||
shift |
||||
;; |
||||
*) |
||||
set x "$@" "$1" |
||||
shift |
||||
;; |
||||
esac |
||||
fi |
||||
shift |
||||
done |
||||
if test -n "$linker_opts"; then |
||||
linker_opts="-link$linker_opts" |
||||
fi |
||||
exec "$@" $linker_opts |
||||
exit 1 |
||||
} |
||||
|
||||
eat= |
||||
|
||||
case $1 in |
||||
'') |
||||
echo "$0: No command. Try '$0 --help' for more information." 1>&2 |
||||
exit 1; |
||||
;; |
||||
-h | --h*) |
||||
cat <<\EOF |
||||
Usage: compile [--help] [--version] PROGRAM [ARGS] |
||||
|
||||
Wrapper for compilers which do not understand '-c -o'. |
||||
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining |
||||
arguments, and rename the output as expected. |
||||
|
||||
If you are trying to build a whole package this is not the |
||||
right script to run: please start by reading the file 'INSTALL'. |
||||
|
||||
Report bugs to <bug-automake@gnu.org>. |
||||
EOF |
||||
exit $? |
||||
;; |
||||
-v | --v*) |
||||
echo "compile $scriptversion" |
||||
exit $? |
||||
;; |
||||
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ |
||||
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) |
||||
func_cl_wrapper "$@" # Doesn't return... |
||||
;; |
||||
esac |
||||
|
||||
ofile= |
||||
cfile= |
||||
|
||||
for arg |
||||
do |
||||
if test -n "$eat"; then |
||||
eat= |
||||
else |
||||
case $1 in |
||||
-o) |
||||
# configure might choose to run compile as 'compile cc -o foo foo.c'. |
||||
# So we strip '-o arg' only if arg is an object. |
||||
eat=1 |
||||
case $2 in |
||||
*.o | *.obj) |
||||
ofile=$2 |
||||
;; |
||||
*) |
||||
set x "$@" -o "$2" |
||||
shift |
||||
;; |
||||
esac |
||||
;; |
||||
*.c) |
||||
cfile=$1 |
||||
set x "$@" "$1" |
||||
shift |
||||
;; |
||||
*) |
||||
set x "$@" "$1" |
||||
shift |
||||
;; |
||||
esac |
||||
fi |
||||
shift |
||||
done |
||||
|
||||
if test -z "$ofile" || test -z "$cfile"; then |
||||
# If no '-o' option was seen then we might have been invoked from a |
||||
# pattern rule where we don't need one. That is ok -- this is a |
||||
# normal compilation that the losing compiler can handle. If no |
||||
# '.c' file was seen then we are probably linking. That is also |
||||
# ok. |
||||
exec "$@" |
||||
fi |
||||
|
||||
# Name of file we expect compiler to create. |
||||
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` |
||||
|
||||
# Create the lock directory. |
||||
# Note: use '[/\\:.-]' here to ensure that we don't use the same name |
||||
# that we are using for the .o file. Also, base the name on the expected |
||||
# object file name, since that is what matters with a parallel build. |
||||
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d |
||||
while true; do |
||||
if mkdir "$lockdir" >/dev/null 2>&1; then |
||||
break |
||||
fi |
||||
sleep 1 |
||||
done |
||||
# FIXME: race condition here if user kills between mkdir and trap. |
||||
trap "rmdir '$lockdir'; exit 1" 1 2 15 |
||||
|
||||
# Run the compile. |
||||
"$@" |
||||
ret=$? |
||||
|
||||
if test -f "$cofile"; then |
||||
test "$cofile" = "$ofile" || mv "$cofile" "$ofile" |
||||
elif test -f "${cofile}bj"; then |
||||
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" |
||||
fi |
||||
|
||||
rmdir "$lockdir" |
||||
exit $ret |
||||
|
||||
# Local Variables: |
||||
# mode: shell-script |
||||
# sh-indentation: 2 |
||||
# eval: (add-hook 'before-save-hook 'time-stamp) |
||||
# time-stamp-start: "scriptversion=" |
||||
# time-stamp-format: "%:y-%02m-%02d.%02H" |
||||
# time-stamp-time-zone: "UTC0" |
||||
# time-stamp-end: "; # UTC" |
||||
# End: |
File diff suppressed because it is too large
Load Diff
@ -1,518 +0,0 @@
@@ -1,518 +0,0 @@
|
||||
#!/bin/sh |
||||
# install - install a program, script, or datafile |
||||
|
||||
scriptversion=2018-03-11.20; # UTC |
||||
|
||||
# This originates from X11R5 (mit/util/scripts/install.sh), which was |
||||
# later released in X11R6 (xc/config/util/install.sh) with the |
||||
# following copyright and license. |
||||
# |
||||
# Copyright (C) 1994 X Consortium |
||||
# |
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy |
||||
# of this software and associated documentation files (the "Software"), to |
||||
# deal in the Software without restriction, including without limitation the |
||||
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or |
||||
# sell copies of the Software, and to permit persons to whom the Software is |
||||
# furnished to do so, subject to the following conditions: |
||||
# |
||||
# The above copyright notice and this permission notice shall be included in |
||||
# all copies or substantial portions of the Software. |
||||
# |
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
||||
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN |
||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- |
||||
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
||||
# |
||||
# Except as contained in this notice, the name of the X Consortium shall not |
||||
# be used in advertising or otherwise to promote the sale, use or other deal- |
||||
# ings in this Software without prior written authorization from the X Consor- |
||||
# tium. |
||||
# |
||||
# |
||||
# FSF changes to this file are in the public domain. |
||||
# |
||||
# Calling this script install-sh is preferred over install.sh, to prevent |
||||
# 'make' implicit rules from creating a file called install from it |
||||
# when there is no Makefile. |
||||
# |
||||
# This script is compatible with the BSD install script, but was written |
||||
# from scratch. |
||||
|
||||
tab=' ' |
||||
nl=' |
||||
' |
||||
IFS=" $tab$nl" |
||||
|
||||
# Set DOITPROG to "echo" to test this script. |
||||
|
||||
doit=${DOITPROG-} |
||||
doit_exec=${doit:-exec} |
||||
|
||||
# Put in absolute file names if you don't have them in your path; |
||||
# or use environment vars. |
||||
|
||||
chgrpprog=${CHGRPPROG-chgrp} |
||||
chmodprog=${CHMODPROG-chmod} |
||||
chownprog=${CHOWNPROG-chown} |
||||
cmpprog=${CMPPROG-cmp} |
||||
cpprog=${CPPROG-cp} |
||||
mkdirprog=${MKDIRPROG-mkdir} |
||||
mvprog=${MVPROG-mv} |
||||
rmprog=${RMPROG-rm} |
||||
stripprog=${STRIPPROG-strip} |
||||
|
||||
posix_mkdir= |
||||
|
||||
# Desired mode of installed file. |
||||
mode=0755 |
||||
|
||||
chgrpcmd= |
||||
chmodcmd=$chmodprog |
||||
chowncmd= |
||||
mvcmd=$mvprog |
||||
rmcmd="$rmprog -f" |
||||
stripcmd= |
||||
|
||||
src= |
||||
dst= |
||||
dir_arg= |
||||
dst_arg= |
||||
|
||||
copy_on_change=false |
||||
is_target_a_directory=possibly |
||||
|
||||
usage="\ |
||||
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE |
||||
or: $0 [OPTION]... SRCFILES... DIRECTORY |
||||
or: $0 [OPTION]... -t DIRECTORY SRCFILES... |
||||
or: $0 [OPTION]... -d DIRECTORIES... |
||||
|
||||
In the 1st form, copy SRCFILE to DSTFILE. |
||||
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. |
||||
In the 4th, create DIRECTORIES. |
||||
|
||||
Options: |
||||
--help display this help and exit. |
||||
--version display version info and exit. |
||||
|
||||
-c (ignored) |
||||
-C install only if different (preserve the last data modification time) |
||||
-d create directories instead of installing files. |
||||
-g GROUP $chgrpprog installed files to GROUP. |
||||
-m MODE $chmodprog installed files to MODE. |
||||
-o USER $chownprog installed files to USER. |
||||
-s $stripprog installed files. |
||||
-t DIRECTORY install into DIRECTORY. |
||||
-T report an error if DSTFILE is a directory. |
||||
|
||||
Environment variables override the default commands: |
||||
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG |
||||
RMPROG STRIPPROG |
||||
" |
||||
|
||||
while test $# -ne 0; do |
||||
case $1 in |
||||
-c) ;; |
||||
|
||||
-C) copy_on_change=true;; |
||||
|
||||
-d) dir_arg=true;; |
||||
|
||||
-g) chgrpcmd="$chgrpprog $2" |
||||
shift;; |
||||
|
||||
--help) echo "$usage"; exit $?;; |
||||
|
||||
-m) mode=$2 |
||||
case $mode in |
||||
*' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) |
||||
echo "$0: invalid mode: $mode" >&2 |
||||
exit 1;; |
||||
esac |
||||
shift;; |
||||
|
||||
-o) chowncmd="$chownprog $2" |
||||
shift;; |
||||
|
||||
-s) stripcmd=$stripprog;; |
||||
|
||||
-t) |
||||
is_target_a_directory=always |
||||
dst_arg=$2 |
||||
# Protect names problematic for 'test' and other utilities. |
||||
case $dst_arg in |
||||
-* | [=\(\)!]) dst_arg=./$dst_arg;; |
||||
esac |
||||
shift;; |
||||
|
||||
-T) is_target_a_directory=never;; |
||||
|
||||
--version) echo "$0 $scriptversion"; exit $?;; |
||||
|
||||
--) shift |
||||
break;; |
||||
|
||||
-*) echo "$0: invalid option: $1" >&2 |
||||
exit 1;; |
||||
|
||||
*) break;; |
||||
esac |
||||
shift |
||||
done |
||||
|
||||
# We allow the use of options -d and -T together, by making -d |
||||
# take the precedence; this is for compatibility with GNU install. |
||||
|
||||
if test -n "$dir_arg"; then |
||||
if test -n "$dst_arg"; then |
||||
echo "$0: target directory not allowed when installing a directory." >&2 |
||||
exit 1 |
||||
fi |
||||
fi |
||||
|
||||
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then |
||||
# When -d is used, all remaining arguments are directories to create. |
||||
# When -t is used, the destination is already specified. |
||||
# Otherwise, the last argument is the destination. Remove it from $@. |
||||
for arg |
||||
do |
||||
if test -n "$dst_arg"; then |
||||
# $@ is not empty: it contains at least $arg. |
||||
set fnord "$@" "$dst_arg" |
||||
shift # fnord |
||||
fi |
||||
shift # arg |
||||
dst_arg=$arg |
||||
# Protect names problematic for 'test' and other utilities. |
||||
case $dst_arg in |
||||
-* | [=\(\)!]) dst_arg=./$dst_arg;; |
||||
esac |
||||
done |
||||
fi |
||||
|
||||
if test $# -eq 0; then |
||||
if test -z "$dir_arg"; then |
||||
echo "$0: no input file specified." >&2 |
||||
exit 1 |
||||
fi |
||||
# It's OK to call 'install-sh -d' without argument. |
||||
# This can happen when creating conditional directories. |
||||
exit 0 |
||||
fi |
||||
|
||||
if test -z "$dir_arg"; then |
||||
if test $# -gt 1 || test "$is_target_a_directory" = always; then |
||||
if test ! -d "$dst_arg"; then |
||||
echo "$0: $dst_arg: Is not a directory." >&2 |
||||
exit 1 |
||||
fi |
||||
fi |
||||
fi |
||||
|
||||
if test -z "$dir_arg"; then |
||||
do_exit='(exit $ret); exit $ret' |
||||
trap "ret=129; $do_exit" 1 |
||||
trap "ret=130; $do_exit" 2 |
||||
trap "ret=141; $do_exit" 13 |
||||
trap "ret=143; $do_exit" 15 |
||||
|
||||
# Set umask so as not to create temps with too-generous modes. |
||||
# However, 'strip' requires both read and write access to temps. |
||||
case $mode in |
||||
# Optimize common cases. |
||||
*644) cp_umask=133;; |
||||
*755) cp_umask=22;; |
||||
|
||||
*[0-7]) |
||||
if test -z "$stripcmd"; then |
||||
u_plus_rw= |
||||
else |
||||
u_plus_rw='% 200' |
||||
fi |
||||
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; |
||||
*) |
||||
if test -z "$stripcmd"; then |
||||
u_plus_rw= |
||||
else |
||||
u_plus_rw=,u+rw |
||||
fi |
||||
cp_umask=$mode$u_plus_rw;; |
||||
esac |
||||
fi |
||||
|
||||
for src |
||||
do |
||||
# Protect names problematic for 'test' and other utilities. |
||||
case $src in |
||||
-* | [=\(\)!]) src=./$src;; |
||||
esac |
||||
|
||||
if test -n "$dir_arg"; then |
||||
dst=$src |
||||
dstdir=$dst |
||||
test -d "$dstdir" |
||||
dstdir_status=$? |
||||
else |
||||
|
||||
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command |
||||
# might cause directories to be created, which would be especially bad |
||||
# if $src (and thus $dsttmp) contains '*'. |
||||
if test ! -f "$src" && test ! -d "$src"; then |
||||
echo "$0: $src does not exist." >&2 |
||||
exit 1 |
||||
fi |
||||
|
||||
if test -z "$dst_arg"; then |
||||
echo "$0: no destination specified." >&2 |
||||
exit 1 |
||||
fi |
||||
dst=$dst_arg |
||||
|
||||
# If destination is a directory, append the input filename. |
||||
if test -d "$dst"; then |
||||
if test "$is_target_a_directory" = never; then |
||||
echo "$0: $dst_arg: Is a directory" >&2 |
||||
exit 1 |
||||
fi |
||||
dstdir=$dst |
||||
dstbase=`basename "$src"` |
||||
case $dst in |
||||
*/) dst=$dst$dstbase;; |
||||
*) dst=$dst/$dstbase;; |
||||
esac |
||||
dstdir_status=0 |
||||
else |
||||
dstdir=`dirname "$dst"` |
||||
test -d "$dstdir" |
||||
dstdir_status=$? |
||||
fi |
||||
fi |
||||
|
||||
case $dstdir in |
||||
*/) dstdirslash=$dstdir;; |
||||
*) dstdirslash=$dstdir/;; |
||||
esac |
||||
|
||||
obsolete_mkdir_used=false |
||||
|
||||
if test $dstdir_status != 0; then |
||||
case $posix_mkdir in |
||||
'') |
||||
# Create intermediate dirs using mode 755 as modified by the umask. |
||||
# This is like FreeBSD 'install' as of 1997-10-28. |
||||
umask=`umask` |
||||
case $stripcmd.$umask in |
||||
# Optimize common cases. |
||||
*[2367][2367]) mkdir_umask=$umask;; |
||||
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; |
||||
|
||||
*[0-7]) |
||||
mkdir_umask=`expr $umask + 22 \ |
||||
- $umask % 100 % 40 + $umask % 20 \ |
||||
- $umask % 10 % 4 + $umask % 2 |
||||
`;; |
||||
*) mkdir_umask=$umask,go-w;; |
||||
esac |
||||
|
||||
# With -d, create the new directory with the user-specified mode. |
||||
# Otherwise, rely on $mkdir_umask. |
||||
if test -n "$dir_arg"; then |
||||
mkdir_mode=-m$mode |
||||
else |
||||
mkdir_mode= |
||||
fi |
||||
|
||||
posix_mkdir=false |
||||
case $umask in |
||||
*[123567][0-7][0-7]) |
||||
# POSIX mkdir -p sets u+wx bits regardless of umask, which |
||||
# is incompatible with FreeBSD 'install' when (umask & 300) != 0. |
||||
;; |
||||
*) |
||||
# Note that $RANDOM variable is not portable (e.g. dash); Use it |
||||
# here however when possible just to lower collision chance. |
||||
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ |
||||
|
||||
trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 |
||||
|
||||
# Because "mkdir -p" follows existing symlinks and we likely work |
||||
# directly in world-writeable /tmp, make sure that the '$tmpdir' |
||||
# directory is successfully created first before we actually test |
||||
# 'mkdir -p' feature. |
||||
if (umask $mkdir_umask && |
||||
$mkdirprog $mkdir_mode "$tmpdir" && |
||||
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 |
||||
then |
||||
if test -z "$dir_arg" || { |
||||
# Check for POSIX incompatibilities with -m. |
||||
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or |
||||
# other-writable bit of parent directory when it shouldn't. |
||||
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory. |
||||
test_tmpdir="$tmpdir/a" |
||||
ls_ld_tmpdir=`ls -ld "$test_tmpdir"` |
||||
case $ls_ld_tmpdir in |
||||
d????-?r-*) different_mode=700;; |
||||
d????-?--*) different_mode=755;; |
||||
*) false;; |
||||
esac && |
||||
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && { |
||||
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` |
||||
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" |
||||
} |
||||
} |
||||
then posix_mkdir=: |
||||
fi |
||||
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" |
||||
else |
||||
# Remove any dirs left behind by ancient mkdir implementations. |
||||
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null |
||||
fi |
||||
trap '' 0;; |
||||
esac;; |
||||
esac |
||||
|
||||
if |
||||
$posix_mkdir && ( |
||||
umask $mkdir_umask && |
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" |
||||
) |
||||
then : |
||||
else |
||||
|
||||
# The umask is ridiculous, or mkdir does not conform to POSIX, |
||||
# or it failed possibly due to a race condition. Create the |
||||
# directory the slow way, step by step, checking for races as we go. |
||||
|
||||
case $dstdir in |
||||
/*) prefix='/';; |
||||
[-=\(\)!]*) prefix='./';; |
||||
*) prefix='';; |
||||
esac |
||||
|
||||
oIFS=$IFS |
||||
IFS=/ |
||||
set -f |
||||
set fnord $dstdir |
||||
shift |
||||
set +f |
||||
IFS=$oIFS |
||||
|
||||
prefixes= |
||||
|
||||
for d |
||||
do |
||||
test X"$d" = X && continue |
||||
|
||||
prefix=$prefix$d |
||||
if test -d "$prefix"; then |
||||
prefixes= |
||||
else |
||||
if $posix_mkdir; then |
||||
(umask=$mkdir_umask && |
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break |
||||
# Don't fail if two instances are running concurrently. |
||||
test -d "$prefix" || exit 1 |
||||
else |
||||
case $prefix in |
||||
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; |
||||
*) qprefix=$prefix;; |
||||
esac |
||||
prefixes="$prefixes '$qprefix'" |
||||
fi |
||||
fi |
||||
prefix=$prefix/ |
||||
done |
||||
|
||||
if test -n "$prefixes"; then |
||||
# Don't fail if two instances are running concurrently. |
||||
(umask $mkdir_umask && |
||||
eval "\$doit_exec \$mkdirprog $prefixes") || |
||||
test -d "$dstdir" || exit 1 |
||||
obsolete_mkdir_used=true |
||||
fi |
||||
fi |
||||
fi |
||||
|
||||
if test -n "$dir_arg"; then |
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } && |
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && |
||||
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || |
||||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 |
||||
else |
||||
|
||||
# Make a couple of temp file names in the proper directory. |
||||
dsttmp=${dstdirslash}_inst.$$_ |
||||
rmtmp=${dstdirslash}_rm.$$_ |
||||
|
||||
# Trap to clean up those temp files at exit. |
||||
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 |
||||
|
||||
# Copy the file name to the temp name. |
||||
(umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && |
||||
|
||||
# and set any options; do chmod last to preserve setuid bits. |
||||
# |
||||
# If any of these fail, we abort the whole thing. If we want to |
||||
# ignore errors from any of these, just make sure not to ignore |
||||
# errors from the above "$doit $cpprog $src $dsttmp" command. |
||||
# |
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && |
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && |
||||
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && |
||||
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && |
||||
|
||||
# If -C, don't bother to copy if it wouldn't change the file. |
||||
if $copy_on_change && |
||||
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && |
||||
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && |
||||
set -f && |
||||
set X $old && old=:$2:$4:$5:$6 && |
||||
set X $new && new=:$2:$4:$5:$6 && |
||||
set +f && |
||||
test "$old" = "$new" && |
||||
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 |
||||
then |
||||
rm -f "$dsttmp" |
||||
else |
||||
# Rename the file to the real destination. |
||||
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || |
||||
|
||||
# The rename failed, perhaps because mv can't rename something else |
||||
# to itself, or perhaps because mv is so ancient that it does not |
||||
# support -f. |
||||
{ |
||||
# Now remove or move aside any old file at destination location. |
||||
# We try this two ways since rm can't unlink itself on some |
||||
# systems and the destination file might be busy for other |
||||
# reasons. In this case, the final cleanup might fail but the new |
||||
# file should still install successfully. |
||||
{ |
||||
test ! -f "$dst" || |
||||
$doit $rmcmd -f "$dst" 2>/dev/null || |
||||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && |
||||
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } |
||||
} || |
||||
{ echo "$0: cannot unlink or rename $dst" >&2 |
||||
(exit 1); exit 1 |
||||
} |
||||
} && |
||||
|
||||
# Now rename the file to the real destination. |
||||
$doit $mvcmd "$dsttmp" "$dst" |
||||
} |
||||
fi || exit 1 |
||||
|
||||
trap '' 0 |
||||
fi |
||||
done |
||||
|
||||
# Local variables: |
||||
# eval: (add-hook 'before-save-hook 'time-stamp) |
||||
# time-stamp-start: "scriptversion=" |
||||
# time-stamp-format: "%:y-%02m-%02d.%02H" |
||||
# time-stamp-time-zone: "UTC0" |
||||
# time-stamp-end: "; # UTC" |
||||
# End: |
@ -1,215 +0,0 @@
@@ -1,215 +0,0 @@
|
||||
#! /bin/sh |
||||
# Common wrapper for a few potentially missing GNU programs. |
||||
|
||||
scriptversion=2018-03-07.03; # UTC |
||||
|
||||
# Copyright (C) 1996-2018 Free Software Foundation, Inc. |
||||
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. |
||||
|
||||
# This program is free software; you can redistribute it and/or modify |
||||
# it under the terms of the GNU General Public License as published by |
||||
# the Free Software Foundation; either version 2, or (at your option) |
||||
# any later version. |
||||
|
||||
# This program is distributed in the hope that it will be useful, |
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
# GNU General Public License for more details. |
||||
|
||||
# You should have received a copy of the GNU General Public License |
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. |
||||
|
||||
# As a special exception to the GNU General Public License, if you |
||||
# distribute this file as part of a program that contains a |
||||
# configuration script generated by Autoconf, you may include it under |
||||
# the same distribution terms that you use for the rest of that program. |
||||
|
||||
if test $# -eq 0; then |
||||
echo 1>&2 "Try '$0 --help' for more information" |
||||
exit 1 |
||||
fi |
||||
|
||||
case $1 in |
||||
|
||||
--is-lightweight) |
||||
# Used by our autoconf macros to check whether the available missing |
||||
# script is modern enough. |
||||
exit 0 |
||||
;; |
||||
|
||||
--run) |
||||
# Back-compat with the calling convention used by older automake. |
||||
shift |
||||
;; |
||||
|
||||
-h|--h|--he|--hel|--help) |
||||
echo "\ |
||||
$0 [OPTION]... PROGRAM [ARGUMENT]... |
||||
|
||||
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due |
||||
to PROGRAM being missing or too old. |
||||
|
||||
Options: |
||||
-h, --help display this help and exit |
||||
-v, --version output version information and exit |
||||
|
||||
Supported PROGRAM values: |
||||
aclocal autoconf autoheader autom4te automake makeinfo |
||||
bison yacc flex lex help2man |
||||
|
||||
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and |
||||
'g' are ignored when checking the name. |
||||
|
||||
Send bug reports to <bug-automake@gnu.org>." |
||||
exit $? |
||||
;; |
||||
|
||||
-v|--v|--ve|--ver|--vers|--versi|--versio|--version) |
||||
echo "missing $scriptversion (GNU Automake)" |
||||
exit $? |
||||
;; |
||||
|
||||
-*) |
||||
echo 1>&2 "$0: unknown '$1' option" |
||||
echo 1>&2 "Try '$0 --help' for more information" |
||||
exit 1 |
||||
;; |
||||
|
||||
esac |
||||
|
||||
# Run the given program, remember its exit status. |
||||
"$@"; st=$? |
||||
|
||||
# If it succeeded, we are done. |
||||
test $st -eq 0 && exit 0 |
||||
|
||||
# Also exit now if we it failed (or wasn't found), and '--version' was |
||||
# passed; such an option is passed most likely to detect whether the |
||||
# program is present and works. |
||||
case $2 in --version|--help) exit $st;; esac |
||||
|
||||
# Exit code 63 means version mismatch. This often happens when the user |
||||
# tries to use an ancient version of a tool on a file that requires a |
||||
# minimum version. |
||||
if test $st -eq 63; then |
||||
msg="probably too old" |
||||
elif test $st -eq 127; then |
||||
# Program was missing. |
||||
msg="missing on your system" |
||||
else |
||||
# Program was found and executed, but failed. Give up. |
||||
exit $st |
||||
fi |
||||
|
||||
perl_URL=https://www.perl.org/ |
||||
flex_URL=https://github.com/westes/flex |
||||
gnu_software_URL=https://www.gnu.org/software |
||||
|
||||
program_details () |
||||
{ |
||||
case $1 in |
||||
aclocal|automake) |
||||
echo "The '$1' program is part of the GNU Automake package:" |
||||
echo "<$gnu_software_URL/automake>" |
||||
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" |
||||
echo "<$gnu_software_URL/autoconf>" |
||||
echo "<$gnu_software_URL/m4/>" |
||||
echo "<$perl_URL>" |
||||
;; |
||||
autoconf|autom4te|autoheader) |
||||
echo "The '$1' program is part of the GNU Autoconf package:" |
||||
echo "<$gnu_software_URL/autoconf/>" |
||||
echo "It also requires GNU m4 and Perl in order to run:" |
||||
echo "<$gnu_software_URL/m4/>" |
||||
echo "<$perl_URL>" |
||||
;; |
||||
esac |
||||
} |
||||
|
||||
give_advice () |
||||
{ |
||||
# Normalize program name to check for. |
||||
normalized_program=`echo "$1" | sed ' |
||||
s/^gnu-//; t |
||||
s/^gnu//; t |
||||
s/^g//; t'` |
||||
|
||||
printf '%s\n' "'$1' is $msg." |
||||
|
||||
configure_deps="'configure.ac' or m4 files included by 'configure.ac'" |
||||
case $normalized_program in |
||||
autoconf*) |
||||
echo "You should only need it if you modified 'configure.ac'," |
||||
echo "or m4 files included by it." |
||||
program_details 'autoconf' |
||||
;; |
||||
autoheader*) |
||||
echo "You should only need it if you modified 'acconfig.h' or" |
||||
echo "$configure_deps." |
||||
program_details 'autoheader' |
||||
;; |
||||
automake*) |
||||
echo "You should only need it if you modified 'Makefile.am' or" |
||||
echo "$configure_deps." |
||||
program_details 'automake' |
||||
;; |
||||
aclocal*) |
||||
echo "You should only need it if you modified 'acinclude.m4' or" |
||||
echo "$configure_deps." |
||||
program_details 'aclocal' |
||||
;; |
||||
autom4te*) |
||||
echo "You might have modified some maintainer files that require" |
||||
echo "the 'autom4te' program to be rebuilt." |
||||
program_details 'autom4te' |
||||
;; |
||||
bison*|yacc*) |
||||
echo "You should only need it if you modified a '.y' file." |
||||
echo "You may want to install the GNU Bison package:" |
||||
echo "<$gnu_software_URL/bison/>" |
||||
;; |
||||
lex*|flex*) |
||||
echo "You should only need it if you modified a '.l' file." |
||||
echo "You may want to install the Fast Lexical Analyzer package:" |
||||
echo "<$flex_URL>" |
||||
;; |
||||
help2man*) |
||||
echo "You should only need it if you modified a dependency" \ |
||||
"of a man page." |
||||
echo "You may want to install the GNU Help2man package:" |
||||
echo "<$gnu_software_URL/help2man/>" |
||||
;; |
||||
makeinfo*) |
||||
echo "You should only need it if you modified a '.texi' file, or" |
||||
echo "any other file indirectly affecting the aspect of the manual." |
||||
echo "You might want to install the Texinfo package:" |
||||
echo "<$gnu_software_URL/texinfo/>" |
||||
echo "The spurious makeinfo call might also be the consequence of" |
||||
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" |
||||
echo "want to install GNU make:" |
||||
echo "<$gnu_software_URL/make/>" |
||||
;; |
||||
*) |
||||
echo "You might have modified some files without having the proper" |
||||
echo "tools for further handling them. Check the 'README' file, it" |
||||
echo "often tells you about the needed prerequisites for installing" |
||||
echo "this package. You may also peek at any GNU archive site, in" |
||||
echo "case some other package contains this missing '$1' program." |
||||
;; |
||||
esac |
||||
} |
||||
|
||||
give_advice "$1" | sed -e '1s/^/WARNING: /' \ |
||||
-e '2,$s/^/ /' >&2 |
||||
|
||||
# Propagate the correct exit status (expected to be 127 for a program |
||||
# not found, 63 for a program that failed due to version mismatch). |
||||
exit $st |
||||
|
||||
# Local variables: |
||||
# eval: (add-hook 'before-save-hook 'time-stamp) |
||||
# time-stamp-start: "scriptversion=" |
||||
# time-stamp-format: "%:y-%02m-%02d.%02H" |
||||
# time-stamp-time-zone: "UTC0" |
||||
# time-stamp-end: "; # UTC" |
||||
# End: |
@ -1,26 +0,0 @@
@@ -1,26 +0,0 @@
|
||||
# @configure_input@ |
||||
|
||||
PREFIX = @EXPAND_PREFIX@ |
||||
BINDIR = @EXPAND_BINDIR@ |
||||
DATADIR = @EXPAND_DATADIR@ |
||||
MANPREFIX = @EXPAND_MANDIR@ |
||||
|
||||
QMAKE_CC = @QBT_CC@ |
||||
QMAKE_CXX = @QBT_CXX@ |
||||
QMAKE_CXXFLAGS += @QBT_CONF_EXTRA_CFLAGS@ |
||||
|
||||
EXTERNAL_INCLUDES = @QBT_CONF_INCLUDES@ |
||||
EXTERNAL_INCLUDES -= $$QMAKE_DEFAULT_INCDIRS |
||||
# added /usr/local/include due to Qt 5.7.0 bug on macOS |
||||
macx: EXTERNAL_INCLUDES += "/usr/local/include" |
||||
INCLUDEPATH += $$EXTERNAL_INCLUDES |
||||
|
||||
EXTERNAL_LIBS = @LDFLAGS@ @LIBS@ |
||||
EXTERNAL_LIBS -= $$QMAKE_DEFAULT_LIBDIRS |
||||
LIBS += $$EXTERNAL_LIBS |
||||
|
||||
CONFIG += @QBT_ADD_CONFIG@ |
||||
CONFIG -= @QBT_REMOVE_CONFIG@ |
||||
|
||||
DEFINES += @QBT_ADD_DEFINES@ |
||||
DEFINES -= @QBT_REMOVE_DEFINES@ |
@ -1,58 +0,0 @@
@@ -1,58 +0,0 @@
|
||||
# Adapt these paths |
||||
# Point these to the include folders |
||||
INCLUDEPATH += $$quote(C:/qBittorrent/boost) |
||||
INCLUDEPATH += $$quote(C:/qBittorrent/libtorrent/include) |
||||
INCLUDEPATH += $$quote(C:/qBittorrent/zlib/include) |
||||
INCLUDEPATH += $$quote(C:/qBittorrent/openssl/include) |
||||
# Point these to the lib folders |
||||
LIBS += $$quote(-LC:/qBittorrent/boost/stage/lib) |
||||
LIBS += $$quote(-LC:/qBittorrent/libtorrent/lib) |
||||
LIBS += $$quote(-LC:/qBittorrent/zlib/lib) |
||||
LIBS += $$quote(-LC:/qBittorrent/openssl/lib) |
||||
|
||||
# Adapt the lib names/versions accordingly |
||||
# If you want to use Boost auto-linking then disable |
||||
# BOOST_ALL_NO_LIB below and omit Boost libraries here |
||||
LIBS += libcrypto.lib libssl.lib libtorrent.lib zlib.lib |
||||
CONFIG(debug, debug|release) { |
||||
LIBS += boost_system-vc140-mt-d.lib |
||||
} |
||||
else { |
||||
LIBS += boost_system-vc140-mt.lib |
||||
} |
||||
|
||||
# ...or if you use MinGW |
||||
#LIBS += libcrypto libssl libz |
||||
#CONFIG(debug, debug|release) { |
||||
# LIBS += libtorrent-rasterbar \ |
||||
# libboost_system-mt |
||||
#} |
||||
#else { |
||||
# LIBS += libtorrent-rasterbar \ |
||||
# libboost_system-mt |
||||
#} |
||||
|
||||
# Disable to use Boost auto-linking |
||||
DEFINES += BOOST_ALL_NO_LIB |
||||
# Use one of the following options |
||||
DEFINES += BOOST_SYSTEM_STATIC_LINK |
||||
#DEFINES += BOOST_SYSTEM_DYN_LINK |
||||
# Enable it if compiling with libtorrent 3.x |
||||
#DEFINES += BOOST_SYSTEM_USE_UTF8 |
||||
|
||||
# Enable if libtorrent was built with this flag defined |
||||
#DEFINES += TORRENT_NO_DEPRECATE |
||||
# Enable if linking dynamically against libtorrent |
||||
#DEFINES += TORRENT_LINKING_SHARED |
||||
|
||||
# Enable this if compiling with libtorrent 2.x |
||||
#DEFINES += QBT_USES_LIBTORRENT2 |
||||
|
||||
# Enable stack trace support |
||||
CONFIG += stacktrace |
||||
|
||||
win32-msvc* { |
||||
QMAKE_CXXFLAGS += "/guard:cf" |
||||
QMAKE_LFLAGS += "/guard:cf" |
||||
QMAKE_LFLAGS_RELEASE += "/OPT:REF /OPT:ICF" |
||||
} |
@ -1,303 +0,0 @@
@@ -1,303 +0,0 @@
|
||||
AC_INIT([qbittorrent], [v5.0.0alpha1], [bugs.qbittorrent.org], [], [https://www.qbittorrent.org/]) |
||||
AC_CONFIG_AUX_DIR([build-aux]) |
||||
AC_CONFIG_MACRO_DIR([m4]) |
||||
: ${CFLAGS=""} |
||||
: ${CXXFLAGS=""} |
||||
AC_PROG_CC |
||||
AC_PROG_CXX |
||||
AC_PROG_SED |
||||
AC_LANG(C++) |
||||
AC_CANONICAL_HOST |
||||
AM_INIT_AUTOMAKE([foreign]) |
||||
|
||||
# use compiler from env variables if available |
||||
QBT_CC="$CC" |
||||
QBT_CXX="$CXX" |
||||
|
||||
# Define --wth-* and --enable-* arguments |
||||
|
||||
AC_ARG_ENABLE(debug, |
||||
[AS_HELP_STRING([--enable-debug], |
||||
[Enable debug build])], |
||||
[], |
||||
[enable_debug=no]) |
||||
|
||||
AC_ARG_ENABLE(stacktrace, |
||||
[AS_HELP_STRING([--enable-stacktrace], |
||||
[Enable stacktrace feature (default=auto)])], |
||||
[], |
||||
[enable_stacktrace=auto]) |
||||
|
||||
AC_ARG_ENABLE(gui, |
||||
[AS_HELP_STRING([--disable-gui], |
||||
[Disable the GUI for headless running. Disables QtDBus and the GeoIP Database.])], |
||||
[], |
||||
[enable_gui=yes]) |
||||
|
||||
AC_ARG_ENABLE(systemd, |
||||
[AS_HELP_STRING([--enable-systemd], |
||||
[Install the systemd service file (headless only).])], |
||||
[], |
||||
[enable_systemd=no]) |
||||
|
||||
AC_ARG_ENABLE(webui, |
||||
[AS_HELP_STRING([--disable-webui], |
||||
[Disable the WebUI.])], |
||||
[], |
||||
[enable_webui=yes]) |
||||
|
||||
AC_ARG_ENABLE(qt-dbus, |
||||
[AS_HELP_STRING([--disable-qt-dbus], |
||||
[Disable use of QtDBus (GUI only)])], |
||||
[], |
||||
[enable_qt_dbus=yes]) |
||||
|
||||
# Detect OS |
||||
AC_MSG_CHECKING([whether to enable specific tweaks for current host "$host_os"]) |
||||
case "$host_os" in |
||||
*darwin*) |
||||
AC_MSG_RESULT([yes]) |
||||
enable_qt_dbus=no |
||||
;; |
||||
|
||||
*freebsd*) |
||||
AC_MSG_RESULT([yes]) |
||||
LIBS="-lexecinfo $LIBS" |
||||
;; |
||||
|
||||
*haiku*) |
||||
AC_MSG_RESULT([yes]) |
||||
LIBS="-lnetwork $LIBS" |
||||
;; |
||||
|
||||
*openbsd*) |
||||
AC_MSG_RESULT([yes]) |
||||
LIBS="-lexecinfo $LIBS" |
||||
;; |
||||
|
||||
*) |
||||
AC_MSG_RESULT([no]) |
||||
;; |
||||
esac |
||||
|
||||
# Require 0.23 pkg-config |
||||
PKG_PROG_PKG_CONFIG([0.23]) |
||||
AS_IF([test "x$PKG_CONFIG" = "x"], |
||||
[AC_MSG_ERROR([Could not find pkg-config])]) |
||||
|
||||
# Check which arguments were set and act accordingly |
||||
AC_MSG_CHECKING([whether to enable the Debug build]) |
||||
AS_CASE(["x$enable_debug"], |
||||
["xno"], |
||||
[AC_MSG_RESULT([no]) |
||||
QBT_ADD_CONFIG="$QBT_ADD_CONFIG release" |
||||
QBT_REMOVE_CONFIG="$QBT_REMOVE_CONFIG debug"], |
||||
["xyes"], |
||||
[AC_MSG_RESULT([yes]) |
||||
QBT_ADD_CONFIG="$QBT_ADD_CONFIG debug" |
||||
QBT_REMOVE_CONFIG="$QBT_REMOVE_CONFIG release"], |
||||
[AC_MSG_RESULT([$enable_debug]) |
||||
AC_MSG_ERROR([Unknown option "$enable_debug". Use either "yes" or "no".])]) |
||||
|
||||
AC_MSG_CHECKING([whether to enable the stacktrace feature]) |
||||
AS_CASE(["x$enable_stacktrace"], |
||||
["xno"], |
||||
[AC_MSG_RESULT([no]) |
||||
QBT_REMOVE_CONFIG="$QBT_REMOVE_CONFIG stacktrace"], |
||||
["xyes"], |
||||
[AC_MSG_RESULT([yes]) |
||||
QBT_ADD_CONFIG="$QBT_ADD_CONFIG stacktrace"], |
||||
["xauto"], |
||||
[AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#include <execinfo.h>]])], |
||||
[AC_MSG_RESULT([yes]) |
||||
QBT_ADD_CONFIG="$QBT_ADD_CONFIG stacktrace"], |
||||
[AC_MSG_RESULT([no]) |
||||
QBT_REMOVE_CONFIG="$QBT_REMOVE_CONFIG stacktrace"])], |
||||
[AC_MSG_RESULT([$enable_stacktrace]) |
||||
AC_MSG_ERROR([Unknown option "$enable_stacktrace". Use either "yes" or "no".])]) |
||||
|
||||
AC_MSG_CHECKING([whether to enable the GUI]) |
||||
AS_CASE(["x$enable_gui"], |
||||
["xyes"], |
||||
[AC_MSG_RESULT([yes]) |
||||
enable_systemd=[no] |
||||
QBT_REMOVE_CONFIG="$QBT_REMOVE_CONFIG nogui"], |
||||
["xno"], |
||||
[AC_MSG_RESULT([no]) |
||||
enable_qt_dbus=[no] |
||||
QBT_ADD_CONFIG="$QBT_ADD_CONFIG nogui"], |
||||
[AC_MSG_RESULT([$enable_gui]) |
||||
AC_MSG_ERROR([Unknown option "$enable_gui". Use either "yes" or "no".])]) |
||||
|
||||
AC_MSG_CHECKING([whether to install the systemd service file]) |
||||
AS_CASE(["x$enable_systemd"], |
||||
["xyes"], |
||||
[AC_MSG_RESULT([yes]) |
||||
QBT_ADD_CONFIG="$QBT_ADD_CONFIG systemd"], |
||||
["xno"], |
||||
[AC_MSG_RESULT([no]) |
||||
QBT_REMOVE_CONFIG="$QBT_REMOVE_CONFIG systemd"], |
||||
[AC_MSG_RESULT([$enable_systemd]) |
||||
AC_MSG_ERROR([Unknown option "$enable_systemd". Use either "yes" or "no".])]) |
||||
|
||||
AC_MSG_CHECKING([whether to enable the WebUI]) |
||||
AS_CASE(["x$enable_webui"], |
||||
["xyes"], |
||||
[AC_MSG_RESULT([yes]) |
||||
QBT_REMOVE_CONFIG="$QBT_REMOVE_CONFIG nowebui"], |
||||
["xno"], |
||||
[AC_MSG_RESULT([no]) |
||||
QBT_ADD_CONFIG="$QBT_ADD_CONFIG nowebui"], |
||||
[AC_MSG_RESULT([$enable_webui]) |
||||
AC_MSG_ERROR([Unknown option "$enable_webui". Use either "yes" or "no".])]) |
||||
|
||||
FIND_QT5() |
||||
AS_IF([test "x$QT_QMAKE" = "x"], |
||||
[AC_MSG_ERROR([Could not find qmake]) |
||||
]) |
||||
AS_IF([test "x$enable_gui" = "xyes"], |
||||
[PKG_CHECK_MODULES(Qt5Svg, [Qt5Svg >= 5.15.2]) |
||||
]) |
||||
AC_MSG_CHECKING([whether QtDBus should be enabled]) |
||||
AS_CASE(["x$enable_qt_dbus"], |
||||
["xyes"], |
||||
[AC_MSG_RESULT([yes]) |
||||
FIND_QTDBUS() |
||||
AS_IF([test "x$HAVE_QTDBUS" = "xfalse"], |
||||
[AC_MSG_ERROR([Could not find QtDBus])], |
||||
[QBT_ADD_CONFIG="$QBT_ADD_CONFIG dbus" QBT_ADD_DEFINES="$QBT_ADD_DEFINES QBT_USES_DBUS"] |
||||
)], |
||||
["xno"], |
||||
[AC_MSG_RESULT([no]) |
||||
QBT_REMOVE_CONFIG="$QBT_REMOVE_CONFIG dbus"], |
||||
[AC_MSG_RESULT([$enable_qt_dbus]) |
||||
AC_MSG_ERROR([Unknown option "$enable_qt_dbus". Use either "yes" or "no".])]) |
||||
|
||||
|
||||
AX_BOOST_BASE([1.71], |
||||
[AC_MSG_NOTICE([Boost CXXFLAGS: "$BOOST_CPPFLAGS"]) |
||||
AC_MSG_NOTICE([Boost LDFLAGS: "$BOOST_LDFLAGS"])], |
||||
[AC_MSG_ERROR([Could not find Boost])]) |
||||
CXXFLAGS="$BOOST_CPPFLAGS $CXXFLAGS" |
||||
LDFLAGS="$BOOST_LDFLAGS $LDFLAGS" |
||||
|
||||
# add workaround for problematic boost version |
||||
# taken from ax_boost_base.m4 |
||||
m4_define([DETECT_BOOST_VERSION_PROGRAM], |
||||
[AC_LANG_PROGRAM([[#include <boost/version.hpp>]], |
||||
[[(void) ((void)sizeof(char[1 - 2*!!((BOOST_VERSION) < ($1))]));]])]) |
||||
|
||||
PKG_CHECK_MODULES(libtorrent, |
||||
[libtorrent-rasterbar >= 2.0.9], |
||||
[CXXFLAGS="$libtorrent_CFLAGS $CXXFLAGS" LIBS="$libtorrent_LIBS $LIBS" QBT_ADD_DEFINES="$QBT_ADD_DEFINES QBT_USES_LIBTORRENT2"], |
||||
[PKG_CHECK_MODULES(libtorrent, |
||||
[libtorrent-rasterbar >= 1.2.19 libtorrent-rasterbar < 2], |
||||
[CXXFLAGS="$libtorrent_CFLAGS $CXXFLAGS" LIBS="$libtorrent_LIBS $LIBS"])]) |
||||
|
||||
PKG_CHECK_MODULES(openssl, |
||||
[openssl >= 1.1.1], |
||||
[CXXFLAGS="$openssl_CFLAGS $CXXFLAGS" |
||||
LIBS="$openssl_LIBS $LIBS"]) |
||||
|
||||
PKG_CHECK_MODULES(zlib, |
||||
[zlib >= 1.2.11], |
||||
[CXXFLAGS="$zlib_CFLAGS $CXXFLAGS" |
||||
LIBS="$zlib_LIBS $LIBS"]) |
||||
|
||||
# Check if already in >= C++17 mode because of the flags returned by one of the above packages |
||||
TMP_CXXFLAGS="$CXXFLAGS" |
||||
CXXFLAGS="" |
||||
AC_MSG_CHECKING([if compiler defaults to C++17 or later mode]) |
||||
AC_COMPILE_IFELSE([DETECT_CPP17_PROGRAM()], |
||||
[AC_MSG_RESULT([yes]) |
||||
QBT_CXX17_FOUND="yes"], |
||||
[AC_MSG_RESULT([no]) |
||||
QBT_CXX17_FOUND="no"]) |
||||
|
||||
# In case of no, check if the compiler can support at least C++17 |
||||
# and if yes, enable it leaving a warning to the user |
||||
AS_IF([test "x$QBT_CXX17_FOUND" = "xno"], |
||||
[AC_MSG_CHECKING([if compiler supports C++17]) |
||||
CXXFLAGS="-std=c++17" |
||||
AC_COMPILE_IFELSE([DETECT_CPP17_PROGRAM()], |
||||
[AC_MSG_RESULT([yes]) |
||||
AC_MSG_CHECKING([if C++17 is disabled by the set compiler flags]) |
||||
# prepend the flag so it won't override conflicting user defined flags |
||||
CXXFLAGS="-std=c++17 $TMP_CXXFLAGS" |
||||
AC_COMPILE_IFELSE([DETECT_CPP17_PROGRAM()], |
||||
[AC_MSG_RESULT([no]) |
||||
QBT_ADD_CONFIG="$QBT_ADD_CONFIG c++17" |
||||
AC_MSG_WARN([C++17 mode is now force enabled. The C++ mode should match the mode that other libraries were built with, otherwise you'll likely get linking errors.])], |
||||
[AC_MSG_RESULT([yes]) |
||||
AC_MSG_ERROR([The compiler supports C++17 but the user or a dependency has explicitly enabled a lower mode.])])], |
||||
[AC_MSG_RESULT([no]) |
||||
AC_MSG_ERROR([A compiler supporting C++17 is required.])]) |
||||
]) |
||||
CXXFLAGS="$TMP_CXXFLAGS" |
||||
|
||||
# These are required because autoconf doesn't expand these **particular** |
||||
# vars automatically. And qmake cannot autoexpand them. |
||||
AX_DEFINE_DIR([EXPAND_PREFIX], [prefix]) |
||||
AX_DEFINE_DIR([EXPAND_BINDIR], [bindir]) |
||||
AX_DEFINE_DIR([EXPAND_DATADIR], [datadir]) |
||||
AX_DEFINE_DIR([EXPAND_MANDIR], [mandir]) |
||||
|
||||
# Original extract() function contributed by pmzqla |
||||
# $*: Strings to parse |
||||
# Set $QBT_CONF_DEFINES, $QBT_CONF_INCLUDES, $QBT_CONF_EXTRA_CFLAGS |
||||
extract() { |
||||
if [[ -z "$*" ]]; then |
||||
echo "Input string required" |
||||
return 1 |
||||
fi |
||||
|
||||
# BSD sed needs an actual newline character in the substitute command |
||||
new_line=' |
||||
' |
||||
# Convert " -" to "\n" if not between quotes and remove possible leading white spaces |
||||
string=$(echo " $*" | $SED -e "s: -:\\${new_line}:g" -e 's:"\(.*\)\n\(.*\)":\"\1 -\2":g' -e "s:'\(.*\)\n\(.*\)':\'\1 -\2':g" -e 's/^[[[:space:]]]*//') |
||||
SAVEIFS=$IFS |
||||
IFS=$(printf "\n\b") |
||||
for i in $string; do |
||||
case "$(echo "$i" | cut -c1)" in |
||||
'') ;; |
||||
D) QBT_CONF_DEFINES="$QBT_CONF_DEFINES $(echo $i | cut -c2-)";; |
||||
I) QBT_CONF_INCLUDES="$QBT_CONF_INCLUDES $(echo $i | cut -c2-)";; |
||||
*) QBT_CONF_EXTRA_CFLAGS="$QBT_CONF_EXTRA_CFLAGS -$i";; |
||||
esac |
||||
done |
||||
IFS=$SAVEIFS |
||||
} |
||||
|
||||
extract "$CFLAGS $CXXFLAGS" |
||||
QBT_ADD_DEFINES="$QBT_ADD_DEFINES $QBT_CONF_DEFINES" |
||||
|
||||
# Substitute the values of these vars in conf.pri.in |
||||
AC_SUBST(QBT_CC) |
||||
AC_SUBST(QBT_CXX) |
||||
AC_SUBST(QBT_CONF_INCLUDES) |
||||
AC_SUBST(QBT_CONF_EXTRA_CFLAGS) |
||||
AC_SUBST(QBT_ADD_CONFIG) |
||||
AC_SUBST(QBT_REMOVE_CONFIG) |
||||
AC_SUBST(QBT_ADD_DEFINES) |
||||
AC_SUBST(QBT_REMOVE_DEFINES) |
||||
|
||||
QBT_CONFIG_FILES="conf.pri" |
||||
|
||||
AS_IF([test "x$enable_systemd" = "xyes"], |
||||
[QBT_CONFIG_FILES="$QBT_CONFIG_FILES dist/unix/systemd/qbittorrent-nox@.service"]) |
||||
|
||||
AC_CONFIG_FILES(["$QBT_CONFIG_FILES"]) |
||||
AC_OUTPUT |
||||
|
||||
AC_MSG_NOTICE([Running qmake to generate the makefile...]) |
||||
TOPDIR="$(cd "$(dirname "$0")" && pwd)" |
||||
$QT_QMAKE -r "$TOPDIR/qbittorrent.pro" "QMAKE_LRELEASE=$QMAKE_LRELEASE" |
||||
qmake_ret="$?" |
||||
|
||||
AS_ECHO() |
||||
AS_IF([test "x$qmake_ret" != "x0"], |
||||
[AC_MSG_ERROR([$QT_QMAKE failed to generate the makefile])]) |
||||
|
||||
AC_MSG_NOTICE([Good, the configure finished.]) |
||||
AS_ECHO() |
@ -1,303 +0,0 @@
@@ -1,303 +0,0 @@
|
||||
# =========================================================================== |
||||
# https://www.gnu.org/software/autoconf-archive/ax_boost_base.html |
||||
# =========================================================================== |
||||
# |
||||
# SYNOPSIS |
||||
# |
||||
# AX_BOOST_BASE([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) |
||||
# |
||||
# DESCRIPTION |
||||
# |
||||
# Test for the Boost C++ libraries of a particular version (or newer) |
||||
# |
||||
# If no path to the installed boost library is given the macro searchs |
||||
# under /usr, /usr/local, /opt and /opt/local and evaluates the |
||||
# $BOOST_ROOT environment variable. Further documentation is available at |
||||
# <http://randspringer.de/boost/index.html>. |
||||
# |
||||
# This macro calls: |
||||
# |
||||
# AC_SUBST(BOOST_CPPFLAGS) / AC_SUBST(BOOST_LDFLAGS) |
||||
# |
||||
# And sets: |
||||
# |
||||
# HAVE_BOOST |
||||
# |
||||
# LICENSE |
||||
# |
||||
# Copyright (c) 2008 Thomas Porschberg <thomas@randspringer.de> |
||||
# Copyright (c) 2009 Peter Adolphs |
||||
# |
||||
# Copying and distribution of this file, with or without modification, are |
||||
# permitted in any medium without royalty provided the copyright notice |
||||
# and this notice are preserved. This file is offered as-is, without any |
||||
# warranty. |
||||
|
||||
#serial 49 |
||||
|
||||
# example boost program (need to pass version) |
||||
m4_define([_AX_BOOST_BASE_PROGRAM], |
||||
[AC_LANG_PROGRAM([[ |
||||
#include <boost/version.hpp> |
||||
]],[[ |
||||
(void) ((void)sizeof(char[1 - 2*!!((BOOST_VERSION) < ($1))])); |
||||
]])]) |
||||
|
||||
AC_DEFUN([AX_BOOST_BASE], |
||||
[ |
||||
AC_ARG_WITH([boost], |
||||
[AS_HELP_STRING([--with-boost@<:@=ARG@:>@], |
||||
[use Boost library from a standard location (ARG=yes), |
||||
from the specified location (ARG=<path>), |
||||
or disable it (ARG=no) |
||||
@<:@ARG=yes@:>@ ])], |
||||
[ |
||||
AS_CASE([$withval], |
||||
[no],[want_boost="no";_AX_BOOST_BASE_boost_path=""], |
||||
[yes],[want_boost="yes";_AX_BOOST_BASE_boost_path=""], |
||||
[want_boost="yes";_AX_BOOST_BASE_boost_path="$withval"]) |
||||
], |
||||
[want_boost="yes"]) |
||||
|
||||
|
||||
AC_ARG_WITH([boost-libdir], |
||||
[AS_HELP_STRING([--with-boost-libdir=LIB_DIR], |
||||
[Force given directory for boost libraries. |
||||
Note that this will override library path detection, |
||||
so use this parameter only if default library detection fails |
||||
and you know exactly where your boost libraries are located.])], |
||||
[ |
||||
AS_IF([test -d "$withval"], |
||||
[_AX_BOOST_BASE_boost_lib_path="$withval"], |
||||
[AC_MSG_ERROR([--with-boost-libdir expected directory name])]) |
||||
], |
||||
[_AX_BOOST_BASE_boost_lib_path=""]) |
||||
|
||||
BOOST_LDFLAGS="" |
||||
BOOST_CPPFLAGS="" |
||||
AS_IF([test "x$want_boost" = "xyes"], |
||||
[_AX_BOOST_BASE_RUNDETECT([$1],[$2],[$3])]) |
||||
AC_SUBST(BOOST_CPPFLAGS) |
||||
AC_SUBST(BOOST_LDFLAGS) |
||||
]) |
||||
|
||||
|
||||
# convert a version string in $2 to numeric and affect to polymorphic var $1 |
||||
AC_DEFUN([_AX_BOOST_BASE_TONUMERICVERSION],[ |
||||
AS_IF([test "x$2" = "x"],[_AX_BOOST_BASE_TONUMERICVERSION_req="1.20.0"],[_AX_BOOST_BASE_TONUMERICVERSION_req="$2"]) |
||||
_AX_BOOST_BASE_TONUMERICVERSION_req_shorten=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req : '\([[0-9]]*\.[[0-9]]*\)'` |
||||
_AX_BOOST_BASE_TONUMERICVERSION_req_major=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req : '\([[0-9]]*\)'` |
||||
AS_IF([test "x$_AX_BOOST_BASE_TONUMERICVERSION_req_major" = "x"], |
||||
[AC_MSG_ERROR([You should at least specify libboost major version])]) |
||||
_AX_BOOST_BASE_TONUMERICVERSION_req_minor=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req : '[[0-9]]*\.\([[0-9]]*\)'` |
||||
AS_IF([test "x$_AX_BOOST_BASE_TONUMERICVERSION_req_minor" = "x"], |
||||
[_AX_BOOST_BASE_TONUMERICVERSION_req_minor="0"]) |
||||
_AX_BOOST_BASE_TONUMERICVERSION_req_sub_minor=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req : '[[0-9]]*\.[[0-9]]*\.\([[0-9]]*\)'` |
||||
AS_IF([test "X$_AX_BOOST_BASE_TONUMERICVERSION_req_sub_minor" = "X"], |
||||
[_AX_BOOST_BASE_TONUMERICVERSION_req_sub_minor="0"]) |
||||
_AX_BOOST_BASE_TONUMERICVERSION_RET=`expr $_AX_BOOST_BASE_TONUMERICVERSION_req_major \* 100000 \+ $_AX_BOOST_BASE_TONUMERICVERSION_req_minor \* 100 \+ $_AX_BOOST_BASE_TONUMERICVERSION_req_sub_minor` |
||||
AS_VAR_SET($1,$_AX_BOOST_BASE_TONUMERICVERSION_RET) |
||||
]) |
||||
|
||||
dnl Run the detection of boost should be run only if $want_boost |
||||
AC_DEFUN([_AX_BOOST_BASE_RUNDETECT],[ |
||||
_AX_BOOST_BASE_TONUMERICVERSION(WANT_BOOST_VERSION,[$1]) |
||||
succeeded=no |
||||
|
||||
|
||||
AC_REQUIRE([AC_CANONICAL_HOST]) |
||||
dnl On 64-bit systems check for system libraries in both lib64 and lib. |
||||
dnl The former is specified by FHS, but e.g. Debian does not adhere to |
||||
dnl this (as it rises problems for generic multi-arch support). |
||||
dnl The last entry in the list is chosen by default when no libraries |
||||
dnl are found, e.g. when only header-only libraries are installed! |
||||
AS_CASE([${host_cpu}], |
||||
[x86_64],[libsubdirs="lib64 libx32 lib lib64"], |
||||
[mips*64*],[libsubdirs="lib64 lib32 lib lib64"], |
||||
[ppc64|powerpc64|s390x|sparc64|aarch64|ppc64le|powerpc64le|riscv64|e2k],[libsubdirs="lib64 lib lib64"], |
||||
[libsubdirs="lib"] |
||||
) |
||||
|
||||
dnl allow for real multi-arch paths e.g. /usr/lib/x86_64-linux-gnu. Give |
||||
dnl them priority over the other paths since, if libs are found there, they |
||||
dnl are almost assuredly the ones desired. |
||||
AS_CASE([${host_cpu}], |
||||
[i?86],[multiarch_libsubdir="lib/i386-${host_os}"], |
||||
[armv7l],[multiarch_libsubdir="lib/arm-${host_os}"], |
||||
[multiarch_libsubdir="lib/${host_cpu}-${host_os}"] |
||||
) |
||||
|
||||
dnl first we check the system location for boost libraries |
||||
dnl this location ist chosen if boost libraries are installed with the --layout=system option |
||||
dnl or if you install boost with RPM |
||||
AS_IF([test "x$_AX_BOOST_BASE_boost_path" != "x"],[ |
||||
AC_MSG_CHECKING([for boostlib >= $1 ($WANT_BOOST_VERSION) includes in "$_AX_BOOST_BASE_boost_path/include"]) |
||||
AS_IF([test -d "$_AX_BOOST_BASE_boost_path/include" && test -r "$_AX_BOOST_BASE_boost_path/include"],[ |
||||
AC_MSG_RESULT([yes]) |
||||
BOOST_CPPFLAGS="-I$_AX_BOOST_BASE_boost_path/include" |
||||
for _AX_BOOST_BASE_boost_path_tmp in $multiarch_libsubdir $libsubdirs; do |
||||
AC_MSG_CHECKING([for boostlib >= $1 ($WANT_BOOST_VERSION) lib path in "$_AX_BOOST_BASE_boost_path/$_AX_BOOST_BASE_boost_path_tmp"]) |
||||
AS_IF([test -d "$_AX_BOOST_BASE_boost_path/$_AX_BOOST_BASE_boost_path_tmp" && test -r "$_AX_BOOST_BASE_boost_path/$_AX_BOOST_BASE_boost_path_tmp" ],[ |
||||
AC_MSG_RESULT([yes]) |
||||
BOOST_LDFLAGS="-L$_AX_BOOST_BASE_boost_path/$_AX_BOOST_BASE_boost_path_tmp"; |
||||
break; |
||||
], |
||||
[AC_MSG_RESULT([no])]) |
||||
done],[ |
||||
AC_MSG_RESULT([no])]) |
||||
],[ |
||||
if test X"$cross_compiling" = Xyes; then |
||||
search_libsubdirs=$multiarch_libsubdir |
||||
else |
||||
search_libsubdirs="$multiarch_libsubdir $libsubdirs" |
||||
fi |
||||
for _AX_BOOST_BASE_boost_path_tmp in /usr /usr/local /opt /opt/local ; do |
||||
if test -d "$_AX_BOOST_BASE_boost_path_tmp/include/boost" && test -r "$_AX_BOOST_BASE_boost_path_tmp/include/boost" ; then |
||||
for libsubdir in $search_libsubdirs ; do |
||||
if ls "$_AX_BOOST_BASE_boost_path_tmp/$libsubdir/libboost_"* >/dev/null 2>&1 ; then break; fi |
||||
done |
||||
BOOST_LDFLAGS="-L$_AX_BOOST_BASE_boost_path_tmp/$libsubdir" |
||||
BOOST_CPPFLAGS="-I$_AX_BOOST_BASE_boost_path_tmp/include" |
||||
break; |
||||
fi |
||||
done |
||||
]) |
||||
|
||||
dnl overwrite ld flags if we have required special directory with |
||||
dnl --with-boost-libdir parameter |
||||
AS_IF([test "x$_AX_BOOST_BASE_boost_lib_path" != "x"], |
||||
[BOOST_LDFLAGS="-L$_AX_BOOST_BASE_boost_lib_path"]) |
||||
|
||||
AC_MSG_CHECKING([for boostlib >= $1 ($WANT_BOOST_VERSION)]) |
||||
CPPFLAGS_SAVED="$CPPFLAGS" |
||||
CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" |
||||
export CPPFLAGS |
||||
|
||||
LDFLAGS_SAVED="$LDFLAGS" |
||||
LDFLAGS="$LDFLAGS $BOOST_LDFLAGS" |
||||
export LDFLAGS |
||||
|
||||
AC_REQUIRE([AC_PROG_CXX]) |
||||
AC_LANG_PUSH(C++) |
||||
AC_COMPILE_IFELSE([_AX_BOOST_BASE_PROGRAM($WANT_BOOST_VERSION)],[ |
||||
AC_MSG_RESULT(yes) |
||||
succeeded=yes |
||||
found_system=yes |
||||
],[ |
||||
]) |
||||
AC_LANG_POP([C++]) |
||||
|
||||
|
||||
|
||||
dnl if we found no boost with system layout we search for boost libraries |
||||
dnl built and installed without the --layout=system option or for a staged(not installed) version |
||||
if test "x$succeeded" != "xyes" ; then |
||||
CPPFLAGS="$CPPFLAGS_SAVED" |
||||
LDFLAGS="$LDFLAGS_SAVED" |
||||
BOOST_CPPFLAGS= |
||||
if test -z "$_AX_BOOST_BASE_boost_lib_path" ; then |
||||
BOOST_LDFLAGS= |
||||
fi |
||||
_version=0 |
||||
if test -n "$_AX_BOOST_BASE_boost_path" ; then |
||||
if test -d "$_AX_BOOST_BASE_boost_path" && test -r "$_AX_BOOST_BASE_boost_path"; then |
||||
for i in `ls -d $_AX_BOOST_BASE_boost_path/include/boost-* 2>/dev/null`; do |
||||
_version_tmp=`echo $i | sed "s#$_AX_BOOST_BASE_boost_path##" | sed 's/\/include\/boost-//' | sed 's/_/./'` |
||||
V_CHECK=`expr $_version_tmp \> $_version` |
||||
if test "x$V_CHECK" = "x1" ; then |
||||
_version=$_version_tmp |
||||
fi |
||||
VERSION_UNDERSCORE=`echo $_version | sed 's/\./_/'` |
||||
BOOST_CPPFLAGS="-I$_AX_BOOST_BASE_boost_path/include/boost-$VERSION_UNDERSCORE" |
||||
done |
||||
dnl if nothing found search for layout used in Windows distributions |
||||
if test -z "$BOOST_CPPFLAGS"; then |
||||
if test -d "$_AX_BOOST_BASE_boost_path/boost" && test -r "$_AX_BOOST_BASE_boost_path/boost"; then |
||||
BOOST_CPPFLAGS="-I$_AX_BOOST_BASE_boost_path" |
||||
fi |
||||
fi |
||||
dnl if we found something and BOOST_LDFLAGS was unset before |
||||
dnl (because "$_AX_BOOST_BASE_boost_lib_path" = ""), set it here. |
||||
if test -n "$BOOST_CPPFLAGS" && test -z "$BOOST_LDFLAGS"; then |
||||
for libsubdir in $libsubdirs ; do |
||||
if ls "$_AX_BOOST_BASE_boost_path/$libsubdir/libboost_"* >/dev/null 2>&1 ; then break; fi |
||||
done |
||||
BOOST_LDFLAGS="-L$_AX_BOOST_BASE_boost_path/$libsubdir" |
||||
fi |
||||
fi |
||||
else |
||||
if test "x$cross_compiling" != "xyes" ; then |
||||
for _AX_BOOST_BASE_boost_path in /usr /usr/local /opt /opt/local ; do |
||||
if test -d "$_AX_BOOST_BASE_boost_path" && test -r "$_AX_BOOST_BASE_boost_path" ; then |
||||
for i in `ls -d $_AX_BOOST_BASE_boost_path/include/boost-* 2>/dev/null`; do |
||||
_version_tmp=`echo $i | sed "s#$_AX_BOOST_BASE_boost_path##" | sed 's/\/include\/boost-//' | sed 's/_/./'` |
||||
V_CHECK=`expr $_version_tmp \> $_version` |
||||
if test "x$V_CHECK" = "x1" ; then |
||||
_version=$_version_tmp |
||||
best_path=$_AX_BOOST_BASE_boost_path |
||||
fi |
||||
done |
||||
fi |
||||
done |
||||
|
||||
VERSION_UNDERSCORE=`echo $_version | sed 's/\./_/'` |
||||
BOOST_CPPFLAGS="-I$best_path/include/boost-$VERSION_UNDERSCORE" |
||||
if test -z "$_AX_BOOST_BASE_boost_lib_path" ; then |
||||
for libsubdir in $libsubdirs ; do |
||||
if ls "$best_path/$libsubdir/libboost_"* >/dev/null 2>&1 ; then break; fi |
||||
done |
||||
BOOST_LDFLAGS="-L$best_path/$libsubdir" |
||||
fi |
||||
fi |
||||
|
||||
if test -n "$BOOST_ROOT" ; then |
||||
for libsubdir in $libsubdirs ; do |
||||
if ls "$BOOST_ROOT/stage/$libsubdir/libboost_"* >/dev/null 2>&1 ; then break; fi |
||||
done |
||||
if test -d "$BOOST_ROOT" && test -r "$BOOST_ROOT" && test -d "$BOOST_ROOT/stage/$libsubdir" && test -r "$BOOST_ROOT/stage/$libsubdir"; then |
||||
version_dir=`expr //$BOOST_ROOT : '.*/\(.*\)'` |
||||
stage_version=`echo $version_dir | sed 's/boost_//' | sed 's/_/./g'` |
||||
stage_version_shorten=`expr $stage_version : '\([[0-9]]*\.[[0-9]]*\)'` |
||||
V_CHECK=`expr $stage_version_shorten \>\= $_version` |
||||
if test "x$V_CHECK" = "x1" && test -z "$_AX_BOOST_BASE_boost_lib_path" ; then |
||||
AC_MSG_NOTICE(We will use a staged boost library from $BOOST_ROOT) |
||||
BOOST_CPPFLAGS="-I$BOOST_ROOT" |
||||
BOOST_LDFLAGS="-L$BOOST_ROOT/stage/$libsubdir" |
||||
fi |
||||
fi |
||||
fi |
||||
fi |
||||
|
||||
CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" |
||||
export CPPFLAGS |
||||
LDFLAGS="$LDFLAGS $BOOST_LDFLAGS" |
||||
export LDFLAGS |
||||
|
||||
AC_LANG_PUSH(C++) |
||||
AC_COMPILE_IFELSE([_AX_BOOST_BASE_PROGRAM($WANT_BOOST_VERSION)],[ |
||||
AC_MSG_RESULT(yes) |
||||
succeeded=yes |
||||
found_system=yes |
||||
],[ |
||||
]) |
||||
AC_LANG_POP([C++]) |
||||
fi |
||||
|
||||
if test "x$succeeded" != "xyes" ; then |
||||
if test "x$_version" = "x0" ; then |
||||
AC_MSG_NOTICE([[We could not detect the boost libraries (version $1 or higher). If you have a staged boost library (still not installed) please specify \$BOOST_ROOT in your environment and do not give a PATH to --with-boost option. If you are sure you have boost installed, then check your version number looking in <boost/version.hpp>. See http://randspringer.de/boost for more documentation.]]) |
||||
else |
||||
AC_MSG_NOTICE([Your boost libraries seems to old (version $_version).]) |
||||
fi |
||||
# execute ACTION-IF-NOT-FOUND (if present): |
||||
ifelse([$3], , :, [$3]) |
||||
else |
||||
AC_DEFINE(HAVE_BOOST,,[define if the Boost library is available]) |
||||
# execute ACTION-IF-FOUND (if present): |
||||
ifelse([$2], , :, [$2]) |
||||
fi |
||||
|
||||
CPPFLAGS="$CPPFLAGS_SAVED" |
||||
LDFLAGS="$LDFLAGS_SAVED" |
||||
|
||||
]) |
@ -1,49 +0,0 @@
@@ -1,49 +0,0 @@
|
||||
# =========================================================================== |
||||
# http://www.gnu.org/software/autoconf-archive/ax_define_dir.html |
||||
# =========================================================================== |
||||
# |
||||
# SYNOPSIS |
||||
# |
||||
# AX_DEFINE_DIR(VARNAME, DIR [, DESCRIPTION]) |
||||
# |
||||
# DESCRIPTION |
||||
# |
||||
# This macro sets VARNAME to the expansion of the DIR variable, taking |
||||
# care of fixing up ${prefix} and such. |
||||
# |
||||
# VARNAME is then offered as both an output variable and a C preprocessor |
||||
# symbol. |
||||
# |
||||
# Example: |
||||
# |
||||
# AX_DEFINE_DIR([DATADIR], [datadir], [Where data are placed to.]) |
||||
# |
||||
# LICENSE |
||||
# |
||||
# Copyright (c) 2008 Stepan Kasal <kasal@ucw.cz> |
||||
# Copyright (c) 2008 Andreas Schwab <schwab@suse.de> |
||||
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de> |
||||
# Copyright (c) 2008 Alexandre Oliva |
||||
# |
||||
# Copying and distribution of this file, with or without modification, are |
||||
# permitted in any medium without royalty provided the copyright notice |
||||
# and this notice are preserved. This file is offered as-is, without any |
||||
# warranty. |
||||
|
||||
#serial 6 |
||||
|
||||
AU_ALIAS([AC_DEFINE_DIR], [AX_DEFINE_DIR]) |
||||
AC_DEFUN([AX_DEFINE_DIR], [ |
||||
prefix_NONE= |
||||
exec_prefix_NONE= |
||||
test "x$prefix" = xNONE && prefix_NONE=yes && prefix=$ac_default_prefix |
||||
test "x$exec_prefix" = xNONE && exec_prefix_NONE=yes && exec_prefix=$prefix |
||||
dnl In Autoconf 2.60, ${datadir} refers to ${datarootdir}, which in turn |
||||
dnl refers to ${prefix}. Thus we have to use `eval' twice. |
||||
eval ax_define_dir="\"[$]$2\"" |
||||
eval ax_define_dir="\"$ax_define_dir\"" |
||||
AC_SUBST($1, "$ax_define_dir") |
||||
AC_DEFINE_UNQUOTED($1, "$ax_define_dir", [$3]) |
||||
test "$prefix_NONE" && prefix=NONE |
||||
test "$exec_prefix_NONE" && exec_prefix=NONE |
||||
]) |
@ -1,275 +0,0 @@
@@ -1,275 +0,0 @@
|
||||
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- |
||||
# serial 12 (pkg-config-0.29.2) |
||||
|
||||
dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>. |
||||
dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com> |
||||
dnl |
||||
dnl This program is free software; you can redistribute it and/or modify |
||||
dnl it under the terms of the GNU General Public License as published by |
||||
dnl the Free Software Foundation; either version 2 of the License, or |
||||
dnl (at your option) any later version. |
||||
dnl |
||||
dnl This program is distributed in the hope that it will be useful, but |
||||
dnl WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
||||
dnl General Public License for more details. |
||||
dnl |
||||
dnl You should have received a copy of the GNU General Public License |
||||
dnl along with this program; if not, write to the Free Software |
||||
dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA |
||||
dnl 02111-1307, USA. |
||||
dnl |
||||
dnl As a special exception to the GNU General Public License, if you |
||||
dnl distribute this file as part of a program that contains a |
||||
dnl configuration script generated by Autoconf, you may include it under |
||||
dnl the same distribution terms that you use for the rest of that |
||||
dnl program. |
||||
|
||||
dnl PKG_PREREQ(MIN-VERSION) |
||||
dnl ----------------------- |
||||
dnl Since: 0.29 |
||||
dnl |
||||
dnl Verify that the version of the pkg-config macros are at least |
||||
dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's |
||||
dnl installed version of pkg-config, this checks the developer's version |
||||
dnl of pkg.m4 when generating configure. |
||||
dnl |
||||
dnl To ensure that this macro is defined, also add: |
||||
dnl m4_ifndef([PKG_PREREQ], |
||||
dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) |
||||
dnl |
||||
dnl See the "Since" comment for each macro you use to see what version |
||||
dnl of the macros you require. |
||||
m4_defun([PKG_PREREQ], |
||||
[m4_define([PKG_MACROS_VERSION], [0.29.2]) |
||||
m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, |
||||
[m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) |
||||
])dnl PKG_PREREQ |
||||
|
||||
dnl PKG_PROG_PKG_CONFIG([MIN-VERSION]) |
||||
dnl ---------------------------------- |
||||
dnl Since: 0.16 |
||||
dnl |
||||
dnl Search for the pkg-config tool and set the PKG_CONFIG variable to |
||||
dnl first found in the path. Checks that the version of pkg-config found |
||||
dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is |
||||
dnl used since that's the first version where most current features of |
||||
dnl pkg-config existed. |
||||
AC_DEFUN([PKG_PROG_PKG_CONFIG], |
||||
[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) |
||||
m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) |
||||
m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) |
||||
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) |
||||
AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) |
||||
AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) |
||||
|
||||
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then |
||||
AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) |
||||
fi |
||||
if test -n "$PKG_CONFIG"; then |
||||
_pkg_min_version=m4_default([$1], [0.9.0]) |
||||
AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) |
||||
if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then |
||||
AC_MSG_RESULT([yes]) |
||||
else |
||||
AC_MSG_RESULT([no]) |
||||
PKG_CONFIG="" |
||||
fi |
||||
fi[]dnl |
||||
])dnl PKG_PROG_PKG_CONFIG |
||||
|
||||
dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) |
||||
dnl ------------------------------------------------------------------- |
||||
dnl Since: 0.18 |
||||
dnl |
||||
dnl Check to see whether a particular set of modules exists. Similar to |
||||
dnl PKG_CHECK_MODULES(), but does not set variables or print errors. |
||||
dnl |
||||
dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) |
||||
dnl only at the first occurence in configure.ac, so if the first place |
||||
dnl it's called might be skipped (such as if it is within an "if", you |
||||
dnl have to call PKG_CHECK_EXISTS manually |
||||
AC_DEFUN([PKG_CHECK_EXISTS], |
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl |
||||
if test -n "$PKG_CONFIG" && \ |
||||
AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then |
||||
m4_default([$2], [:]) |
||||
m4_ifvaln([$3], [else |
||||
$3])dnl |
||||
fi]) |
||||
|
||||
dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) |
||||
dnl --------------------------------------------- |
||||
dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting |
||||
dnl pkg_failed based on the result. |
||||
m4_define([_PKG_CONFIG], |
||||
[if test -n "$$1"; then |
||||
pkg_cv_[]$1="$$1" |
||||
elif test -n "$PKG_CONFIG"; then |
||||
PKG_CHECK_EXISTS([$3], |
||||
[pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` |
||||
test "x$?" != "x0" && pkg_failed=yes ], |
||||
[pkg_failed=yes]) |
||||
else |
||||
pkg_failed=untried |
||||
fi[]dnl |
||||
])dnl _PKG_CONFIG |
||||
|
||||
dnl _PKG_SHORT_ERRORS_SUPPORTED |
||||
dnl --------------------------- |
||||
dnl Internal check to see if pkg-config supports short errors. |
||||
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], |
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) |
||||
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
||||
_pkg_short_errors_supported=yes |
||||
else |
||||
_pkg_short_errors_supported=no |
||||
fi[]dnl |
||||
])dnl _PKG_SHORT_ERRORS_SUPPORTED |
||||
|
||||
|
||||
dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], |
||||
dnl [ACTION-IF-NOT-FOUND]) |
||||
dnl -------------------------------------------------------------- |
||||
dnl Since: 0.4.0 |
||||
dnl |
||||
dnl Note that if there is a possibility the first call to |
||||
dnl PKG_CHECK_MODULES might not happen, you should be sure to include an |
||||
dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac |
||||
AC_DEFUN([PKG_CHECK_MODULES], |
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl |
||||
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl |
||||
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl |
||||
|
||||
pkg_failed=no |
||||
AC_MSG_CHECKING([for $2]) |
||||
|
||||
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) |
||||
_PKG_CONFIG([$1][_LIBS], [libs], [$2]) |
||||
|
||||
m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS |
||||
and $1[]_LIBS to avoid the need to call pkg-config. |
||||
See the pkg-config man page for more details.]) |
||||
|
||||
if test $pkg_failed = yes; then |
||||
AC_MSG_RESULT([no]) |
||||
_PKG_SHORT_ERRORS_SUPPORTED |
||||
if test $_pkg_short_errors_supported = yes; then |
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` |
||||
else |
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` |
||||
fi |
||||
# Put the nasty error message in config.log where it belongs |
||||
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD |
||||
|
||||
m4_default([$4], [AC_MSG_ERROR( |
||||
[Package requirements ($2) were not met: |
||||
|
||||
$$1_PKG_ERRORS |
||||
|
||||
Consider adjusting the PKG_CONFIG_PATH environment variable if you |
||||
installed software in a non-standard prefix. |
||||
|
||||
_PKG_TEXT])[]dnl |
||||
]) |
||||
elif test $pkg_failed = untried; then |
||||
AC_MSG_RESULT([no]) |
||||
m4_default([$4], [AC_MSG_FAILURE( |
||||
[The pkg-config script could not be found or is too old. Make sure it |
||||
is in your PATH or set the PKG_CONFIG environment variable to the full |
||||
path to pkg-config. |
||||
|
||||
_PKG_TEXT |
||||
|
||||
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl |
||||
]) |
||||
else |
||||
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS |
||||
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS |
||||
AC_MSG_RESULT([yes]) |
||||
$3 |
||||
fi[]dnl |
||||
])dnl PKG_CHECK_MODULES |
||||
|
||||
|
||||
dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], |
||||
dnl [ACTION-IF-NOT-FOUND]) |
||||
dnl --------------------------------------------------------------------- |
||||
dnl Since: 0.29 |
||||
dnl |
||||
dnl Checks for existence of MODULES and gathers its build flags with |
||||
dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags |
||||
dnl and VARIABLE-PREFIX_LIBS from --libs. |
||||
dnl |
||||
dnl Note that if there is a possibility the first call to |
||||
dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to |
||||
dnl include an explicit call to PKG_PROG_PKG_CONFIG in your |
||||
dnl configure.ac. |
||||
AC_DEFUN([PKG_CHECK_MODULES_STATIC], |
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl |
||||
_save_PKG_CONFIG=$PKG_CONFIG |
||||
PKG_CONFIG="$PKG_CONFIG --static" |
||||
PKG_CHECK_MODULES($@) |
||||
PKG_CONFIG=$_save_PKG_CONFIG[]dnl |
||||
])dnl PKG_CHECK_MODULES_STATIC |
||||
|
||||
|
||||
dnl PKG_INSTALLDIR([DIRECTORY]) |
||||
dnl ------------------------- |
||||
dnl Since: 0.27 |
||||
dnl |
||||
dnl Substitutes the variable pkgconfigdir as the location where a module |
||||
dnl should install pkg-config .pc files. By default the directory is |
||||
dnl $libdir/pkgconfig, but the default can be changed by passing |
||||
dnl DIRECTORY. The user can override through the --with-pkgconfigdir |
||||
dnl parameter. |
||||
AC_DEFUN([PKG_INSTALLDIR], |
||||
[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) |
||||
m4_pushdef([pkg_description], |
||||
[pkg-config installation directory @<:@]pkg_default[@:>@]) |
||||
AC_ARG_WITH([pkgconfigdir], |
||||
[AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, |
||||
[with_pkgconfigdir=]pkg_default) |
||||
AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) |
||||
m4_popdef([pkg_default]) |
||||
m4_popdef([pkg_description]) |
||||
])dnl PKG_INSTALLDIR |
||||
|
||||
|
||||
dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) |
||||
dnl -------------------------------- |
||||
dnl Since: 0.27 |
||||
dnl |
||||
dnl Substitutes the variable noarch_pkgconfigdir as the location where a |
||||
dnl module should install arch-independent pkg-config .pc files. By |
||||
dnl default the directory is $datadir/pkgconfig, but the default can be |
||||
dnl changed by passing DIRECTORY. The user can override through the |
||||
dnl --with-noarch-pkgconfigdir parameter. |
||||
AC_DEFUN([PKG_NOARCH_INSTALLDIR], |
||||
[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) |
||||
m4_pushdef([pkg_description], |
||||
[pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) |
||||
AC_ARG_WITH([noarch-pkgconfigdir], |
||||
[AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, |
||||
[with_noarch_pkgconfigdir=]pkg_default) |
||||
AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) |
||||
m4_popdef([pkg_default]) |
||||
m4_popdef([pkg_description]) |
||||
])dnl PKG_NOARCH_INSTALLDIR |
||||
|
||||
|
||||
dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, |
||||
dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) |
||||
dnl ------------------------------------------- |
||||
dnl Since: 0.28 |
||||
dnl |
||||
dnl Retrieves the value of the pkg-config variable for the given module. |
||||
AC_DEFUN([PKG_CHECK_VAR], |
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl |
||||
AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl |
||||
|
||||
_PKG_CONFIG([$1], [variable="][$3]["], [$2]) |
||||
AS_VAR_COPY([$1], [pkg_cv_][$1]) |
||||
|
||||
AS_VAR_IF([$1], [""], [$5], [$4])dnl |
||||
])dnl PKG_CHECK_VAR |
@ -1,51 +0,0 @@
@@ -1,51 +0,0 @@
|
||||
# Checking for pkg-config. If found, check for QtCore and query pkg-config |
||||
# for its exec-prefix variable. |
||||
|
||||
# FIND_QT5() |
||||
# Sets the QT_QMAKE variable to the path of Qt5 qmake if found. |
||||
# -------------------------------------- |
||||
AC_DEFUN([FIND_QT5], |
||||
[PKG_CHECK_EXISTS([Qt5Core >= 5.15.2], |
||||
[PKG_CHECK_VAR(QT_QMAKE, |
||||
[Qt5Core >= 5.15.2], |
||||
[host_bins]) |
||||
]) |
||||
|
||||
AS_IF([test -f "$QT_QMAKE/qmake"], |
||||
[QT_QMAKE="$QT_QMAKE/qmake"], |
||||
[AS_IF([test -f "$QT_QMAKE/qmake-qt5"], |
||||
[QT_QMAKE="$QT_QMAKE/qmake-qt5"], |
||||
[QT_QMAKE=""]) |
||||
]) |
||||
|
||||
AC_MSG_CHECKING([for Qt5 qmake >= 5.15.2]) |
||||
AS_IF([test "x$QT_QMAKE" != "x"], |
||||
[AC_MSG_RESULT([$QT_QMAKE])], |
||||
[AC_MSG_RESULT([not found])] |
||||
) |
||||
]) |
||||
|
||||
# FIND_QTDBUS() |
||||
# Sets the HAVE_QTDBUS variable to true or false. |
||||
# -------------------------------------- |
||||
AC_DEFUN([FIND_QTDBUS], |
||||
[AC_MSG_CHECKING([for Qt5DBus >= 5.15.2]) |
||||
PKG_CHECK_EXISTS([Qt5DBus >= 5.15.2], |
||||
[AC_MSG_RESULT([found]) |
||||
HAVE_QTDBUS=[true]], |
||||
[AC_MSG_RESULT([not found]) |
||||
HAVE_QTDBUS=[false]]) |
||||
]) |
||||
|
||||
# DETECT_CPP17_PROGRAM() |
||||
# Detects if at least C++17 mode is enabled. |
||||
# -------------------------------------- |
||||
AC_DEFUN([DETECT_CPP17_PROGRAM], |
||||
[AC_LANG_PROGRAM([[ |
||||
#ifndef __cplusplus |
||||
#error "This is not a C++ compiler" |
||||
#elif __cplusplus < 201703L |
||||
#error "This is not a C++17 compiler" |
||||
#endif]], |
||||
[[]]) |
||||
]) |
@ -1,50 +0,0 @@
@@ -1,50 +0,0 @@
|
||||
# The first path is used when the source is being build by packagers (pbuilder/sbuild/etc) |
||||
# The second path is used when you manually run the configure script in the root folder (eg when using qt creator) |
||||
exists($$OUT_PWD/../conf.pri) { |
||||
include($$OUT_PWD/../conf.pri) |
||||
} |
||||
else { |
||||
include(conf.pri) |
||||
} |
||||
|
||||
# Custom function |
||||
# Return Qt translations files as list of paths |
||||
# It will return .qm files of qt/qtbase that aren't stub files. |
||||
defineReplace(qbt_get_qt_translations) { |
||||
# The $$[] syntax queries qmake properties |
||||
TMP_TRANSLATIONS = $$files($$[QT_INSTALL_TRANSLATIONS]/qt_??.qm) |
||||
TMP_TRANSLATIONS += $$files($$[QT_INSTALL_TRANSLATIONS]/qt_??_??.qm) |
||||
TMP_TRANSLATIONS += $$files($$[QT_INSTALL_TRANSLATIONS]/qtbase_??.qm) |
||||
TMP_TRANSLATIONS += $$files($$[QT_INSTALL_TRANSLATIONS]/qtbase_??_??.qm) |
||||
|
||||
# Consider files less than 10KB as stub translations |
||||
for (TRANSLATION, TMP_TRANSLATIONS) { |
||||
TRANSLATION_SIZE = $$system("stat -f%z $${TRANSLATION}", true, EXIT_STATUS) |
||||
equals(EXIT_STATUS, 0):!lessThan(TRANSLATION_SIZE, 10240): FINAL_TRANSLATIONS += $${TRANSLATION} |
||||
} |
||||
|
||||
return($$FINAL_TRANSLATIONS) |
||||
} |
||||
|
||||
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.15 |
||||
|
||||
DEFINES += _DARWIN_FEATURE_64_BIT_INODE |
||||
|
||||
LIBS += -framework Carbon -framework IOKit -framework AppKit |
||||
|
||||
DIST_PATH = ../dist/mac |
||||
|
||||
document_icon.path = Contents/Resources |
||||
document_icon.files = $$DIST_PATH/qBitTorrentDocument.icns |
||||
QMAKE_BUNDLE_DATA += document_icon |
||||
|
||||
qt_conf.path = Contents/Resources |
||||
qt_conf.files = $$DIST_PATH/qt.conf |
||||
QMAKE_BUNDLE_DATA += qt_conf |
||||
|
||||
qt_translations.path = Contents/translations |
||||
qt_translations.files = $$qbt_get_qt_translations() |
||||
QMAKE_BUNDLE_DATA += qt_translations |
||||
|
||||
ICON = $$DIST_PATH/qbittorrent_mac.icns |
||||
QMAKE_INFO_PLIST = $$DIST_PATH/Info.plist |
@ -1,9 +0,0 @@
@@ -1,9 +0,0 @@
|
||||
TEMPLATE = subdirs |
||||
|
||||
SUBDIRS += src |
||||
|
||||
include(version.pri) |
||||
|
||||
# For Qt Creator beautifier |
||||
DISTFILES += \ |
||||
uncrustify.cfg |
@ -1,25 +0,0 @@
@@ -1,25 +0,0 @@
|
||||
INCLUDEPATH += $$PWD |
||||
|
||||
HEADERS += \ |
||||
$$PWD/application.h \ |
||||
$$PWD/applicationinstancemanager.h \ |
||||
$$PWD/cmdoptions.h \ |
||||
$$PWD/filelogger.h \ |
||||
$$PWD/qtlocalpeer/qtlocalpeer.h \ |
||||
$$PWD/signalhandler.h \ |
||||
$$PWD/upgrade.h |
||||
|
||||
SOURCES += \ |
||||
$$PWD/application.cpp \ |
||||
$$PWD/applicationinstancemanager.cpp \ |
||||
$$PWD/cmdoptions.cpp \ |
||||
$$PWD/filelogger.cpp \ |
||||
$$PWD/main.cpp \ |
||||
$$PWD/qtlocalpeer/qtlocalpeer.cpp \ |
||||
$$PWD/signalhandler.cpp \ |
||||
$$PWD/upgrade.cpp |
||||
|
||||
stacktrace { |
||||
HEADERS += $$PWD/stacktrace.h |
||||
SOURCES += $$PWD/stacktrace.cpp |
||||
} |
@ -1,190 +0,0 @@
@@ -1,190 +0,0 @@
|
||||
HEADERS += \ |
||||
$$PWD/3rdparty/expected.hpp \ |
||||
$$PWD/algorithm.h \ |
||||
$$PWD/applicationcomponent.h \ |
||||
$$PWD/asyncfilestorage.h \ |
||||
$$PWD/bittorrent/abstractfilestorage.h \ |
||||
$$PWD/bittorrent/addtorrentparams.h \ |
||||
$$PWD/bittorrent/bandwidthscheduler.h \ |
||||
$$PWD/bittorrent/bencoderesumedatastorage.h \ |
||||
$$PWD/bittorrent/cachestatus.h \ |
||||
$$PWD/bittorrent/categoryoptions.h \ |
||||
$$PWD/bittorrent/common.h \ |
||||
$$PWD/bittorrent/customstorage.h \ |
||||
$$PWD/bittorrent/downloadpriority.h \ |
||||
$$PWD/bittorrent/dbresumedatastorage.h \ |
||||
$$PWD/bittorrent/extensiondata.h \ |
||||
$$PWD/bittorrent/filesearcher.h \ |
||||
$$PWD/bittorrent/filterparserthread.h \ |
||||
$$PWD/bittorrent/infohash.h \ |
||||
$$PWD/bittorrent/loadtorrentparams.h \ |
||||
$$PWD/bittorrent/ltqbitarray.h \ |
||||
$$PWD/bittorrent/ltqhash.h \ |
||||
$$PWD/bittorrent/lttypecast.h \ |
||||
$$PWD/bittorrent/magneturi.h \ |
||||
$$PWD/bittorrent/nativesessionextension.h \ |
||||
$$PWD/bittorrent/nativetorrentextension.h \ |
||||
$$PWD/bittorrent/peeraddress.h \ |
||||
$$PWD/bittorrent/peerinfo.h \ |
||||
$$PWD/bittorrent/portforwarderimpl.h \ |
||||
$$PWD/bittorrent/resumedatastorage.h \ |
||||
$$PWD/bittorrent/session.h \ |
||||
$$PWD/bittorrent/sessionimpl.h \ |
||||
$$PWD/bittorrent/sessionstatus.h \ |
||||
$$PWD/bittorrent/speedmonitor.h \ |
||||
$$PWD/bittorrent/torrent.h \ |
||||
$$PWD/bittorrent/torrentcontentlayout.h \ |
||||
$$PWD/bittorrent/torrentcontenthandler.h \ |
||||
$$PWD/bittorrent/torrentcreatorthread.h \ |
||||
$$PWD/bittorrent/torrentimpl.h \ |
||||
$$PWD/bittorrent/torrentinfo.h \ |
||||
$$PWD/bittorrent/tracker.h \ |
||||
$$PWD/bittorrent/trackerentry.h \ |
||||
$$PWD/digest32.h \ |
||||
$$PWD/exceptions.h \ |
||||
$$PWD/global.h \ |
||||
$$PWD/http/connection.h \ |
||||
$$PWD/http/httperror.h \ |
||||
$$PWD/http/irequesthandler.h \ |
||||
$$PWD/http/requestparser.h \ |
||||
$$PWD/http/responsebuilder.h \ |
||||
$$PWD/http/responsegenerator.h \ |
||||
$$PWD/http/server.h \ |
||||
$$PWD/http/types.h \ |
||||
$$PWD/iconprovider.h \ |
||||
$$PWD/indexrange.h \ |
||||
$$PWD/interfaces/iapplication.h \ |
||||
$$PWD/interfaces/istringable.h \ |
||||
$$PWD/logger.h \ |
||||
$$PWD/net/dnsupdater.h \ |
||||
$$PWD/net/downloadhandlerimpl.h \ |
||||
$$PWD/net/downloadmanager.h \ |
||||
$$PWD/net/geoipdatabase.h \ |
||||
$$PWD/net/geoipmanager.h \ |
||||
$$PWD/net/portforwarder.h \ |
||||
$$PWD/net/proxyconfigurationmanager.h \ |
||||
$$PWD/net/reverseresolution.h \ |
||||
$$PWD/net/smtp.h \ |
||||
$$PWD/orderedset.h \ |
||||
$$PWD/path.h \ |
||||
$$PWD/pathfwd.h \ |
||||
$$PWD/preferences.h \ |
||||
$$PWD/profile.h \ |
||||
$$PWD/profile_p.h \ |
||||
$$PWD/rss/feed_serializer.h \ |
||||
$$PWD/rss/rss_article.h \ |
||||
$$PWD/rss/rss_autodownloader.h \ |
||||
$$PWD/rss/rss_autodownloadrule.h \ |
||||
$$PWD/rss/rss_feed.h \ |
||||
$$PWD/rss/rss_folder.h \ |
||||
$$PWD/rss/rss_item.h \ |
||||
$$PWD/rss/rss_parser.h \ |
||||
$$PWD/rss/rss_session.h \ |
||||
$$PWD/search/searchdownloadhandler.h \ |
||||
$$PWD/search/searchhandler.h \ |
||||
$$PWD/search/searchpluginmanager.h \ |
||||
$$PWD/settingsstorage.h \ |
||||
$$PWD/settingvalue.h \ |
||||
$$PWD/tagset.h \ |
||||
$$PWD/torrentfileguard.h \ |
||||
$$PWD/torrentfileswatcher.h \ |
||||
$$PWD/torrentfilter.h \ |
||||
$$PWD/types.h \ |
||||
$$PWD/unicodestrings.h \ |
||||
$$PWD/utils/bytearray.h \ |
||||
$$PWD/utils/compare.h \ |
||||
$$PWD/utils/foreignapps.h \ |
||||
$$PWD/utils/fs.h \ |
||||
$$PWD/utils/gzip.h \ |
||||
$$PWD/utils/io.h \ |
||||
$$PWD/utils/misc.h \ |
||||
$$PWD/utils/net.h \ |
||||
$$PWD/utils/password.h \ |
||||
$$PWD/utils/random.h \ |
||||
$$PWD/utils/string.h \ |
||||
$$PWD/utils/thread.h \ |
||||
$$PWD/utils/version.h \ |
||||
$$PWD/version.h |
||||
|
||||
SOURCES += \ |
||||
$$PWD/applicationcomponent.cpp \ |
||||
$$PWD/asyncfilestorage.cpp \ |
||||
$$PWD/bittorrent/abstractfilestorage.cpp \ |
||||
$$PWD/bittorrent/addtorrentparams.cpp \ |
||||
$$PWD/bittorrent/bandwidthscheduler.cpp \ |
||||
$$PWD/bittorrent/bencoderesumedatastorage.cpp \ |
||||
$$PWD/bittorrent/categoryoptions.cpp \ |
||||
$$PWD/bittorrent/customstorage.cpp \ |
||||
$$PWD/bittorrent/dbresumedatastorage.cpp \ |
||||
$$PWD/bittorrent/downloadpriority.cpp \ |
||||
$$PWD/bittorrent/filesearcher.cpp \ |
||||
$$PWD/bittorrent/filterparserthread.cpp \ |
||||
$$PWD/bittorrent/infohash.cpp \ |
||||
$$PWD/bittorrent/ltqbitarray.cpp \ |
||||
$$PWD/bittorrent/magneturi.cpp \ |
||||
$$PWD/bittorrent/nativesessionextension.cpp \ |
||||
$$PWD/bittorrent/nativetorrentextension.cpp \ |
||||
$$PWD/bittorrent/peeraddress.cpp \ |
||||
$$PWD/bittorrent/peerinfo.cpp \ |
||||
$$PWD/bittorrent/portforwarderimpl.cpp \ |
||||
$$PWD/bittorrent/resumedatastorage.cpp \ |
||||
$$PWD/bittorrent/sessionimpl.cpp \ |
||||
$$PWD/bittorrent/speedmonitor.cpp \ |
||||
$$PWD/bittorrent/torrent.cpp \ |
||||
$$PWD/bittorrent/torrentcontenthandler.h \ |
||||
$$PWD/bittorrent/torrentcreatorthread.cpp \ |
||||
$$PWD/bittorrent/torrentimpl.cpp \ |
||||
$$PWD/bittorrent/torrentinfo.cpp \ |
||||
$$PWD/bittorrent/tracker.cpp \ |
||||
$$PWD/bittorrent/trackerentry.cpp \ |
||||
$$PWD/exceptions.cpp \ |
||||
$$PWD/http/connection.cpp \ |
||||
$$PWD/http/httperror.cpp \ |
||||
$$PWD/http/requestparser.cpp \ |
||||
$$PWD/http/responsebuilder.cpp \ |
||||
$$PWD/http/responsegenerator.cpp \ |
||||
$$PWD/http/server.cpp \ |
||||
$$PWD/iconprovider.cpp \ |
||||
$$PWD/logger.cpp \ |
||||
$$PWD/net/dnsupdater.cpp \ |
||||
$$PWD/net/downloadhandlerimpl.cpp \ |
||||
$$PWD/net/downloadmanager.cpp \ |
||||
$$PWD/net/geoipdatabase.cpp \ |
||||
$$PWD/net/geoipmanager.cpp \ |
||||
$$PWD/net/portforwarder.cpp \ |
||||
$$PWD/net/proxyconfigurationmanager.cpp \ |
||||
$$PWD/net/reverseresolution.cpp \ |
||||
$$PWD/net/smtp.cpp \ |
||||
$$PWD/path.cpp \ |
||||
$$PWD/preferences.cpp \ |
||||
$$PWD/profile.cpp \ |
||||
$$PWD/profile_p.cpp \ |
||||
$$PWD/rss/feed_serializer.cpp \ |
||||
$$PWD/rss/rss_article.cpp \ |
||||
$$PWD/rss/rss_autodownloader.cpp \ |
||||
$$PWD/rss/rss_autodownloadrule.cpp \ |
||||
$$PWD/rss/rss_feed.cpp \ |
||||
$$PWD/rss/rss_folder.cpp \ |
||||
$$PWD/rss/rss_item.cpp \ |
||||
$$PWD/rss/rss_parser.cpp \ |
||||
$$PWD/rss/rss_session.cpp \ |
||||
$$PWD/search/searchdownloadhandler.cpp \ |
||||
$$PWD/search/searchhandler.cpp \ |
||||
$$PWD/search/searchpluginmanager.cpp \ |
||||
$$PWD/settingsstorage.cpp \ |
||||
$$PWD/tagset.cpp \ |
||||
$$PWD/torrentfileguard.cpp \ |
||||
$$PWD/torrentfileswatcher.cpp \ |
||||
$$PWD/torrentfilter.cpp \ |
||||
$$PWD/utils/bytearray.cpp \ |
||||
$$PWD/utils/compare.cpp \ |
||||
$$PWD/utils/foreignapps.cpp \ |
||||
$$PWD/utils/fs.cpp \ |
||||
$$PWD/utils/gzip.cpp \ |
||||
$$PWD/utils/io.cpp \ |
||||
$$PWD/utils/misc.cpp \ |
||||
$$PWD/utils/net.cpp \ |
||||
$$PWD/utils/password.cpp \ |
||||
$$PWD/utils/random.cpp \ |
||||
$$PWD/utils/string.cpp \ |
||||
$$PWD/utils/thread.cpp |
@ -1,251 +0,0 @@
@@ -1,251 +0,0 @@
|
||||
INCLUDEPATH += $$PWD |
||||
|
||||
HEADERS += \ |
||||
$$PWD/aboutdialog.h \ |
||||
$$PWD/addnewtorrentdialog.h \ |
||||
$$PWD/addtorrentparamswidget.h \ |
||||
$$PWD/advancedsettings.h \ |
||||
$$PWD/autoexpandabledialog.h \ |
||||
$$PWD/banlistoptionsdialog.h \ |
||||
$$PWD/color.h \ |
||||
$$PWD/cookiesdialog.h \ |
||||
$$PWD/cookiesmodel.h \ |
||||
$$PWD/deletionconfirmationdialog.h \ |
||||
$$PWD/desktopintegration.h \ |
||||
$$PWD/downloadfromurldialog.h \ |
||||
$$PWD/executionlogwidget.h \ |
||||
$$PWD/flowlayout.h \ |
||||
$$PWD/fspathedit.h \ |
||||
$$PWD/fspathedit_p.h \ |
||||
$$PWD/guiapplicationcomponent.h \ |
||||
$$PWD/hidabletabwidget.h \ |
||||
$$PWD/interfaces/iguiapplication.h \ |
||||
$$PWD/ipsubnetwhitelistoptionsdialog.h \ |
||||
$$PWD/lineedit.h \ |
||||
$$PWD/log/logfiltermodel.h \ |
||||
$$PWD/log/loglistview.h \ |
||||
$$PWD/log/logmodel.h \ |
||||
$$PWD/mainwindow.h \ |
||||
$$PWD/optionsdialog.h \ |
||||
$$PWD/powermanagement/powermanagement.h \ |
||||
$$PWD/previewlistdelegate.h \ |
||||
$$PWD/previewselectdialog.h \ |
||||
$$PWD/progressbarpainter.h \ |
||||
$$PWD/properties/downloadedpiecesbar.h \ |
||||
$$PWD/properties/peerlistsortmodel.h \ |
||||
$$PWD/properties/peerlistwidget.h \ |
||||
$$PWD/properties/peersadditiondialog.h \ |
||||
$$PWD/properties/pieceavailabilitybar.h \ |
||||
$$PWD/properties/piecesbar.h \ |
||||
$$PWD/properties/propertieswidget.h \ |
||||
$$PWD/properties/proptabbar.h \ |
||||
$$PWD/properties/speedplotview.h \ |
||||
$$PWD/properties/speedwidget.h \ |
||||
$$PWD/properties/trackerlistwidget.h \ |
||||
$$PWD/properties/trackersadditiondialog.h \ |
||||
$$PWD/raisedmessagebox.h \ |
||||
$$PWD/rss/articlelistwidget.h \ |
||||
$$PWD/rss/automatedrssdownloader.h \ |
||||
$$PWD/rss/feedlistwidget.h \ |
||||
$$PWD/rss/htmlbrowser.h \ |
||||
$$PWD/rss/rsswidget.h \ |
||||
$$PWD/search/pluginselectdialog.h \ |
||||
$$PWD/search/pluginsourcedialog.h \ |
||||
$$PWD/search/searchjobwidget.h \ |
||||
$$PWD/search/searchsortmodel.h \ |
||||
$$PWD/search/searchwidget.h \ |
||||
$$PWD/shutdownconfirmdialog.h \ |
||||
$$PWD/speedlimitdialog.h \ |
||||
$$PWD/statsdialog.h \ |
||||
$$PWD/statusbar.h \ |
||||
$$PWD/torrentcategorydialog.h \ |
||||
$$PWD/torrentcontentfiltermodel.h \ |
||||
$$PWD/torrentcontentitemdelegate.h \ |
||||
$$PWD/torrentcontentmodel.h \ |
||||
$$PWD/torrentcontentmodelfile.h \ |
||||
$$PWD/torrentcontentmodelfolder.h \ |
||||
$$PWD/torrentcontentmodelitem.h \ |
||||
$$PWD/torrentcontentwidget.h \ |
||||
$$PWD/torrentcreatordialog.h \ |
||||
$$PWD/torrentoptionsdialog.h \ |
||||
$$PWD/torrenttagsdialog.h \ |
||||
$$PWD/trackerentriesdialog.h \ |
||||
$$PWD/transferlistdelegate.h \ |
||||
$$PWD/transferlistfilters/basefilterwidget.h \ |
||||
$$PWD/transferlistfilters/categoryfiltermodel.h \ |
||||
$$PWD/transferlistfilters/categoryfilterproxymodel.h \ |
||||
$$PWD/transferlistfilters/categoryfilterwidget.h \ |
||||
$$PWD/transferlistfilters/statusfilterwidget.h \ |
||||
$$PWD/transferlistfilters/tagfiltermodel.h \ |
||||
$$PWD/transferlistfilters/tagfilterproxymodel.h \ |
||||
$$PWD/transferlistfilters/tagfilterwidget.h \ |
||||
$$PWD/transferlistfilters/trackersfilterwidget.h \ |
||||
$$PWD/transferlistfilterswidget.h \ |
||||
$$PWD/transferlistmodel.h \ |
||||
$$PWD/transferlistsortmodel.h \ |
||||
$$PWD/transferlistwidget.h \ |
||||
$$PWD/tristateaction.h \ |
||||
$$PWD/tristatewidget.h \ |
||||
$$PWD/uithemecommon.h \ |
||||
$$PWD/uithemedialog.h \ |
||||
$$PWD/uithememanager.h \ |
||||
$$PWD/uithemesource.h \ |
||||
$$PWD/utils.h \ |
||||
$$PWD/watchedfolderoptionsdialog.h \ |
||||
$$PWD/watchedfoldersmodel.h \ |
||||
$$PWD/windowstate.h |
||||
|
||||
SOURCES += \ |
||||
$$PWD/aboutdialog.cpp \ |
||||
$$PWD/addnewtorrentdialog.cpp \ |
||||
$$PWD/addtorrentparamswidget.cpp \ |
||||
$$PWD/advancedsettings.cpp \ |
||||
$$PWD/autoexpandabledialog.cpp \ |
||||
$$PWD/banlistoptionsdialog.cpp \ |
||||
$$PWD/cookiesdialog.cpp \ |
||||
$$PWD/cookiesmodel.cpp \ |
||||
$$PWD/deletionconfirmationdialog.cpp \ |
||||
$$PWD/desktopintegration.cpp \ |
||||
$$PWD/downloadfromurldialog.cpp \ |
||||
$$PWD/executionlogwidget.cpp \ |
||||
$$PWD/flowlayout.cpp \ |
||||
$$PWD/fspathedit.cpp \ |
||||
$$PWD/fspathedit_p.cpp \ |
||||
$$PWD/guiapplicationcomponent.cpp \ |
||||
$$PWD/hidabletabwidget.cpp \ |
||||
$$PWD/ipsubnetwhitelistoptionsdialog.cpp \ |
||||
$$PWD/lineedit.cpp \ |
||||
$$PWD/log/logfiltermodel.cpp \ |
||||
$$PWD/log/loglistview.cpp \ |
||||
$$PWD/log/logmodel.cpp \ |
||||
$$PWD/mainwindow.cpp \ |
||||
$$PWD/optionsdialog.cpp \ |
||||
$$PWD/powermanagement/powermanagement.cpp \ |
||||
$$PWD/previewlistdelegate.cpp \ |
||||
$$PWD/previewselectdialog.cpp \ |
||||
$$PWD/progressbarpainter.cpp \ |
||||
$$PWD/properties/downloadedpiecesbar.cpp \ |
||||
$$PWD/properties/peerlistsortmodel.cpp \ |
||||
$$PWD/properties/peerlistwidget.cpp \ |
||||
$$PWD/properties/peersadditiondialog.cpp \ |
||||
$$PWD/properties/pieceavailabilitybar.cpp \ |
||||
$$PWD/properties/piecesbar.cpp \ |
||||
$$PWD/properties/propertieswidget.cpp \ |
||||
$$PWD/properties/proptabbar.cpp \ |
||||
$$PWD/properties/speedplotview.cpp \ |
||||
$$PWD/properties/speedwidget.cpp \ |
||||
$$PWD/properties/trackerlistwidget.cpp \ |
||||
$$PWD/properties/trackersadditiondialog.cpp \ |
||||
$$PWD/raisedmessagebox.cpp \ |
||||
$$PWD/rss/articlelistwidget.cpp \ |
||||
$$PWD/rss/automatedrssdownloader.cpp \ |
||||
$$PWD/rss/feedlistwidget.cpp \ |
||||
$$PWD/rss/htmlbrowser.cpp \ |
||||
$$PWD/rss/rsswidget.cpp \ |
||||
$$PWD/search/pluginselectdialog.cpp \ |
||||
$$PWD/search/pluginsourcedialog.cpp \ |
||||
$$PWD/search/searchjobwidget.cpp \ |
||||
$$PWD/search/searchsortmodel.cpp \ |
||||
$$PWD/search/searchwidget.cpp \ |
||||
$$PWD/shutdownconfirmdialog.cpp \ |
||||
$$PWD/speedlimitdialog.cpp \ |
||||
$$PWD/statsdialog.cpp \ |
||||
$$PWD/statusbar.cpp \ |
||||
$$PWD/torrentcategorydialog.cpp \ |
||||
$$PWD/torrentcontentfiltermodel.cpp \ |
||||
$$PWD/torrentcontentitemdelegate.cpp \ |
||||
$$PWD/torrentcontentmodel.cpp \ |
||||
$$PWD/torrentcontentmodelfile.cpp \ |
||||
$$PWD/torrentcontentmodelfolder.cpp \ |
||||
$$PWD/torrentcontentmodelitem.cpp \ |
||||
$$PWD/torrentcontentwidget.cpp \ |
||||
$$PWD/torrentcreatordialog.cpp \ |
||||
$$PWD/torrentoptionsdialog.cpp \ |
||||
$$PWD/torrenttagsdialog.cpp \ |
||||
$$PWD/trackerentriesdialog.cpp \ |
||||
$$PWD/transferlistdelegate.cpp \ |
||||
$$PWD/transferlistfilters/basefilterwidget.cpp \ |
||||
$$PWD/transferlistfilters/categoryfiltermodel.cpp \ |
||||
$$PWD/transferlistfilters/categoryfilterproxymodel.cpp \ |
||||
$$PWD/transferlistfilters/categoryfilterwidget.cpp \ |
||||
$$PWD/transferlistfilters/statusfilterwidget.cpp \ |
||||
$$PWD/transferlistfilters/tagfiltermodel.cpp \ |
||||
$$PWD/transferlistfilters/tagfilterproxymodel.cpp \ |
||||
$$PWD/transferlistfilters/tagfilterwidget.cpp \ |
||||
$$PWD/transferlistfilters/trackersfilterwidget.cpp \ |
||||
$$PWD/transferlistfilterswidget.cpp \ |
||||
$$PWD/transferlistmodel.cpp \ |
||||
$$PWD/transferlistsortmodel.cpp \ |
||||
$$PWD/transferlistwidget.cpp \ |
||||
$$PWD/tristateaction.cpp \ |
||||
$$PWD/tristatewidget.cpp \ |
||||
$$PWD/uithemedialog.cpp \ |
||||
$$PWD/uithememanager.cpp \ |
||||
$$PWD/uithemesource.cpp \ |
||||
$$PWD/utils.cpp \ |
||||
$$PWD/watchedfolderoptionsdialog.cpp \ |
||||
$$PWD/watchedfoldersmodel.cpp |
||||
|
||||
FORMS += \ |
||||
$$PWD/aboutdialog.ui \ |
||||
$$PWD/addnewtorrentdialog.ui \ |
||||
$$PWD/addtorrentparamswidget.ui \ |
||||
$$PWD/autoexpandabledialog.ui \ |
||||
$$PWD/banlistoptionsdialog.ui \ |
||||
$$PWD/cookiesdialog.ui \ |
||||
$$PWD/deletionconfirmationdialog.ui \ |
||||
$$PWD/downloadfromurldialog.ui \ |
||||
$$PWD/executionlogwidget.ui \ |
||||
$$PWD/ipsubnetwhitelistoptionsdialog.ui \ |
||||
$$PWD/mainwindow.ui \ |
||||
$$PWD/optionsdialog.ui \ |
||||
$$PWD/previewselectdialog.ui \ |
||||
$$PWD/properties/peersadditiondialog.ui \ |
||||
$$PWD/properties/propertieswidget.ui \ |
||||
$$PWD/properties/trackersadditiondialog.ui \ |
||||
$$PWD/rss/automatedrssdownloader.ui \ |
||||
$$PWD/rss/rsswidget.ui \ |
||||
$$PWD/search/pluginselectdialog.ui \ |
||||
$$PWD/search/pluginsourcedialog.ui \ |
||||
$$PWD/search/searchjobwidget.ui \ |
||||
$$PWD/search/searchwidget.ui \ |
||||
$$PWD/shutdownconfirmdialog.ui \ |
||||
$$PWD/speedlimitdialog.ui \ |
||||
$$PWD/statsdialog.ui \ |
||||
$$PWD/torrentcategorydialog.ui \ |
||||
$$PWD/torrentcreatordialog.ui \ |
||||
$$PWD/torrentoptionsdialog.ui \ |
||||
$$PWD/torrenttagsdialog.ui \ |
||||
$$PWD/trackerentriesdialog.ui \ |
||||
$$PWD/uithemedialog.ui \ |
||||
$$PWD/watchedfolderoptionsdialog.ui |
||||
|
||||
RESOURCES += $$PWD/about.qrc |
||||
|
||||
stacktrace { |
||||
HEADERS += $$PWD/stacktracedialog.h |
||||
SOURCES += $$PWD/stacktracedialog.cpp |
||||
FORMS += $$PWD/stacktracedialog.ui |
||||
} |
||||
|
||||
win32|macx { |
||||
HEADERS += $$PWD/programupdater.h |
||||
SOURCES += $$PWD/programupdater.cpp |
||||
} |
||||
|
||||
unix:!macx:dbus { |
||||
HEADERS += \ |
||||
$$PWD/notifications/dbusnotifier.h \ |
||||
$$PWD/notifications/dbusnotificationsinterface.h \ |
||||
$$PWD/powermanagement/powermanagement_x11.h |
||||
|
||||
SOURCES += \ |
||||
$$PWD/notifications/dbusnotifier.cpp \ |
||||
$$PWD/notifications/dbusnotificationsinterface.cpp \ |
||||
$$PWD/powermanagement/powermanagement_x11.cpp |
||||
} |
||||
|
||||
macx { |
||||
HEADERS += $$PWD/macutilities.h |
||||
OBJECTIVE_SOURCES += $$PWD/macutilities.mm |
||||
} |
@ -1,108 +0,0 @@
@@ -1,108 +0,0 @@
|
||||
# Global |
||||
TEMPLATE = app |
||||
CONFIG += qt thread silent |
||||
|
||||
# Platform specific configuration |
||||
win32: include(../winconf.pri) |
||||
macx: include(../macxconf.pri) |
||||
unix:!macx: include(../unixconf.pri) |
||||
|
||||
QT += network sql xml |
||||
|
||||
macx|*-clang*: QMAKE_CXXFLAGS_WARN_ON += -Wno-range-loop-analysis |
||||
|
||||
nogui { |
||||
TARGET = qbittorrent-nox |
||||
QT -= gui |
||||
DEFINES += DISABLE_GUI |
||||
} else { |
||||
TARGET = qbittorrent |
||||
QT += xml svg widgets |
||||
|
||||
CONFIG(static) { |
||||
DEFINES += QBT_STATIC_QT |
||||
QTPLUGIN += qico |
||||
} |
||||
win32: lessThan(QT_MAJOR_VERSION, 6) { |
||||
QT += winextras |
||||
} |
||||
macx { |
||||
LIBS += -lobjc |
||||
} |
||||
} |
||||
|
||||
nowebui { |
||||
DEFINES += DISABLE_WEBUI |
||||
} |
||||
|
||||
stacktrace { |
||||
DEFINES += STACKTRACE |
||||
|
||||
macx { |
||||
DEFINES += BOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED |
||||
QMAKE_LFLAGS += -rdynamic |
||||
} |
||||
unix { |
||||
LIBS += -ldl |
||||
QMAKE_LFLAGS += -rdynamic |
||||
} |
||||
} |
||||
|
||||
CONFIG(debug, debug|release): message(Project is built in DEBUG mode.) |
||||
CONFIG(release, debug|release): message(Project is built in RELEASE mode.) |
||||
|
||||
# Disable debug output in release mode |
||||
CONFIG(release, debug|release) { |
||||
message(Disabling debug output.) |
||||
DEFINES += QT_NO_DEBUG_OUTPUT |
||||
} |
||||
|
||||
# VERSION DEFINES |
||||
include(../version.pri) |
||||
|
||||
# Qt defines |
||||
DEFINES += \ |
||||
QT_DISABLE_DEPRECATED_BEFORE=0x050f02 \ |
||||
QT_NO_CAST_FROM_ASCII \ |
||||
QT_NO_CAST_TO_ASCII \ |
||||
QT_NO_CAST_FROM_BYTEARRAY \ |
||||
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT \ |
||||
QT_USE_QSTRINGBUILDER \ |
||||
QT_STRICT_ITERATORS |
||||
|
||||
INCLUDEPATH += $$PWD |
||||
|
||||
include(app/app.pri) |
||||
include(base/base.pri) |
||||
!nogui: include(gui/gui.pri) |
||||
!nowebui: include(webui/webui.pri) |
||||
|
||||
isEmpty(QMAKE_LRELEASE) { |
||||
win32: QMAKE_LRELEASE = $$[QT_HOST_BINS]/lrelease.exe |
||||
else: QMAKE_LRELEASE = $$[QT_HOST_BINS]/lrelease |
||||
unix { |
||||
equals(QT_MAJOR_VERSION, 5) { |
||||
!exists($$QMAKE_LRELEASE): QMAKE_LRELEASE = lrelease-qt5 |
||||
} |
||||
} |
||||
else { |
||||
!exists($$QMAKE_LRELEASE): QMAKE_LRELEASE = lrelease |
||||
} |
||||
} |
||||
lrelease.input = TS_SOURCES |
||||
lrelease.output = ${QMAKE_FILE_PATH}/${QMAKE_FILE_BASE}.qm |
||||
lrelease.commands = @echo "lrelease ${QMAKE_FILE_NAME}" && $$QMAKE_LRELEASE -silent ${QMAKE_FILE_NAME} -qm ${QMAKE_FILE_OUT} |
||||
lrelease.CONFIG += no_link target_predeps |
||||
QMAKE_EXTRA_COMPILERS += lrelease |
||||
|
||||
TRANSLATIONS = $$files($$PWD/lang/qbittorrent_*.ts) |
||||
TS_SOURCES += $$TRANSLATIONS |
||||
|
||||
# Resource files |
||||
QMAKE_RESOURCE_FLAGS += -compress 9 -threshold 5 |
||||
RESOURCES += \ |
||||
icons/icons.qrc \ |
||||
lang/lang.qrc \ |
||||
searchengine/searchengine.qrc |
||||
|
||||
DESTDIR = . |
@ -1,36 +0,0 @@
@@ -1,36 +0,0 @@
|
||||
HEADERS += \ |
||||
$$PWD/api/apicontroller.h \ |
||||
$$PWD/api/apierror.h \ |
||||
$$PWD/api/appcontroller.h \ |
||||
$$PWD/api/authcontroller.h \ |
||||
$$PWD/api/freediskspacechecker.h \ |
||||
$$PWD/api/isessionmanager.h \ |
||||
$$PWD/api/logcontroller.h \ |
||||
$$PWD/api/rsscontroller.h \ |
||||
$$PWD/api/searchcontroller.h \ |
||||
$$PWD/api/synccontroller.h \ |
||||
$$PWD/api/torrentscontroller.h \ |
||||
$$PWD/api/transfercontroller.h \ |
||||
$$PWD/api/serialize/serialize_torrent.h \ |
||||
$$PWD/webapplication.h \ |
||||
$$PWD/webui.h |
||||
|
||||
SOURCES += \ |
||||
$$PWD/api/apicontroller.cpp \ |
||||
$$PWD/api/apierror.cpp \ |
||||
$$PWD/api/appcontroller.cpp \ |
||||
$$PWD/api/authcontroller.cpp \ |
||||
$$PWD/api/freediskspacechecker.cpp \ |
||||
$$PWD/api/logcontroller.cpp \ |
||||
$$PWD/api/rsscontroller.cpp \ |
||||
$$PWD/api/searchcontroller.cpp \ |
||||
$$PWD/api/synccontroller.cpp \ |
||||
$$PWD/api/torrentscontroller.cpp \ |
||||
$$PWD/api/transfercontroller.cpp \ |
||||
$$PWD/api/serialize/serialize_torrent.cpp \ |
||||
$$PWD/webapplication.cpp \ |
||||
$$PWD/webui.cpp |
||||
|
||||
TS_SOURCES += $$files($$PWD/www/translations/webui_*.ts) |
||||
|
||||
RESOURCES += $$PWD/www/webui.qrc $$PWD/www/translations/webui_translations.qrc |
@ -1,58 +0,0 @@
@@ -1,58 +0,0 @@
|
||||
# The first path is used when the source is being build by packagers (pbuilder/sbuild/etc) |
||||
# The second path is used when you manually run the configure script in the root folder (eg when using qt creator) |
||||
exists($$OUT_PWD/../conf.pri) { |
||||
include($$OUT_PWD/../conf.pri) |
||||
} |
||||
else { |
||||
include(conf.pri) |
||||
} |
||||
|
||||
# COMPILATION SPECIFIC |
||||
!nogui:dbus: QT += dbus |
||||
|
||||
QMAKE_CXXFLAGS += -Wall -Wextra -Wpedantic -Wformat-security |
||||
|
||||
# Man page |
||||
nogui { |
||||
man.files = ../doc/qbittorrent-nox.1 |
||||
} |
||||
else { |
||||
man.files = ../doc/qbittorrent.1 |
||||
} |
||||
|
||||
man.path = $$MANPREFIX/man1 |
||||
INSTALLS += man |
||||
|
||||
DIST_PATH = ../dist/unix |
||||
|
||||
# Systemd Service file |
||||
nogui:systemd { |
||||
systemdService.files = $$DIST_PATH/systemd/qbittorrent-nox@.service |
||||
systemdService.path = $$PREFIX/lib/systemd/system |
||||
INSTALLS += systemdService |
||||
} |
||||
|
||||
# Menu Icon |
||||
!nogui { |
||||
desktopEntry.files = $$DIST_PATH/org.qbittorrent.qBittorrent.desktop |
||||
desktopEntry.path = $$DATADIR/applications |
||||
INSTALLS += desktopEntry |
||||
|
||||
appdata.files = $$DIST_PATH/org.qbittorrent.qBittorrent.appdata.xml |
||||
appdata.path = $$DATADIR/metainfo |
||||
INSTALLS += appdata |
||||
|
||||
menuicons.files = $$DIST_PATH/menuicons/* |
||||
menuicons.path = $$DATADIR/icons/hicolor |
||||
statusIconScalable.files = $$PWD/src/icons/qbittorrent-tray.svg \ |
||||
$$PWD/src/icons/qbittorrent-tray-dark.svg \ |
||||
$$PWD/src/icons/qbittorrent-tray-light.svg |
||||
statusIconScalable.path = $$DATADIR/icons/hicolor/scalable/status |
||||
INSTALLS += \ |
||||
menuicons \ |
||||
statusIconScalable |
||||
} |
||||
|
||||
# INSTALL |
||||
target.path = $$PREFIX/bin |
||||
INSTALLS += target |
@ -1,3 +0,0 @@
@@ -1,3 +0,0 @@
|
||||
# Generate version header |
||||
versionHeader = $$cat(src/base/version.h.in, blob) |
||||
write_file(src/base/version.h, versionHeader) |
@ -1,79 +0,0 @@
@@ -1,79 +0,0 @@
|
||||
CONFIG += c++17 |
||||
|
||||
# After 1.55 some Windows users reported regular UI freezes. |
||||
# This makes ASIO use the pre-1.56 way of doing things. See issue #2003 |
||||
DEFINES += BOOST_ASIO_DISABLE_CONNECTEX |
||||
DEFINES += BOOST_EXCEPTION_DISABLE |
||||
|
||||
DEFINES += TORRENT_USE_LIBCRYPTO |
||||
DEFINES += TORRENT_USE_OPENSSL |
||||
|
||||
DEFINES += NTDDI_VERSION=0x06010000 |
||||
DEFINES += _WIN32_WINNT=0x0601 |
||||
DEFINES += _WIN32_IE=0x0601 |
||||
DEFINES += UNICODE |
||||
DEFINES += _UNICODE |
||||
DEFINES += WIN32 |
||||
DEFINES += _WIN32 |
||||
DEFINES += WIN32_LEAN_AND_MEAN |
||||
DEFINES += NOMINMAX |
||||
|
||||
CONFIG(debug, debug|release) { |
||||
DEFINES += TORRENT_DEBUG |
||||
} |
||||
else { |
||||
DEFINES += NDEBUG |
||||
} |
||||
|
||||
win32-g++*|win32-clang-g++* { |
||||
CONFIG(debug, debug|release) { |
||||
# Make sure binary is not relocatable, otherwise debugging will fail |
||||
QMAKE_LFLAGS -= -Wl,--dynamicbase |
||||
} |
||||
|
||||
DEFINES += _FILE_OFFSET_BITS=64 |
||||
DEFINES += __USE_W32_SOCKETS |
||||
|
||||
RC_FILE = qbittorrent_mingw.rc |
||||
|
||||
LIBS += libadvapi32 libiphlpapi libole32 libpowrprof libshell32 libuser32 libwsock32 libws2_32 |
||||
} |
||||
else:win32-msvc* { |
||||
CONFIG -= embed_manifest_exe |
||||
|
||||
QMAKE_CXXFLAGS += /utf-8 |
||||
QMAKE_LFLAGS += "/MANIFEST:EMBED /MANIFESTINPUT:$$quote($${PWD}/src/qbittorrent.exe.manifest) /STACK:0x800000" |
||||
|
||||
RC_FILE = qbittorrent.rc |
||||
|
||||
LIBS += advapi32.lib crypt32.lib Iphlpapi.lib ole32.lib PowrProf.lib shell32.lib User32.lib |
||||
} |
||||
|
||||
# See an example build configuration in "conf.pri.windows" |
||||
exists(conf.pri) { |
||||
include(conf.pri) |
||||
} |
||||
else { |
||||
error("'conf.pri' does not exist. See an example configuration in 'conf.pri.windows'.") |
||||
} |
||||
|
||||
# Stack trace support can be enabled in 'conf.pri' |
||||
stacktrace { |
||||
win32-g++*|win32-clang-g++* { |
||||
QMAKE_LFLAGS += -Wl,--export-dynamic |
||||
|
||||
contains(QMAKE_HOST.arch, x86) { |
||||
# i686 arch requires frame pointer preservation |
||||
QMAKE_CXXFLAGS += -fno-omit-frame-pointer |
||||
} |
||||
} |
||||
else:win32-msvc* { |
||||
QMAKE_CXXFLAGS += /Zi |
||||
QMAKE_LFLAGS += "/DEBUG /PDBALTPATH:%_PDB%" |
||||
|
||||
contains(QMAKE_HOST.arch, x86) { |
||||
# i686 arch requires frame pointer preservation |
||||
QMAKE_CXXFLAGS += /Oy- |
||||
} |
||||
} |
||||
} |
Loading…
Reference in new issue