mirror of
https://github.com/transmission/transmission
synced 2025-02-21 13:46:52 +00:00
Remove autotools-based build system (#1465)
* Support .git files (e.g. for worktrees, submodules) * Fix symlinks in source tarball, switch to TXZ, adjust non-release name * Remove autotools stuff
This commit is contained in:
parent
32add75f0e
commit
4c7153fa48
37 changed files with 39 additions and 2892 deletions
5
.gitignore
vendored
5
.gitignore
vendored
|
@ -1,4 +1,3 @@
|
|||
/.depend
|
||||
/REVISION
|
||||
/beta
|
||||
/build
|
||||
|
@ -6,17 +5,13 @@ Transmission.xcodeproj/*.mode*
|
|||
Transmission.xcodeproj/*.pbxuser
|
||||
Transmission.xcodeproj/*.xcworkspace
|
||||
Transmission.xcodeproj/xcuserdata
|
||||
cli/.depend
|
||||
cli/transmissioncli
|
||||
daemon/.depend
|
||||
daemon/transmission-daemon
|
||||
daemon/transmission-proxy
|
||||
daemon/transmission-remote
|
||||
gtk/.depend
|
||||
gtk/defines.h
|
||||
gtk/transmission-gtk
|
||||
libtransmission/*.a
|
||||
libtransmission/.depend
|
||||
libtransmission/version.h
|
||||
macosx/Info.plist
|
||||
macosx/Transmission.app
|
||||
|
|
|
@ -61,7 +61,7 @@ endif()
|
|||
|
||||
set(TR_VCS_REVISION_FILE "${CMAKE_SOURCE_DIR}/REVISION")
|
||||
|
||||
if(IS_DIRECTORY ${CMAKE_SOURCE_DIR}/.git)
|
||||
if(EXISTS ${CMAKE_SOURCE_DIR}/.git)
|
||||
find_package(Git)
|
||||
endif()
|
||||
|
||||
|
@ -659,11 +659,13 @@ if(MSVC AND ENABLE_DAEMON AND ENABLE_QT AND ENABLE_UTILS AND WITH_CRYPTO STREQUA
|
|||
add_subdirectory(dist/msi)
|
||||
endif()
|
||||
|
||||
set(CPACK_SOURCE_GENERATOR TBZ2)
|
||||
set(CPACK_SOURCE_GENERATOR TXZ)
|
||||
set(CPACK_SOURCE_PACKAGE_FILE_NAME "${TR_NAME}-${TR_USER_AGENT_PREFIX}")
|
||||
set(CPACK_SOURCE_IGNORE_FILES
|
||||
\\\\.git
|
||||
)
|
||||
if(NOT TR_STABLE_RELEASE)
|
||||
string(APPEND CPACK_SOURCE_PACKAGE_FILE_NAME "-r${TR_VCS_REVISION}")
|
||||
endif()
|
||||
list(APPEND CPACK_SOURCE_IGNORE_FILES [.]git)
|
||||
set(CPACK_INSTALL_SCRIPTS "${CMAKE_CURRENT_LIST_DIR}/cmake/CPackSourceFixDirLinks.cmake")
|
||||
|
||||
## Code Formatting
|
||||
|
||||
|
@ -675,7 +677,7 @@ if(GIT_FOUND)
|
|||
OUTPUT_VARIABLE TR_GIT_ROOT
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
if(TR_GIT_ROOT)
|
||||
if(TR_GIT_ROOT AND IS_DIRECTORY "${TR_GIT_ROOT}/.git")
|
||||
configure_file(
|
||||
"${CMAKE_SOURCE_DIR}/extras/pre-commit"
|
||||
"${TR_GIT_ROOT}/.git/hooks/pre-commit"
|
||||
|
@ -689,8 +691,8 @@ if(GIT_FOUND)
|
|||
COMMAND "${CMAKE_SOURCE_DIR}/format/format.sh" --all
|
||||
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
|
||||
)
|
||||
endif(TR_GIT_ROOT)
|
||||
endif()
|
||||
unset(TR_GIT_ROOT)
|
||||
endif(GIT_FOUND)
|
||||
endif()
|
||||
|
||||
include(CPack)
|
||||
|
|
62
Makefile.am
62
Makefile.am
|
@ -1,62 +0,0 @@
|
|||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
if BUILD_CLI
|
||||
CLI_DIR = cli
|
||||
endif
|
||||
if BUILD_DAEMON
|
||||
if !WIN32
|
||||
DAEMON_DIR = daemon
|
||||
endif
|
||||
endif
|
||||
if BUILD_GTK
|
||||
GTK_DIR = gtk po
|
||||
endif
|
||||
if BUILD_MAC
|
||||
MAC_DIR = macosx
|
||||
endif
|
||||
|
||||
SUBDIRS = \
|
||||
extras \
|
||||
third-party \
|
||||
libtransmission \
|
||||
utils \
|
||||
$(DAEMON_DIR) \
|
||||
$(CLI_DIR) \
|
||||
$(GTK_DIR) \
|
||||
$(MAC_DIR) \
|
||||
web \
|
||||
tests
|
||||
|
||||
EXTRA_DIST = \
|
||||
qt \
|
||||
NEWS.md \
|
||||
AUTHORS \
|
||||
COPYING \
|
||||
README.md \
|
||||
autogen.sh \
|
||||
update-version-h.sh \
|
||||
Transmission.xcodeproj/project.pbxproj
|
||||
|
||||
EXTRA_DIST += \
|
||||
CMakeLists.txt \
|
||||
cmake \
|
||||
cli/CMakeLists.txt \
|
||||
daemon/CMakeLists.txt \
|
||||
gtk/CMakeLists.txt \
|
||||
libtransmission/CMakeLists.txt \
|
||||
libtransmission/version.h.in \
|
||||
po/CMakeLists.txt \
|
||||
qt/CMakeLists.txt \
|
||||
utils/CMakeLists.txt
|
||||
|
||||
if HAVE_REVISION_FILE
|
||||
EXTRA_DIST += REVISION
|
||||
endif
|
||||
|
||||
dist-hook:
|
||||
find "$(distdir)/qt" "$(distdir)/cmake" -name .svn -exec rm -rf '{}' '+' -prune
|
||||
|
||||
DISTCLEANFILES = \
|
||||
intltool-extract \
|
||||
intltool-merge \
|
||||
intltool-update
|
46
autogen.sh
46
autogen.sh
|
@ -1,46 +0,0 @@
|
|||
#!/bin/sh
|
||||
srcdir=$(dirname "$0")
|
||||
test -z "$srcdir" && srcdir=.
|
||||
|
||||
ORIGDIR=$(pwd)
|
||||
cd "$srcdir" || exit 1
|
||||
PROJECT=Transmission
|
||||
|
||||
GETTEXTIZE="glib-gettextize"
|
||||
$GETTEXTIZE --version < /dev/null > /dev/null 2>&1
|
||||
if test $? -ne 0; then
|
||||
GETTEXTIZE=""
|
||||
fi
|
||||
|
||||
LIBTOOLIZE=libtoolize
|
||||
if libtoolize --help > /dev/null 2>&1; then
|
||||
:
|
||||
elif glibtoolize --help > /dev/null 2>&1; then
|
||||
LIBTOOLIZE=glibtoolize
|
||||
fi
|
||||
export LIBTOOLIZE
|
||||
|
||||
./update-version-h.sh
|
||||
|
||||
autoreconf -fi || exit 1
|
||||
|
||||
if test "$GETTEXTIZE"; then
|
||||
echo "Creating aclocal.m4 ..."
|
||||
test -r aclocal.m4 || touch aclocal.m4
|
||||
echo "Running $GETTEXTIZE... Ignore non-fatal messages."
|
||||
echo "no" | $GETTEXTIZE --force --copy
|
||||
echo "Making aclocal.m4 writable ..."
|
||||
test -r aclocal.m4 && chmod u+w aclocal.m4
|
||||
echo "Running intltoolize..."
|
||||
intltoolize --copy --force --automake
|
||||
fi
|
||||
|
||||
cd "$ORIGDIR" || exit $?
|
||||
|
||||
if test -z "$AUTOGEN_SUBDIR_MODE"; then
|
||||
echo Running $srcdir/configure "$@"
|
||||
$srcdir/configure "$@"
|
||||
|
||||
echo
|
||||
echo "Now type 'make' to compile $PROJECT."
|
||||
fi
|
|
@ -1,29 +0,0 @@
|
|||
AM_CPPFLAGS = -I@top_srcdir@
|
||||
|
||||
AM_CFLAGS = \
|
||||
@LIBEVENT_CFLAGS@ \
|
||||
@LIBCURL_CFLAGS@ \
|
||||
@ZLIB_CFLAGS@ \
|
||||
@PTHREAD_CFLAGS@
|
||||
|
||||
bin_PROGRAMS = transmission-cli
|
||||
|
||||
dist_man_MANS = transmission-cli.1
|
||||
|
||||
transmission_cli_SOURCES = cli.c
|
||||
|
||||
transmission_cli_LDADD = \
|
||||
$(top_builddir)/libtransmission/libtransmission.a \
|
||||
@LIBNATPMP_LIBS@ \
|
||||
@LIBUPNP_LIBS@ \
|
||||
@DHT_LIBS@ \
|
||||
@LIBB64_LIBS@ \
|
||||
@LIBUTP_LIBS@ \
|
||||
@LIBEVENT_LIBS@ \
|
||||
@LIBCURL_LIBS@ \
|
||||
@CRYPTO_LIBS@ \
|
||||
@INTLLIBS@ \
|
||||
@ZLIB_LIBS@ \
|
||||
@PTHREAD_LIBS@ \
|
||||
${LIBM}
|
||||
|
28
cmake/CPackSourceFixDirLinks.cmake
Normal file
28
cmake/CPackSourceFixDirLinks.cmake
Normal file
|
@ -0,0 +1,28 @@
|
|||
cmake_minimum_required(VERSION 3.14 FATAL_ERROR)
|
||||
|
||||
if(NOT CPACK_SOURCE_GENERATOR)
|
||||
return()
|
||||
endif()
|
||||
|
||||
get_filename_component(SRC_DIR "${CMAKE_CURRENT_LIST_DIR}" DIRECTORY)
|
||||
|
||||
file(GLOB_RECURSE SOURCE_FILES LIST_DIRECTORIES true RELATIVE "${SRC_DIR}" "${SRC_DIR}/*")
|
||||
list(REVERSE SOURCE_FILES)
|
||||
|
||||
foreach(F IN LISTS SOURCE_FILES)
|
||||
if(NOT IS_SYMLINK "${SRC_DIR}/${F}")
|
||||
continue()
|
||||
endif()
|
||||
|
||||
# Links to files seem to be staged correctly
|
||||
if(NOT IS_DIRECTORY "${SRC_DIR}/${F}")
|
||||
continue()
|
||||
endif()
|
||||
|
||||
file(READ_SYMLINK "${SRC_DIR}/${F}" L)
|
||||
message(STATUS "Fixing link: ${F} -> ${L}")
|
||||
|
||||
get_filename_component(D "${F}" DIRECTORY)
|
||||
file(MAKE_DIRECTORY "${CMAKE_INSTALL_PREFIX}/${D}/${L}")
|
||||
file(CREATE_LINK "${L}" "${CMAKE_INSTALL_PREFIX}/${F}" SYMBOLIC)
|
||||
endforeach()
|
706
configure.ac
706
configure.ac
|
@ -1,706 +0,0 @@
|
|||
dnl convention: -TR MAJOR MINOR MAINT STATUS - (each a single char)
|
||||
dnl STATUS: "X" for prerelease beta builds,
|
||||
dnl "Z" for unsupported trunk builds,
|
||||
dnl "0" for stable, supported releases
|
||||
dnl these should be the only two lines you need to change
|
||||
m4_define([user_agent_prefix],[3.00+])
|
||||
m4_define([peer_id_prefix],[-TR300Z-])
|
||||
|
||||
AC_INIT([transmission],[user_agent_prefix],[https://github.com/transmission/transmission])
|
||||
AC_SUBST(USERAGENT_PREFIX,[user_agent_prefix])
|
||||
AC_SUBST(PEERID_PREFIX,[peer_id_prefix])
|
||||
|
||||
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
|
||||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
|
||||
dnl AM_CONFIG_HEADER(config.h)
|
||||
AC_CONFIG_SRCDIR(libtransmission/transmission.h)
|
||||
AM_INIT_AUTOMAKE([1.9 tar-pax no-dist-gzip dist-xz foreign subdir-objects])
|
||||
LT_INIT
|
||||
LT_LIB_M
|
||||
|
||||
if test m4_substr(peer_id_prefix,6,1) = "0"; then
|
||||
supported_build=yes
|
||||
CPPFLAGS="$CPPFLAGS -DNDEBUG"
|
||||
else
|
||||
supported_build=no
|
||||
if test "x$GCC" = "xyes" ; then
|
||||
CFLAGS="$CFLAGS -g -O0"
|
||||
CXXFLAGS="$CXXFLAGS -g -O0"
|
||||
fi
|
||||
fi
|
||||
AM_CONDITIONAL(TR_UNSTABLE, test "x$supported_build" = "xno")
|
||||
AM_CONDITIONAL(HAVE_REVISION_FILE, test -f REVISION)
|
||||
|
||||
##
|
||||
##
|
||||
## MANDATORY for everything
|
||||
##
|
||||
##
|
||||
|
||||
CURL_MINIMUM=7.28.0
|
||||
AC_SUBST(CURL_MINIMUM)
|
||||
LIBEVENT_MINIMUM=2.0.10
|
||||
AC_SUBST(LIBEVENT_MINIMUM)
|
||||
ZLIB_MINIMUM=1.2.3
|
||||
AC_SUBST(ZLIB_MINIMUM)
|
||||
|
||||
# crypto backends
|
||||
OPENSSL_MINIMUM=0.9.7
|
||||
AC_SUBST(OPENSSL_MINIMUM)
|
||||
CYASSL_MINIMUM=3.0
|
||||
AC_SUBST(CYASSL_MINIMUM)
|
||||
POLARSSL_MINIMUM=0x01020000 # 1.2
|
||||
AC_SUBST(POLARSSL_MINIMUM)
|
||||
|
||||
##
|
||||
##
|
||||
## MANDATORY for the GTK+ client
|
||||
##
|
||||
##
|
||||
|
||||
GTK_MINIMUM=3.4.0
|
||||
AC_SUBST(GTK_MINIMUM)
|
||||
GLIB_MINIMUM=2.32.0
|
||||
AC_SUBST(GLIB_MINIMUM)
|
||||
GIO_MINIMUM=2.26.0
|
||||
AC_SUBST(GIO_MINIMUM)
|
||||
|
||||
##
|
||||
##
|
||||
## OPTIONAL for the GTK+ client
|
||||
##
|
||||
##
|
||||
|
||||
# create the tray icon with AppIndicator
|
||||
LIBAPPINDICATOR_MINIMUM=0.4.90
|
||||
AC_SUBST(LIBAPPINDICATOR_MINIMUM)
|
||||
|
||||
|
||||
AC_PROG_CC
|
||||
AC_PROG_CXX
|
||||
AC_C_INLINE
|
||||
if test "x$GCC" = "xyes" ; then
|
||||
|
||||
CFLAGS="$CFLAGS -std=gnu99 -ggdb3 -Wall -W -Wpointer-arith -Wformat-security -Wundef -Wcast-align -Wstrict-prototypes -Wmissing-declarations -Wmissing-format-attribute -Wredundant-decls -Wnested-externs -Wunused-parameter -Wwrite-strings -Wfloat-equal"
|
||||
|
||||
dnl figure out gcc version
|
||||
AC_MSG_CHECKING([gcc version])
|
||||
GCC_VERSION=`$CC -dumpversion`
|
||||
GCC_MAJOR=`echo $GCC_VERSION | cut -d . -f1`
|
||||
GCC_MINOR=`echo $GCC_VERSION | cut -d . -f2`
|
||||
GCC_VERSION_NUM=`(expr $GCC_MAJOR "*" 100 + $GCC_MINOR) 2>/dev/null`
|
||||
|
||||
AC_MSG_RESULT($GCC_VERSION)
|
||||
if test $GCC_VERSION_NUM -ge 304; then
|
||||
dnl these were added in 3.4
|
||||
CFLAGS="$CFLAGS -Wextra -Winit-self"
|
||||
fi
|
||||
if test $GCC_VERSION_NUM -ge 403; then
|
||||
dnl these were added in 4.3
|
||||
CFLAGS="$CFLAGS -Wvariadic-macros"
|
||||
fi
|
||||
fi
|
||||
|
||||
AC_PROG_LN_S
|
||||
AC_PROG_MKDIR_P
|
||||
|
||||
AC_HEADER_STDC
|
||||
AC_HEADER_TIME
|
||||
|
||||
AC_CHECK_HEADERS([xlocale.h])
|
||||
AC_CHECK_FUNCS([iconv pread pwrite lrintf strlcpy daemon dirname basename canonicalize_file_name strcasecmp localtime_r fallocate64 posix_fallocate memmem strsep strtold syslog valloc getpagesize posix_memalign statvfs htonll ntohll mkdtemp uselocale _configthreadlocale strcasestr])
|
||||
AC_PROG_INSTALL
|
||||
AC_PROG_MAKE_SET
|
||||
ACX_PTHREAD
|
||||
|
||||
if test "x$ac_cv_func_strtold" != "xyes" ; then
|
||||
CPPFLAGS="$CPPFLAGS -Dstrtold=strtod"
|
||||
fi
|
||||
|
||||
AC_SEARCH_LIBS(cos, [m])
|
||||
AC_SEARCH_LIBS([socket], [socket net])
|
||||
AC_SEARCH_LIBS([gethostbyname], [nsl bind])
|
||||
AC_SEARCH_LIBS([quotacursor_skipidtype], [quota])
|
||||
PKG_CHECK_MODULES(LIBCURL, [libcurl >= $CURL_MINIMUM])
|
||||
PKG_CHECK_MODULES(LIBEVENT, [libevent >= $LIBEVENT_MINIMUM])
|
||||
PKG_CHECK_MODULES(ZLIB, [zlib >= $ZLIB_MINIMUM])
|
||||
|
||||
|
||||
AC_ARG_WITH([crypto], AS_HELP_STRING([--with-crypto=PKG],
|
||||
[Use specified crypto library: auto (default), openssl, cyassl, polarssl]),
|
||||
[want_crypto=$withval], [want_crypto=auto])
|
||||
|
||||
AS_IF([test "x$want_crypto" = "xauto" -o "x$want_crypto" = "xopenssl"], [
|
||||
PKG_CHECK_MODULES(OPENSSL, [openssl >= $OPENSSL_MINIMUM],
|
||||
[want_crypto="openssl"; CRYPTO_PKG="openssl"; CRYPTO_CFLAGS="$OPENSSL_CFLAGS"; CRYPTO_LIBS="$OPENSSL_LIBS"],
|
||||
[AS_IF([test "x$want_crypto" = "xopenssl"],
|
||||
[AC_MSG_ERROR([OpenSSL support requested, but library not found.])]
|
||||
)]
|
||||
)
|
||||
])
|
||||
AS_IF([test "x$want_crypto" = "xauto" -o "x$want_crypto" = "xcyassl"], [
|
||||
PKG_CHECK_MODULES(WOLFSSL, [wolfssl >= $CYASSL_MINIMUM],
|
||||
[want_crypto="cyassl"; CRYPTO_PKG="cyassl"; CRYPTO_CFLAGS="$WOLFSSL_CFLAGS"; CRYPTO_LIBS="$WOLFSSL_LIBS"; CYASSL_IS_WOLFSSL=yes],
|
||||
[PKG_CHECK_MODULES(CYASSL, [cyassl >= $CYASSL_MINIMUM],
|
||||
[want_crypto="cyassl"; CRYPTO_PKG="cyassl"; CRYPTO_CFLAGS="$CYASSL_CFLAGS"; CRYPTO_LIBS="$CYASSL_LIBS"],
|
||||
[AS_IF([test "x$want_crypto" = "xcyassl"],
|
||||
[AC_MSG_ERROR([CyaSSL support requested, but library not found.])]
|
||||
)]
|
||||
)]
|
||||
)
|
||||
])
|
||||
AS_IF([test "x$want_crypto" = "xauto" -o "x$want_crypto" = "xpolarssl"], [
|
||||
PKG_CHECK_MODULES(MBEDTLS, [mbedtls >= $POLARSSL_MINIMUM],
|
||||
[want_crypto="polarssl"; CRYPTO_PKG="polarssl"; CRYPTO_CFLAGS="$MBEDTLS_CFLAGS"; CRYPTO_LIBS="$MBEDTLS_LIBS"; POLARSSL_IS_MBEDTLS=yes],
|
||||
[AC_CHECK_HEADER([polarssl/version.h],
|
||||
[AC_EGREP_CPP([version_ok], [#include <polarssl/version.h>
|
||||
#if defined (POLARSSL_VERSION_NUMBER) && POLARSSL_VERSION_NUMBER >= $POLARSSL_MINIMUM
|
||||
version_ok
|
||||
#endif],
|
||||
[AC_CHECK_LIB([polarssl], [dhm_calc_secret],
|
||||
[want_crypto="polarssl"; CRYPTO_PKG="polarssl"; CRYPTO_CFLAGS=""; CRYPTO_LIBS="-lpolarssl"],
|
||||
[AS_IF([test "x$want_crypto" = "xpolarssl"],
|
||||
[AC_MSG_ERROR([PolarSSL support requested, but library not found.])]
|
||||
)]
|
||||
)],
|
||||
[AS_IF([test "x$want_crypto" = "xpolarssl"],
|
||||
[AC_MSG_ERROR([PolarSSL support requested, but version not suitable.])]
|
||||
)]
|
||||
)],
|
||||
[AS_IF([test "x$want_crypto" = "xpolarssl"],
|
||||
[AC_MSG_ERROR([PolarSSL support requested, but headers not found.])]
|
||||
)]
|
||||
)]
|
||||
)
|
||||
])
|
||||
# we should have found the library by now
|
||||
AS_IF([test "x$CRYPTO_PKG" = "x"], [
|
||||
AS_IF([test "x$want_crypto" = "xauto"],
|
||||
[AC_MSG_ERROR([Unable to find any supported crypto library.])],
|
||||
[AC_MSG_ERROR([Requested crypto library "$want_crypto" is not supported.])],
|
||||
)
|
||||
])
|
||||
|
||||
AM_CONDITIONAL([CRYPTO_USE_OPENSSL],[test "x$CRYPTO_PKG" = "xopenssl"])
|
||||
AM_CONDITIONAL([CRYPTO_USE_CYASSL],[test "x$CRYPTO_PKG" = "xcyassl"])
|
||||
AM_CONDITIONAL([CYASSL_IS_WOLFSSL],[test "x$CYASSL_IS_WOLFSSL" = "xyes"])
|
||||
AM_CONDITIONAL([CRYPTO_USE_POLARSSL],[test "x$CRYPTO_PKG" = "xpolarssl"])
|
||||
AM_CONDITIONAL([POLARSSL_IS_MBEDTLS],[test "x$POLARSSL_IS_MBEDTLS" = "xyes"])
|
||||
AC_SUBST(CRYPTO_PKG)
|
||||
AC_SUBST(CRYPTO_CFLAGS)
|
||||
AC_SUBST(CRYPTO_LIBS)
|
||||
|
||||
|
||||
AC_SYS_LARGEFILE
|
||||
|
||||
AC_FUNC_GETMNTENT
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl posix_fadvise
|
||||
|
||||
dnl can posix_fadvise be used
|
||||
AC_CHECK_DECLS(posix_fadvise, [], [], [
|
||||
#define _XOPEN_SOURCE 600
|
||||
#include <fcntl.h>])
|
||||
AC_CHECK_FUNCS([posix_fadvise])
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl file monitoring for the daemon
|
||||
|
||||
AC_ARG_WITH([inotify],
|
||||
[AS_HELP_STRING([--with-inotify], [Enable inotify support (default=auto)])],
|
||||
[WANT_INOTIFY=${withval}],
|
||||
[WANT_INOTIFY=auto])
|
||||
HAVE_INOTIFY=0
|
||||
AS_IF([test "x$WANT_INOTIFY" != "xno"],
|
||||
[AC_CHECK_HEADER([sys/inotify.h],
|
||||
[AC_CHECK_FUNC([inotify_init],
|
||||
[HAVE_INOTIFY=1])],
|
||||
[AS_IF([test "x$WANT_INOTIFY" = "xyes"],
|
||||
[AC_MSG_ERROR("inotify not found!")])])])
|
||||
AM_CONDITIONAL([USE_INOTIFY], [test "x$WANT_INOTIFY" != "xno" -a $HAVE_INOTIFY -eq 1])
|
||||
|
||||
AC_ARG_WITH([kqueue],
|
||||
[AS_HELP_STRING([--with-kqueue],[Enable kqueue support (default=auto)])],
|
||||
[WANT_KQUEUE=${withval}],
|
||||
[WANT_KQUEUE=auto])
|
||||
HAVE_KQUEUE=0
|
||||
AS_IF([test "x$WANT_KQUEUE" != "xno"],
|
||||
[AC_CHECK_HEADER([sys/event.h],
|
||||
[AC_CHECK_FUNC([kqueue],
|
||||
[HAVE_KQUEUE=1])],
|
||||
[AS_IF([test "x$WANT_KQUEUE" = "xyes"],
|
||||
[AC_MSG_ERROR("kqueue not found!")])])])
|
||||
AM_CONDITIONAL([USE_KQUEUE], [test "x$WANT_KQUEUE" != "xno" -a $HAVE_KQUEUE -eq 1])
|
||||
|
||||
|
||||
AC_CHECK_HEADERS([sys/statvfs.h \
|
||||
xfs/xfs.h])
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl file monitoring for the daemon
|
||||
|
||||
# Check whether to enable systemd startup notification.
|
||||
# This requires libsystemd.
|
||||
AC_ARG_WITH([systemd], AS_HELP_STRING([--with-systemd],
|
||||
[Add support for systemd startup notification (default is autodetected)]),
|
||||
[USE_SYSTEMD=$withval], [USE_SYSTEMD=auto])
|
||||
AS_IF([test "x$USE_SYSTEMD" != "xno"], [
|
||||
PKG_CHECK_MODULES([SYSTEMD], [libsystemd],
|
||||
[AC_DEFINE(USE_SYSTEMD,1,[Use systemd startup notification])],
|
||||
[AS_IF([test "x$USE_SYSTEMD" = "xyes"],
|
||||
[AC_MSG_ERROR([systemd startup notification support requested, but libsystemd not found.])]
|
||||
)]
|
||||
)
|
||||
])
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl dht
|
||||
|
||||
DHT_CFLAGS="-I\$(top_builddir)/third-party/dht/include"
|
||||
DHT_LIBS="\$(top_builddir)/third-party/dht/libdht.a"
|
||||
DHT_LIBS_QT="\$\${TRANSMISSION_TOP}/third-party/dht/libdht.a"
|
||||
build_bundled_dht="yes"
|
||||
AC_ARG_ENABLE([external-dht],
|
||||
AS_HELP_STRING([--enable-external-dht],[Use system external-dht]),
|
||||
[want_external_dht=${enableval}],
|
||||
[want_external_dht=no])
|
||||
if test "x$want_external_dht" != "xno" ; then
|
||||
dnl Would be lovely if it had pkgconfig
|
||||
DHT_CFLAGS=""
|
||||
DHT_LIBS="-ldht"
|
||||
DHT_LIBS_QT="-ldht"
|
||||
build_bundled_dht="no"
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL([BUILD_DHT],[test "x$build_bundled_dht" = "xyes"])
|
||||
AC_SUBST(DHT_CFLAGS)
|
||||
AC_SUBST(DHT_LIBS)
|
||||
AC_SUBST(DHT_LIBS_QT)
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl libb64
|
||||
|
||||
LIBB64_CFLAGS="-I\$(top_srcdir)/third-party/libb64/include"
|
||||
LIBB64_LIBS="\$(top_builddir)/third-party/libb64/libb64.a"
|
||||
LIBB64_LIBS_QT="\$\${TRANSMISSION_TOP}/third-party/libb64/libb64.a"
|
||||
build_bundled_b64="yes"
|
||||
AC_ARG_ENABLE([external-b64],
|
||||
AS_HELP_STRING([--enable-external-b64],[Use system libb64]),
|
||||
[want_external_b64=${enableval}],
|
||||
[want_external_b64=no])
|
||||
if test "x$want_external_b64" != "xno" ; then
|
||||
LIBB64_CFLAGS="-DUSE_SYSTEM_B64"
|
||||
LIBB64_LIBS="-lb64"
|
||||
LIBB64_LIBS_QT="-lb64"
|
||||
build_bundled_b64="no"
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL([BUILD_B64],[test "x$build_bundled_b64" = "xyes"])
|
||||
AC_SUBST(LIBB64_CFLAGS)
|
||||
AC_SUBST(LIBB64_LIBS)
|
||||
AC_SUBST(LIBB64_LIBS_QT)
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl utp
|
||||
|
||||
AC_CHECK_LIB([rt],
|
||||
[clock_gettime],
|
||||
[libutp_extra_libs="-lrt"],
|
||||
[libutp_extra_libs=""])
|
||||
|
||||
AC_MSG_CHECKING([µTP])
|
||||
build_utp="no"
|
||||
|
||||
ac_save_LIBS="$LIBS"
|
||||
LIBS="-lutp"
|
||||
AC_LINK_IFELSE(
|
||||
[AC_LANG_PROGRAM([#include <libutp/utp.h>],
|
||||
[struct UTPFunctionTable func;])],
|
||||
[have_utp="yes"],
|
||||
[have_utp="no"]
|
||||
)
|
||||
LIBS="$ac_save_LIBS"
|
||||
|
||||
if test "x$have_utp" = "xyes" -o "x$CXX" != "x"; then
|
||||
want_utp_default="yes"
|
||||
else
|
||||
want_utp_default="no"
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE([utp],
|
||||
AS_HELP_STRING([--enable-utp],[build µTP support]),
|
||||
[want_utp=${enableval}],
|
||||
[want_utp=${want_utp_default}])
|
||||
if test "x$want_utp" = "xyes"; then
|
||||
if test "x$have_utp" = "xyes"; then
|
||||
dnl Would be lovely if it had pkgconfig
|
||||
LIBUTP_CFLAGS=""
|
||||
LIBUTP_LIBS="-lutp $libutp_extra_libs"
|
||||
LIBUTP_LIBS_QT="-lutp $libutp_extra_libs"
|
||||
AC_DEFINE([WITH_UTP],[1])
|
||||
build_utp="system"
|
||||
elif test "x$CXX" != "x"; then
|
||||
LIBUTP_CFLAGS="-I\$(top_builddir)/third-party/libutp/include"
|
||||
LIBUTP_LIBS="\$(top_builddir)/third-party/libutp/libutp.a"
|
||||
LIBUTP_LIBS_QT="\$\${TRANSMISSION_TOP}/third-party/libutp/libutp.a"
|
||||
if test "x$libutp_extra_libs" != "x" ; then
|
||||
LIBUTP_LIBS="$LIBUTP_LIBS $libutp_extra_libs"
|
||||
LIBUTP_LIBS_QT="$LIBUTP_LIBS_QT $libutp_extra_libs"
|
||||
fi
|
||||
AC_DEFINE([WITH_UTP],[1])
|
||||
build_utp="yes"
|
||||
else
|
||||
AC_MSG_ERROR("Unable to build uTP support -- C++ compiler not found")
|
||||
fi
|
||||
fi
|
||||
AC_SUBST(LIBUTP_CFLAGS)
|
||||
AC_SUBST(LIBUTP_LIBS)
|
||||
AC_SUBST(LIBUTP_LIBS_QT)
|
||||
AM_CONDITIONAL([BUILD_UTP],[test "x$build_utp" = "xyes"])
|
||||
AC_MSG_RESULT([$build_utp])
|
||||
|
||||
|
||||
dnl
|
||||
dnl look for preinstalled miniupnpc...
|
||||
dnl
|
||||
|
||||
ac_save_LIBS="$LIBS"
|
||||
LIBS="-lminiupnpc"
|
||||
AC_MSG_CHECKING([system miniupnpc library])
|
||||
|
||||
dnl See if ANY version of miniupnpc is installed
|
||||
AC_LINK_IFELSE(
|
||||
[AC_LANG_PROGRAM([#include <miniupnpc/miniupnpc.h>],
|
||||
[struct UPNPDev dev;])],
|
||||
[upnp_version="unknown"],
|
||||
[upnp_version="none"]
|
||||
)
|
||||
|
||||
dnl Let's hope it's 1.7 or higher, since it provides
|
||||
dnl MINIUPNPC_API_VERSION and we won't have to figure
|
||||
dnl it out on our own
|
||||
if test "x$upnp_version" = "xunknown" ; then
|
||||
AC_COMPILE_IFELSE(
|
||||
[AC_LANG_PROGRAM(
|
||||
[#include <stdlib.h>
|
||||
#include <miniupnpc/miniupnpc.h>],
|
||||
[#ifndef MINIUPNPC_API_VERSION
|
||||
#error MINIUPNPC_API_VERSION undefined
|
||||
#endif]
|
||||
)],
|
||||
[upnp_version=">= 1.7"]
|
||||
)
|
||||
fi
|
||||
|
||||
dnl Or maybe it's miniupnp 1.6
|
||||
if test "x$upnp_version" = "xunknown" ; then
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
#include <miniupnpc/miniupnpc.h>
|
||||
#include <miniupnpc/upnpcommands.h>
|
||||
]], [[
|
||||
struct UPNPDev * devlist;
|
||||
struct UPNPUrls urls;
|
||||
struct IGDdatas data;
|
||||
char lanaddr[16];
|
||||
char portStr[8];
|
||||
char intPort[8];
|
||||
char intClient[16];
|
||||
upnpDiscover( 2000, NULL, NULL, 0, 0, &errno );
|
||||
UPNP_GetValidIGD( devlist, &urls, &data, lanaddr, sizeof( lanaddr ) );
|
||||
UPNP_GetSpecificPortMappingEntry( urls.controlURL, data.first.servicetype,
|
||||
portStr, "TCP", intClient, intPort, NULL, NULL, NULL );
|
||||
]])],[
|
||||
AC_DEFINE(MINIUPNPC_API_VERSION, 8, [miniupnpc 1.6 has API version 8])
|
||||
upnp_version="1.6"])
|
||||
fi
|
||||
|
||||
dnl Or maybe it's miniupnp 1.5
|
||||
if test "x$upnp_version" = "xunknown" ; then
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
||||
#include <stdlib.h>
|
||||
#include <miniupnpc/miniupnpc.h>
|
||||
#include <miniupnpc/upnpcommands.h>
|
||||
]], [[
|
||||
struct UPNPDev * devlist;
|
||||
struct UPNPUrls urls;
|
||||
struct IGDdatas data;
|
||||
char lanaddr[16];
|
||||
char portStr[8];
|
||||
char intPort[8];
|
||||
char intClient[16];
|
||||
upnpDiscover( 2000, NULL, NULL, 0 );
|
||||
UPNP_GetValidIGD( devlist, &urls, &data, lanaddr, sizeof( lanaddr ) );
|
||||
UPNP_GetSpecificPortMappingEntry( urls.controlURL, data.first.servicetype,
|
||||
portStr, "TCP", intClient, intPort );
|
||||
]])],[
|
||||
AC_DEFINE(MINIUPNPC_API_VERSION, 5, [miniupnpc 1.5 has API version 5])
|
||||
upnp_version="1.5"])
|
||||
fi
|
||||
|
||||
# ... and the results of our tests
|
||||
LIBS="$ac_save_LIBS"
|
||||
AC_MSG_RESULT([$upnp_version])
|
||||
AM_CONDITIONAL([BUILD_MINIUPNP],[test "x$upnp_version" = "xnone"])
|
||||
if test "x$upnp_version" = "xnone" ; then
|
||||
LIBUPNP_CFLAGS="-I\$(top_builddir)/third-party/miniupnpc/include"
|
||||
LIBUPNP_LIBS="\$(top_builddir)/third-party/miniupnpc/libminiupnp.a"
|
||||
LIBUPNP_LIBS_QT="\$\${TRANSMISSION_TOP}/third-party/miniupnpc/libminiupnp.a"
|
||||
else
|
||||
AC_DEFINE([SYSTEM_MINIUPNP])
|
||||
LIBUPNP_CFLAGS=""
|
||||
LIBUPNP_LIBS="-lminiupnpc"
|
||||
LIBUPNP_LIBS_QT="-lminiupnpc"
|
||||
fi
|
||||
AC_SUBST(LIBUPNP_CFLAGS)
|
||||
AC_SUBST(LIBUPNP_LIBS)
|
||||
AC_SUBST(LIBUPNP_LIBS_QT)
|
||||
|
||||
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl Allow usage of system natpmp library
|
||||
|
||||
LIBNATPMP_CFLAGS="-I\$(top_srcdir)/third-party/libnatpmp/"
|
||||
LIBNATPMP_LIBS="\$(top_builddir)/third-party/libnatpmp/libnatpmp.a"
|
||||
LIBNATPMP_LIBS_QT="\$\${TRANSMISSION_TOP}/third-party/libnatpmp/libnatpmp.a"
|
||||
build_bundled_natpmp="yes"
|
||||
AC_ARG_ENABLE([external-natpmp],
|
||||
AS_HELP_STRING([--enable-external-natpmp],[Use system external-natpmp]),
|
||||
[want_external_natpmp=${enableval}],
|
||||
[want_external_natpmp=no])
|
||||
if test "x$want_external_natpmp" != "xno" ; then
|
||||
dnl Would be lovely if it had pkgconfig
|
||||
LIBNATPMP_CFLAGS=""
|
||||
LIBNATPMP_LIBS="-lnatpmp"
|
||||
LIBNATPMP_LIBS_QT="-lnatpmp"
|
||||
build_bundled_natpmp="no"
|
||||
fi
|
||||
AM_CONDITIONAL([BUILD_NATPMP],[test "x$build_bundled_natpmp" = "xyes"])
|
||||
AC_SUBST(LIBNATPMP_CFLAGS)
|
||||
AC_SUBST(LIBNATPMP_LIBS)
|
||||
AC_SUBST(LIBNATPMP_LIBS_QT)
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl detection for the GTK+ client
|
||||
|
||||
AC_ARG_ENABLE([nls],
|
||||
[AS_HELP_STRING([--enable-nls],[enable native language support])],,
|
||||
[enable_nls=yes])
|
||||
PKG_CHECK_EXISTS([gtk+-3.0 >= $GTK_MINIMUM
|
||||
glib-2.0 >= $GLIB_MINIMUM
|
||||
gio-2.0 >= $GIO_MINIMUM,
|
||||
gmodule-2.0 >= $GLIB_MINIMUM
|
||||
gthread-2.0 >= $GLIB_MINIMUM],
|
||||
[have_gtk=yes],
|
||||
[have_gtk=no])
|
||||
AC_ARG_WITH([gtk], AS_HELP_STRING([--with-gtk],[with Gtk]),
|
||||
[with_gtk=$withval],
|
||||
[with_gtk=$have_gtk])
|
||||
AM_CONDITIONAL([BUILD_GTK],[test "x$with_gtk" = "xyes"])
|
||||
use_libappindicator=no
|
||||
if test "x$with_gtk" = "xyes" ; then
|
||||
|
||||
if test "x$enable_nls" = "xno" ; then
|
||||
AC_MSG_ERROR("The gtk client cannot be built without nls support. Try adding either --enable-nls or --without-gtk" )
|
||||
fi
|
||||
|
||||
PKG_CHECK_MODULES([GTK], [gtk+-3.0 >= $GTK_MINIMUM
|
||||
glib-2.0 >= $GLIB_MINIMUM
|
||||
gio-2.0 >= $GIO_MINIMUM,
|
||||
gmodule-2.0 >= $GLIB_MINIMUM
|
||||
gthread-2.0 >= $GLIB_MINIMUM])
|
||||
PKG_CHECK_MODULES([LIBAPPINDICATOR],
|
||||
[appindicator3-0.1 >= $LIBAPPINDICATOR_MINIMUM],
|
||||
[have_libappindicator=yes],
|
||||
[have_libappindicator=no])
|
||||
if test "x$have_libappindicator" = "xyes"; then
|
||||
use_libappindicator=yes
|
||||
AC_DEFINE([HAVE_LIBAPPINDICATOR], 1)
|
||||
else
|
||||
LIBAPPINDICATOR_CFLAGS=
|
||||
LIBAPPINDICATOR_LIBS=
|
||||
fi
|
||||
fi
|
||||
|
||||
dnl This section is only used for internationalization.
|
||||
dnl If you don't need translations and this section gives you trouble --
|
||||
dnl such as if you're building for a headless system --
|
||||
dnl it's okay to tear this section out and re-build the configure script.
|
||||
dnl
|
||||
dnl Note to packagers: the bump to intltool 0.40 was made to fix
|
||||
dnl a "make check" failure on some systems. if upgrading to 0.40 is
|
||||
dnl a problem and the old version was working fine for you,
|
||||
dnl it should be safe to re-edit 0.40 back down to 0.23
|
||||
|
||||
use_nls=no
|
||||
if test "x$enable_nls" = "xyes" ; then
|
||||
use_nls=yes
|
||||
m4_ifdef([IT_PROG_INTLTOOL],
|
||||
[IT_PROG_INTLTOOL([0.35.0],[no-xml])],
|
||||
[AC_MSG_ERROR("--enable-nls requires intltool to be installed.")])
|
||||
AC_CHECK_HEADERS([libintl.h])
|
||||
GETTEXT_PACKAGE=transmission-gtk
|
||||
AC_SUBST(GETTEXT_PACKAGE)
|
||||
AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
|
||||
AM_GLIB_GNU_GETTEXT
|
||||
transmissionlocaledir='${prefix}/${DATADIRNAME}/locale'
|
||||
AC_SUBST(transmissionlocaledir)
|
||||
fi
|
||||
AC_SUBST(INTLLIBS)
|
||||
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl platform-specific stuff.
|
||||
|
||||
AC_CANONICAL_HOST
|
||||
have_darwin="no"
|
||||
have_msw="no"
|
||||
case $host_os in
|
||||
|
||||
*mingw32*)
|
||||
have_msw="yes"
|
||||
CXXFLAGS="$CXXFLAGS -mms-bitfields -mwin32 -mwindows"
|
||||
CPPFLAGS="$CPPFLAGS -DWINVER=0x0600 -D_WIN32_WINNT=0x0600 -DWIN32_LEAN_AND_MEAN"
|
||||
# CPPFLAGS="$CPPFLAGS -D__USE_MINGW_ANSI_STDIO=1 -D__STDC_FORMAT_MACROS=1"
|
||||
LIBS="$LIBS -liphlpapi -lshell32 -lws2_32"
|
||||
transmissionlocaledir="locale"
|
||||
if test -z "$host_alias"; then
|
||||
hostaliaswindres=
|
||||
else
|
||||
hostaliaswindres="$host_alias-windres";
|
||||
fi
|
||||
AC_CHECK_TOOL(WINDRES, windres)
|
||||
;;
|
||||
|
||||
*darwin*)
|
||||
have_darwin="yes"
|
||||
;;
|
||||
|
||||
esac
|
||||
|
||||
AC_ARG_ENABLE([lightweight],
|
||||
AS_HELP_STRING([--enable-lightweight],[optimize libtransmission for low-resource systems: smaller cache size, prefer unencrypted peer connections, etc.]),
|
||||
[enable_lightweight=${enableval}],
|
||||
[enable_lightweight="no"])
|
||||
if test "x$enable_lightweight" = "xyes" ; then
|
||||
AC_DEFINE([TR_LIGHTWEIGHT],[1],[optimize libtransmission for low-resource systems])
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE([cli],
|
||||
[AS_HELP_STRING([--enable-cli],[build command-line client])],
|
||||
[build_cli=${enableval}],
|
||||
[build_cli="no"])
|
||||
AM_CONDITIONAL([BUILD_CLI],[test "x$build_cli" = "xyes"])
|
||||
|
||||
AC_ARG_ENABLE([mac],
|
||||
[AS_HELP_STRING([--enable-mac],[build Mac client])],
|
||||
[build_mac=${enableval}],
|
||||
[build_mac=${have_darwin}])
|
||||
AM_CONDITIONAL([BUILD_MAC],[test "x$build_mac" = "xyes"])
|
||||
|
||||
AC_ARG_ENABLE([daemon],
|
||||
[AS_HELP_STRING([--enable-daemon],[build daemon])],
|
||||
[build_daemon=${enableval}],
|
||||
[build_daemon="yes"])
|
||||
AM_CONDITIONAL([BUILD_DAEMON],[test "x$build_daemon" = "xyes"])
|
||||
|
||||
|
||||
if test "x$build_mac" = "xyes" ; then
|
||||
AC_DEFINE([BUILD_MAC_CLIENT], 1)
|
||||
# Make sure the proper Mac SDK is installed
|
||||
if test ! -d /Developer/SDKs/MacOSX10.5.sdk; then
|
||||
cat << EOF
|
||||
You need to install the Mac OS X 10.5 SDK in order to build Transmission
|
||||
with --enable-mac:
|
||||
Get your Xcode CD or package
|
||||
Restart the install
|
||||
When it gets to "Installation Type", select "Customize"
|
||||
Select "Mac OS X 10.5 SDK" under "Cross Development"
|
||||
Finish the install.
|
||||
EOF
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
AM_CONDITIONAL(WIN32, test "x$have_msw" = "xyes")
|
||||
|
||||
dnl ----------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl Generate the output
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
transmission-gtk.spec
|
||||
cli/Makefile
|
||||
daemon/Makefile
|
||||
extras/Makefile
|
||||
libtransmission/Makefile
|
||||
utils/Makefile
|
||||
third-party/Makefile
|
||||
third-party/dht/Makefile
|
||||
third-party/libb64/Makefile
|
||||
third-party/libutp/Makefile
|
||||
third-party/libnatpmp/Makefile
|
||||
third-party/miniupnpc/Makefile
|
||||
macosx/Makefile
|
||||
gtk/Makefile
|
||||
gtk/icons/Makefile
|
||||
qt/config.pri
|
||||
web/Makefile
|
||||
web/images/Makefile
|
||||
web/style/Makefile
|
||||
web/style/jqueryui/Makefile
|
||||
web/style/jqueryui/images/Makefile
|
||||
web/style/transmission/Makefile
|
||||
web/style/transmission/images/Makefile
|
||||
web/style/transmission/images/buttons/Makefile
|
||||
web/javascript/Makefile
|
||||
web/javascript/jquery/Makefile
|
||||
tests/Makefile
|
||||
tests/gtest/Makefile
|
||||
tests/libtransmission/Makefile
|
||||
po/Makefile.in])
|
||||
|
||||
AC_OUTPUT
|
||||
|
||||
echo "
|
||||
|
||||
Configuration:
|
||||
|
||||
Source code location: ${srcdir}
|
||||
Compiler: ${CXX}
|
||||
|
||||
Build libtransmission: yes
|
||||
* optimized for low-resource systems: ${enable_lightweight}
|
||||
* µTP enabled: ${build_utp}
|
||||
* crypto library: ${CRYPTO_PKG}
|
||||
|
||||
Build Command-Line client: ${build_cli}
|
||||
|
||||
Build GTK+ client: ${with_gtk}
|
||||
* libappindicator for an Ubuntu-style tray: ${use_libappindicator}
|
||||
|
||||
Build Daemon: ${build_daemon}
|
||||
|
||||
Build Mac client: ${build_mac}
|
||||
|
||||
"
|
|
@ -1,43 +0,0 @@
|
|||
AM_CPPFLAGS = -I@top_srcdir@ -DEMBEDDED
|
||||
|
||||
AM_CFLAGS = \
|
||||
@LIBEVENT_CFLAGS@ \
|
||||
@LIBCURL_CFLAGS@ \
|
||||
@SYSTEMD_CFLAGS@ \
|
||||
@ZLIB_CFLAGS@ \
|
||||
@PTHREAD_CFLAGS@
|
||||
|
||||
EXTRA_DIST = \
|
||||
transmission-daemon.service
|
||||
|
||||
dist_man_MANS = \
|
||||
transmission-daemon.1
|
||||
|
||||
bin_PROGRAMS = \
|
||||
transmission-daemon
|
||||
|
||||
LDADD = \
|
||||
$(top_builddir)/libtransmission/libtransmission.a \
|
||||
@LIBUPNP_LIBS@ \
|
||||
@LIBNATPMP_LIBS@ \
|
||||
@DHT_LIBS@ \
|
||||
@LIBB64_LIBS@ \
|
||||
@LIBUTP_LIBS@ \
|
||||
@LIBEVENT_LIBS@ \
|
||||
@LIBCURL_LIBS@ \
|
||||
@CRYPTO_LIBS@ \
|
||||
@INTLLIBS@ \
|
||||
@SYSTEMD_LIBS@ \
|
||||
@ZLIB_LIBS@ \
|
||||
@PTHREAD_LIBS@ \
|
||||
${LIBM}
|
||||
|
||||
noinst_HEADERS = daemon.h
|
||||
|
||||
transmission_daemon_SOURCES = daemon.c
|
||||
|
||||
if WIN32
|
||||
transmission_daemon_SOURCES += daemon-win32.c
|
||||
else
|
||||
transmission_daemon_SOURCES += daemon-posix.c
|
||||
endif
|
|
@ -1,2 +0,0 @@
|
|||
EXTRA_DIST = rpc-spec.txt \
|
||||
send-email-when-torrent-done.sh
|
151
gtk/Makefile.am
151
gtk/Makefile.am
|
@ -1,151 +0,0 @@
|
|||
BUILT_SOURCES =
|
||||
CLEANFILES =
|
||||
SUBDIRS = icons
|
||||
|
||||
if TR_UNSTABLE
|
||||
#FIXME: migrate from GtkUIManager to GtkBuilder in 2.90
|
||||
#GTK_EXTRA_CPPFLAGS=-DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED
|
||||
GTK_EXTRA_CPPFLAGS=-DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED
|
||||
endif
|
||||
|
||||
# these should go in GTK_EXTRA_CPPFLAGS at some point, but not yet because it breaks libnotify's headers
|
||||
# -DG_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_SINGLE_INCLUDES
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir) \
|
||||
-DTRANSMISSIONLOCALEDIR=\""$(transmissionlocaledir)"\" \
|
||||
$(GTK_EXTRA_CPPFLAGS)
|
||||
|
||||
AM_CFLAGS = \
|
||||
@LIBAPPINDICATOR_CFLAGS@ \
|
||||
@LIBEVENT_CFLAGS@ \
|
||||
@GTK_CFLAGS@ \
|
||||
@LIBCURL_CFLAGS@ \
|
||||
@ZLIB_CFLAGS@ \
|
||||
@PTHREAD_CFLAGS@
|
||||
|
||||
noinst_HEADERS = \
|
||||
actions.h \
|
||||
conf.h \
|
||||
details.h \
|
||||
dialogs.h \
|
||||
favicon.h \
|
||||
file-list.h \
|
||||
filter.h \
|
||||
hig.h \
|
||||
icons.h \
|
||||
makemeta-ui.h \
|
||||
msgwin.h \
|
||||
notify.h \
|
||||
open-dialog.h \
|
||||
relocate.h \
|
||||
stats.h \
|
||||
torrent-cell-renderer.h \
|
||||
transmission-resources.h \
|
||||
tr-core.h \
|
||||
tr-icon.h \
|
||||
tr-prefs.h \
|
||||
tr-window.h \
|
||||
util.h
|
||||
|
||||
bin_PROGRAMS = transmission-gtk
|
||||
|
||||
transmission_gtk_SOURCES = \
|
||||
actions.c \
|
||||
conf.c \
|
||||
details.c \
|
||||
dialogs.c \
|
||||
favicon.c \
|
||||
file-list.c \
|
||||
filter.c \
|
||||
hig.c \
|
||||
icons.c \
|
||||
main.c \
|
||||
makemeta-ui.c \
|
||||
msgwin.c \
|
||||
notify.c \
|
||||
open-dialog.c \
|
||||
relocate.c \
|
||||
stats.c \
|
||||
torrent-cell-renderer.c \
|
||||
transmission-resources.c \
|
||||
tr-core.c \
|
||||
tr-icon.c \
|
||||
tr-prefs.c \
|
||||
tr-window.c \
|
||||
util.c
|
||||
|
||||
dist_man_MANS = transmission-gtk.1
|
||||
|
||||
transmission_gtk_LDADD = \
|
||||
$(top_builddir)/libtransmission/libtransmission.a \
|
||||
@LIBUPNP_LIBS@ \
|
||||
@LIBNATPMP_LIBS@ \
|
||||
@DHT_LIBS@ \
|
||||
@LIBB64_LIBS@ \
|
||||
@LIBUTP_LIBS@ \
|
||||
@GTK_LIBS@ \
|
||||
@LIBAPPINDICATOR_LIBS@ \
|
||||
@LIBEVENT_LIBS@ \
|
||||
@LIBCURL_LIBS@ \
|
||||
@CRYPTO_LIBS@ \
|
||||
@ZLIB_LIBS@ \
|
||||
@PTHREAD_LIBS@ \
|
||||
${LIBM}
|
||||
|
||||
DESKTOP_IN_FILES=transmission-gtk.desktop.in
|
||||
DESKTOP_FILES=$(DESKTOP_IN_FILES:.desktop.in=.desktop)
|
||||
@INTLTOOL_DESKTOP_RULE@
|
||||
|
||||
Productivitydir = $(datadir)/applications
|
||||
Productivity_DATA = $(DESKTOP_FILES)
|
||||
|
||||
APPDATA_IN_FILES=transmission-gtk.appdata.xml.in
|
||||
APPDATA_FILES=$(APPDATA_IN_FILES:.xml.in=.xml)
|
||||
@INTLTOOL_XML_RULE@
|
||||
|
||||
appdatadir = $(datadir)/appdata
|
||||
appdata_DATA = $(APPDATA_FILES)
|
||||
|
||||
icon_DATA = transmission.png
|
||||
icondir = $(datadir)/pixmaps
|
||||
|
||||
UI_FILES = transmission-ui.xml
|
||||
|
||||
transmission-resources.c: transmission.gresource.xml $(UI_FILES)
|
||||
$(AM_V_GEN)glib-compile-resources --target=$@ --sourcedir=$(srcdir) \
|
||||
--generate-source --c-name transmission $<
|
||||
|
||||
transmission-resources.h: transmission.gresource.xml $(UI_FILES)
|
||||
$(AM_V_GEN)glib-compile-resources --target=$@ --sourcedir=$(srcdir) \
|
||||
--generate-header --c-name transmission $<
|
||||
|
||||
CLEANFILES += \
|
||||
transmission-resources.c \
|
||||
transmission-resources.h
|
||||
BUILT_SOURCES += \
|
||||
transmission-resources.c \
|
||||
transmission-resources.h
|
||||
|
||||
EXTRA_DIST = \
|
||||
$(DESKTOP_IN_FILES) \
|
||||
$(APPDATA_IN_FILES) \
|
||||
$(UI_FILES) \
|
||||
transmission.gresource.xml \
|
||||
transmission.png
|
||||
|
||||
DISTCLEANFILES = \
|
||||
$(DESKTOP_FILES) \
|
||||
$(APPDATA_FILES)
|
||||
|
||||
if WIN32
|
||||
|
||||
transmission.res: transmission.rc
|
||||
$(WINDRES) -J rc -i transmission.rc -O coff -o transmission.res
|
||||
|
||||
BUILT_SOURCES += transmission.res
|
||||
CLEANFILES += transmission.res
|
||||
transmission_gtk_LDADD += transmission.res
|
||||
transmission_gtk_LDFLAGS = -mwindows
|
||||
|
||||
endif
|
|
@ -1,83 +0,0 @@
|
|||
NULL =
|
||||
|
||||
public_icons_themes = \
|
||||
hicolor \
|
||||
$(NULL)
|
||||
|
||||
public_icons = \
|
||||
hicolor_apps_scalable_transmission.svg \
|
||||
hicolor_apps_scalable_transmission-devel.svg \
|
||||
hicolor_apps_symbolic_transmission-symbolic.svg \
|
||||
$(NULL)
|
||||
|
||||
private_icons = \
|
||||
$(NULL)
|
||||
|
||||
noinst_DATA = \
|
||||
lock.png \
|
||||
ratio.png \
|
||||
turtle-blue.png \
|
||||
turtle-grey.png \
|
||||
utilities.png \
|
||||
$(NULL)
|
||||
|
||||
EXTRA_DIST = \
|
||||
$(public_icons) \
|
||||
$(private_icons) \
|
||||
$(noinst_DATA) \
|
||||
$(NULL)
|
||||
|
||||
###############################################################################
|
||||
|
||||
gtk_update_icon_cache = gtk-update-icon-cache -f -t
|
||||
|
||||
update-icon-cache:
|
||||
@-if test -z "$(DESTDIR)"; then \
|
||||
echo "Updating Gtk icon cache."; \
|
||||
for theme in $(public_icons_themes); do \
|
||||
$(gtk_update_icon_cache) $(datadir)/icons/$$theme; \
|
||||
done; \
|
||||
else \
|
||||
echo "*** Icon cache not updated. After (un)install, run this:"; \
|
||||
for theme in $(public_icons_themes); do \
|
||||
echo "*** $(gtk_update_icon_cache) $(datadir)/icons/$$theme"; \
|
||||
done; \
|
||||
fi
|
||||
|
||||
install-icons:
|
||||
for icon in $(public_icons); do \
|
||||
THEME=`echo $$icon | cut -d_ -f1`; \
|
||||
CONTEXT=`echo $$icon | cut -d_ -f2`; \
|
||||
SIZE=`echo $$icon | cut -d_ -f3`; \
|
||||
ICONFILE=`echo $$icon | cut -d_ -f4`; \
|
||||
mkdir -p $(DESTDIR)$(datadir)/icons/$$THEME/$$SIZE/$$CONTEXT; \
|
||||
$(INSTALL_DATA) $(srcdir)/$$icon $(DESTDIR)$(datadir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \
|
||||
done; \
|
||||
for icon in $(private_icons); do \
|
||||
THEME=`echo $$icon | cut -d_ -f1`; \
|
||||
CONTEXT=`echo $$icon | cut -d_ -f2`; \
|
||||
SIZE=`echo $$icon | cut -d_ -f3`; \
|
||||
ICONFILE=`echo $$icon | cut -d_ -f4`; \
|
||||
mkdir -p $(DESTDIR)$(pkgdatadir)/icons/$$THEME/$$SIZE/$$CONTEXT; \
|
||||
$(INSTALL_DATA) $(srcdir)/$$icon $(DESTDIR)$(pkgdatadir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \
|
||||
done
|
||||
|
||||
uninstall-icons:
|
||||
-for icon in $(public_icons); do \
|
||||
THEME=`echo $$icon | cut -d_ -f1`; \
|
||||
CONTEXT=`echo $$icon | cut -d_ -f2`; \
|
||||
SIZE=`echo $$icon | cut -d_ -f3`; \
|
||||
ICONFILE=`echo $$icon | cut -d_ -f4`; \
|
||||
rm -f $(DESTDIR)$(datadir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \
|
||||
done; \
|
||||
for icon in $(private_icons); do \
|
||||
THEME=`echo $$icon | cut -d_ -f1`; \
|
||||
CONTEXT=`echo $$icon | cut -d_ -f2`; \
|
||||
SIZE=`echo $$icon | cut -d_ -f3`; \
|
||||
ICONFILE=`echo $$icon | cut -d_ -f4`; \
|
||||
rm -f $(DESTDIR)$(pkgdatadir)/icons/$$THEME/$$SIZE/$$CONTEXT/$$ICONFILE; \
|
||||
done
|
||||
|
||||
install-data-local: install-icons update-icon-cache
|
||||
|
||||
uninstall-local: uninstall-icons update-icon-cache
|
|
@ -1,199 +0,0 @@
|
|||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir) \
|
||||
-D__TRANSMISSION__ \
|
||||
-DPACKAGE_DATA_DIR=\""$(datadir)"\"
|
||||
|
||||
AM_CFLAGS = \
|
||||
@DHT_CFLAGS@ \
|
||||
@LIBB64_CFLAGS@ \
|
||||
@LIBUTP_CFLAGS@ \
|
||||
@LIBUPNP_CFLAGS@ \
|
||||
@LIBNATPMP_CFLAGS@ \
|
||||
@LIBEVENT_CFLAGS@ \
|
||||
@LIBCURL_CFLAGS@ \
|
||||
@CRYPTO_CFLAGS@ \
|
||||
@PTHREAD_CFLAGS@ \
|
||||
@ZLIB_CFLAGS@
|
||||
|
||||
noinst_LIBRARIES = libtransmission.a
|
||||
|
||||
libtransmission_a_SOURCES = \
|
||||
announcer.c \
|
||||
announcer-http.c \
|
||||
announcer-udp.c \
|
||||
bandwidth.c \
|
||||
bitfield.c \
|
||||
blocklist.c \
|
||||
cache.c \
|
||||
clients.c \
|
||||
completion.c \
|
||||
ConvertUTF.c \
|
||||
crypto.c \
|
||||
crypto-utils.c \
|
||||
crypto-utils-fallback.c \
|
||||
error.c \
|
||||
fdlimit.c \
|
||||
file.c \
|
||||
handshake.c \
|
||||
history.c \
|
||||
inout.c \
|
||||
jsonsl.c \
|
||||
list.c \
|
||||
log.c \
|
||||
magnet.c \
|
||||
makemeta.c \
|
||||
metainfo.c \
|
||||
natpmp.c \
|
||||
net.c \
|
||||
peer-io.c \
|
||||
peer-mgr.c \
|
||||
peer-msgs.c \
|
||||
platform.c \
|
||||
platform-quota.c \
|
||||
port-forwarding.c \
|
||||
ptrarray.c \
|
||||
quark.c \
|
||||
resume.c \
|
||||
rpcimpl.c \
|
||||
rpc-server.c \
|
||||
session.c \
|
||||
session-id.c \
|
||||
stats.c \
|
||||
torrent.c \
|
||||
torrent-ctor.c \
|
||||
torrent-magnet.c \
|
||||
tr-assert.c \
|
||||
tr-dht.c \
|
||||
tr-lpd.c \
|
||||
tr-udp.c \
|
||||
tr-utp.c \
|
||||
tr-getopt.c \
|
||||
trevent.c \
|
||||
upnp.c \
|
||||
utils.c \
|
||||
variant.c \
|
||||
variant-benc.c \
|
||||
variant-json.c \
|
||||
verify.c \
|
||||
watchdir.c \
|
||||
watchdir-generic.c \
|
||||
web.c \
|
||||
webseed.c \
|
||||
wildmat.c
|
||||
|
||||
if USE_INOTIFY
|
||||
libtransmission_a_SOURCES += watchdir-inotify.c
|
||||
AM_CPPFLAGS += -DWITH_INOTIFY
|
||||
endif
|
||||
|
||||
if USE_KQUEUE
|
||||
libtransmission_a_SOURCES += watchdir-kqueue.c
|
||||
AM_CPPFLAGS += -DWITH_KQUEUE
|
||||
endif
|
||||
|
||||
if WIN32
|
||||
libtransmission_a_SOURCES += file-win32.c subprocess-win32.c watchdir-win32.c
|
||||
else
|
||||
libtransmission_a_SOURCES += file-posix.c subprocess-posix.c
|
||||
endif
|
||||
|
||||
if CRYPTO_USE_OPENSSL
|
||||
libtransmission_a_SOURCES += crypto-utils-openssl.c
|
||||
endif
|
||||
if CRYPTO_USE_CYASSL
|
||||
libtransmission_a_SOURCES += crypto-utils-cyassl.c
|
||||
if CYASSL_IS_WOLFSSL
|
||||
AM_CPPFLAGS += -DCYASSL_IS_WOLFSSL
|
||||
endif
|
||||
endif
|
||||
if CRYPTO_USE_POLARSSL
|
||||
libtransmission_a_SOURCES += crypto-utils-polarssl.c
|
||||
if POLARSSL_IS_MBEDTLS
|
||||
AM_CPPFLAGS += -DPOLARSSL_IS_MBEDTLS
|
||||
endif
|
||||
endif
|
||||
|
||||
noinst_HEADERS = \
|
||||
announcer.h \
|
||||
announcer-common.h \
|
||||
bandwidth.h \
|
||||
bitfield.h \
|
||||
blocklist.h \
|
||||
cache.h \
|
||||
clients.h \
|
||||
ConvertUTF.h \
|
||||
crypto.h \
|
||||
crypto-utils.h \
|
||||
completion.h \
|
||||
error.h \
|
||||
error-types.h \
|
||||
fdlimit.h \
|
||||
file.h \
|
||||
handshake.h \
|
||||
history.h \
|
||||
inout.h \
|
||||
jsonsl.c \
|
||||
jsonsl.h \
|
||||
list.h \
|
||||
log.h \
|
||||
magnet.h \
|
||||
makemeta.h \
|
||||
metainfo.h \
|
||||
natpmp_local.h \
|
||||
net.h \
|
||||
peer-common.h \
|
||||
peer-io.h \
|
||||
peer-mgr.h \
|
||||
peer-msgs.h \
|
||||
peer-socket.h \
|
||||
platform.h \
|
||||
platform-quota.h \
|
||||
port-forwarding.h \
|
||||
ptrarray.h \
|
||||
quark.h \
|
||||
resume.h \
|
||||
rpcimpl.h \
|
||||
rpc-server.h \
|
||||
session.h \
|
||||
session-id.h \
|
||||
stats.h \
|
||||
subprocess.h \
|
||||
torrent.h \
|
||||
torrent-magnet.h \
|
||||
tr-getopt.h \
|
||||
transmission.h \
|
||||
tr-assert.h \
|
||||
tr-dht.h \
|
||||
tr-macros.h \
|
||||
tr-udp.h \
|
||||
tr-utp.h \
|
||||
tr-lpd.h \
|
||||
trevent.h \
|
||||
upnp.h \
|
||||
utils.h \
|
||||
variant.h \
|
||||
variant-common.h \
|
||||
verify.h \
|
||||
version.h \
|
||||
watchdir.h \
|
||||
watchdir-common.h \
|
||||
web.h \
|
||||
webseed.h
|
||||
|
||||
noinst_PROGRAMS = $(TESTS)
|
||||
|
||||
apps_ldadd = \
|
||||
./libtransmission.a \
|
||||
@LIBUPNP_LIBS@ \
|
||||
@LIBNATPMP_LIBS@ \
|
||||
@INTLLIBS@ \
|
||||
@DHT_LIBS@ \
|
||||
@LIBB64_LIBS@ \
|
||||
@LIBUTP_LIBS@ \
|
||||
@LIBCURL_LIBS@ \
|
||||
@LIBEVENT_LIBS@ \
|
||||
@CRYPTO_LIBS@ \
|
||||
@PTHREAD_LIBS@ \
|
||||
@ZLIB_LIBS@ \
|
||||
${LIBM}
|
||||
|
|
@ -1,208 +0,0 @@
|
|||
# URL: http://autoconf-archive.cryp.to/acx_pthread.html
|
||||
# Author: Steven G. Johnson <stevenj@alum.mit.edu>
|
||||
# Revised: 2007-07-29
|
||||
#
|
||||
# Copyright © 2007 Steven G. Johnson <stevenj@alum.mit.edu>
|
||||
#
|
||||
# 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 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
|
||||
AC_DEFUN([ACX_PTHREAD], [
|
||||
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_C
|
||||
acx_pthread_ok=no
|
||||
|
||||
# We used to check for pthread.h first, but this fails if pthread.h
|
||||
# requires special compiler flags (e.g. on True64 or Sequent).
|
||||
# It gets checked for in the link test anyway.
|
||||
|
||||
# First of all, check if the user has set any of the PTHREAD_LIBS,
|
||||
# etcetera environment variables, and if threads linking works using
|
||||
# them:
|
||||
if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
|
||||
save_LIBS="$LIBS"
|
||||
LIBS="$PTHREAD_LIBS $LIBS"
|
||||
AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
|
||||
AC_TRY_LINK_FUNC(pthread_join, acx_pthread_ok=yes)
|
||||
AC_MSG_RESULT($acx_pthread_ok)
|
||||
if test x"$acx_pthread_ok" = xno; then
|
||||
PTHREAD_LIBS=""
|
||||
PTHREAD_CFLAGS=""
|
||||
fi
|
||||
LIBS="$save_LIBS"
|
||||
CFLAGS="$save_CFLAGS"
|
||||
fi
|
||||
|
||||
# We must check for the threads library under a number of different
|
||||
# names; the ordering is very important because some systems
|
||||
# (e.g. DEC) have both -lpthread and -lpthreads, where one of the
|
||||
# libraries is broken (non-POSIX).
|
||||
|
||||
# Create a list of thread flags to try. Items starting with a "-" are
|
||||
# C compiler flags, and other items are library names, except for "none"
|
||||
# which indicates that we try without any flags at all, and "pthread-config"
|
||||
# which is a program returning the flags for the Pth emulation library.
|
||||
|
||||
acx_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config"
|
||||
|
||||
# The ordering *is* (sometimes) important. Some notes on the
|
||||
# individual items follow:
|
||||
|
||||
# pthreads: AIX (must check this before -lpthread)
|
||||
# none: in case threads are in libc; should be tried before -Kthread and
|
||||
# other compiler flags to prevent continual compiler warnings
|
||||
# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h)
|
||||
# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able)
|
||||
# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread)
|
||||
# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads)
|
||||
# -pthreads: Solaris/gcc
|
||||
# -mthreads: Mingw32/gcc, Lynx/gcc
|
||||
# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it
|
||||
# doesn't hurt to check since this sometimes defines pthreads too;
|
||||
# also defines -D_REENTRANT)
|
||||
# ... -mt is also the pthreads flag for HP/aCC
|
||||
# pthread: Linux, etcetera
|
||||
# --thread-safe: KAI C++
|
||||
# pthread-config: use pthread-config program (for GNU Pth library)
|
||||
|
||||
case "${host_cpu}-${host_os}" in
|
||||
*solaris*)
|
||||
|
||||
# On Solaris (at least, for some versions), libc contains stubbed
|
||||
# (non-functional) versions of the pthreads routines, so link-based
|
||||
# tests will erroneously succeed. (We need to link with -pthreads/-mt/
|
||||
# -lpthread.) (The stubs are missing pthread_cleanup_push, or rather
|
||||
# a function called by this macro, so we could check for that, but
|
||||
# who knows whether they'll stub that too in a future libc.) So,
|
||||
# we'll just look for -pthreads and -lpthread first:
|
||||
|
||||
acx_pthread_flags="-pthreads pthread -mt -pthread $acx_pthread_flags"
|
||||
;;
|
||||
esac
|
||||
|
||||
if test x"$acx_pthread_ok" = xno; then
|
||||
for flag in $acx_pthread_flags; do
|
||||
|
||||
case $flag in
|
||||
none)
|
||||
AC_MSG_CHECKING([whether pthreads work without any flags])
|
||||
;;
|
||||
|
||||
-*)
|
||||
AC_MSG_CHECKING([whether pthreads work with $flag])
|
||||
PTHREAD_CFLAGS="$flag"
|
||||
;;
|
||||
|
||||
pthread-config)
|
||||
AC_CHECK_PROG(acx_pthread_config, pthread-config, yes, no)
|
||||
if test x"$acx_pthread_config" = xno; then continue; fi
|
||||
PTHREAD_CFLAGS="`pthread-config --cflags`"
|
||||
PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
|
||||
;;
|
||||
|
||||
*)
|
||||
AC_MSG_CHECKING([for the pthreads library -l$flag])
|
||||
PTHREAD_LIBS="-l$flag"
|
||||
;;
|
||||
esac
|
||||
|
||||
save_LIBS="$LIBS"
|
||||
save_CFLAGS="$CFLAGS"
|
||||
LIBS="$PTHREAD_LIBS $LIBS"
|
||||
CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
|
||||
|
||||
# Check for various functions. We must include pthread.h,
|
||||
# since some functions may be macros. (On the Sequent, we
|
||||
# need a special flag -Kthread to make this header compile.)
|
||||
# We check for pthread_join because it is in -lpthread on IRIX
|
||||
# while pthread_create is in libc. We check for pthread_attr_init
|
||||
# due to DEC craziness with -lpthreads. We check for
|
||||
# pthread_cleanup_push because it is one of the few pthread
|
||||
# functions on Solaris that doesn't have a non-functional libc stub.
|
||||
# We try pthread_create on general principles.
|
||||
AC_TRY_LINK([#include <pthread.h>],
|
||||
[pthread_t th; pthread_join(th, 0);
|
||||
pthread_attr_init(0); pthread_cleanup_push(0, 0);
|
||||
pthread_create(0,0,0,0); pthread_cleanup_pop(0); ],
|
||||
[acx_pthread_ok=yes])
|
||||
|
||||
LIBS="$save_LIBS"
|
||||
CFLAGS="$save_CFLAGS"
|
||||
|
||||
AC_MSG_RESULT($acx_pthread_ok)
|
||||
if test "x$acx_pthread_ok" = xyes; then
|
||||
break;
|
||||
fi
|
||||
|
||||
PTHREAD_LIBS=""
|
||||
PTHREAD_CFLAGS=""
|
||||
done
|
||||
fi
|
||||
|
||||
# Various other checks:
|
||||
if test "x$acx_pthread_ok" = xyes; then
|
||||
save_LIBS="$LIBS"
|
||||
LIBS="$PTHREAD_LIBS $LIBS"
|
||||
save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
|
||||
|
||||
# Detect AIX lossage: JOINABLE attribute is called UNDETACHED.
|
||||
AC_MSG_CHECKING([for joinable pthread attribute])
|
||||
attr_name=unknown
|
||||
for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do
|
||||
AC_TRY_LINK([#include <pthread.h>], [int attr=$attr; return attr;],
|
||||
[attr_name=$attr; break])
|
||||
done
|
||||
AC_MSG_RESULT($attr_name)
|
||||
if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
|
||||
AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name,
|
||||
[Define to necessary symbol if this constant
|
||||
uses a non-standard name on your system.])
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING([if more special flags are required for pthreads])
|
||||
flag=no
|
||||
case "${host_cpu}-${host_os}" in
|
||||
*-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";;
|
||||
*solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";;
|
||||
esac
|
||||
AC_MSG_RESULT(${flag})
|
||||
if test "x$flag" != xno; then
|
||||
PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
|
||||
fi
|
||||
|
||||
LIBS="$save_LIBS"
|
||||
CFLAGS="$save_CFLAGS"
|
||||
|
||||
# More AIX lossage: must compile with xlc_r or cc_r
|
||||
if test x"$GCC" != xyes; then
|
||||
AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC})
|
||||
else
|
||||
PTHREAD_CC=$CC
|
||||
fi
|
||||
else
|
||||
PTHREAD_CC="$CC"
|
||||
fi
|
||||
|
||||
AC_SUBST(PTHREAD_LIBS)
|
||||
AC_SUBST(PTHREAD_CFLAGS)
|
||||
AC_SUBST(PTHREAD_CC)
|
||||
|
||||
# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
|
||||
if test x"$acx_pthread_ok" = xyes; then
|
||||
ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1])
|
||||
:
|
||||
else
|
||||
acx_pthread_ok=no
|
||||
$2
|
||||
fi
|
||||
AC_LANG_RESTORE
|
||||
])dnl ACX_PTHREAD
|
||||
|
||||
|
|
@ -1,70 +0,0 @@
|
|||
# ===========================================================================
|
||||
# http://autoconf-archive.cryp.to/check_ssl.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
# CHECK_SSL
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
# This macro will check various standard spots for OpenSSL including a
|
||||
# user-supplied directory. The user uses '--with-ssl' or
|
||||
# '--with-ssl=/path/to/ssl' as arguments to configure.
|
||||
#
|
||||
# If OpenSSL is found the include directory gets added to CFLAGS and
|
||||
# CXXFLAGS as well as '-DHAVE_SSL', '-lssl' & '-lcrypto' get added to
|
||||
# LIBS, and the libraries location gets added to LDFLAGS. Finally
|
||||
# 'HAVE_SSL' gets set to 'yes' for use in your Makefile.in I use it like
|
||||
# so (valid for gmake):
|
||||
#
|
||||
# HAVE_SSL = @HAVE_SSL@
|
||||
# ifeq ($(HAVE_SSL),yes)
|
||||
# SRCS+= @srcdir@/my_file_that_needs_ssl.c
|
||||
# endif
|
||||
#
|
||||
# For bsd 'bmake' use:
|
||||
#
|
||||
# .if ${HAVE_SSL} == "yes"
|
||||
# SRCS+= @srcdir@/my_file_that_needs_ssl.c
|
||||
# .endif
|
||||
#
|
||||
# LAST MODIFICATION
|
||||
#
|
||||
# 2008-04-12
|
||||
#
|
||||
# COPYLEFT
|
||||
#
|
||||
# Copyright (c) 2008 Mark Ethan Trostler <trostler@juniper.net>
|
||||
#
|
||||
# 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.
|
||||
|
||||
AC_DEFUN([CHECK_SSL],
|
||||
[
|
||||
AC_MSG_CHECKING([for OpenSSL])
|
||||
|
||||
for dir in $with_ssl /usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/local /usr; do
|
||||
ssldir="$dir"
|
||||
if test -f "$dir/include/openssl/ssl.h"; then
|
||||
found_ssl="yes";
|
||||
OPENSSL_CFLAGS="-I$ssldir/include";
|
||||
break;
|
||||
fi
|
||||
if test -f "$dir/include/ssl.h"; then
|
||||
found_ssl="yes";
|
||||
OPENSSL_CFLAGS="-I$ssldir/include";
|
||||
break
|
||||
fi
|
||||
done
|
||||
if test x_$found_ssl != x_yes; then
|
||||
AC_MSG_ERROR([Cannot locate ssl])
|
||||
else
|
||||
AC_MSG_RESULT([$ssldir])
|
||||
OPENSSL_LIBS="-L$ssldir/lib -lssl -lcrypto";
|
||||
fi
|
||||
])dnl
|
||||
|
||||
AC_SUBST(OPENSSL_CFLAGS)
|
||||
AC_SUBST(OPENSSL_LIBS)
|
|
@ -1,398 +0,0 @@
|
|||
# Copyright (C) 1995-2002 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2001-2003,2004 Red Hat, Inc.
|
||||
#
|
||||
# This file is free software, distributed under the terms of the GNU
|
||||
# General Public License. As a special exception to the GNU General
|
||||
# Public License, this file may be distributed as part of a program
|
||||
# that contains a configuration script generated by Autoconf, under
|
||||
# the same distribution terms as the rest of that program.
|
||||
#
|
||||
# This file can be copied and used freely without restrictions. It can
|
||||
# be used in projects which are not available under the GNU Public License
|
||||
# but which still want to provide support for the GNU gettext functionality.
|
||||
#
|
||||
# Macro to add for using GNU gettext.
|
||||
# Ulrich Drepper <drepper@cygnus.com>, 1995, 1996
|
||||
#
|
||||
# Modified to never use included libintl.
|
||||
# Owen Taylor <otaylor@redhat.com>, 12/15/1998
|
||||
#
|
||||
# Major rework to remove unused code
|
||||
# Owen Taylor <otaylor@redhat.com>, 12/11/2002
|
||||
#
|
||||
# Added better handling of ALL_LINGUAS from GNU gettext version
|
||||
# written by Bruno Haible, Owen Taylor <otaylor.redhat.com> 5/30/3002
|
||||
#
|
||||
# Modified to require ngettext
|
||||
# Matthias Clasen <mclasen@redhat.com> 08/06/2004
|
||||
#
|
||||
# We need this here as well, since someone might use autoconf-2.5x
|
||||
# to configure GLib then an older version to configure a package
|
||||
# using AM_GLIB_GNU_GETTEXT
|
||||
AC_PREREQ(2.53)
|
||||
|
||||
dnl
|
||||
dnl We go to great lengths to make sure that aclocal won't
|
||||
dnl try to pull in the installed version of these macros
|
||||
dnl when running aclocal in the glib directory.
|
||||
dnl
|
||||
m4_copy_force([AC_DEFUN],[glib_DEFUN])
|
||||
m4_copy_force([AC_REQUIRE],[glib_REQUIRE])
|
||||
dnl
|
||||
dnl At the end, if we're not within glib, we'll define the public
|
||||
dnl definitions in terms of our private definitions.
|
||||
dnl
|
||||
|
||||
# GLIB_LC_MESSAGES
|
||||
#--------------------
|
||||
glib_DEFUN([GLIB_LC_MESSAGES],
|
||||
[AC_CHECK_HEADERS([locale.h])
|
||||
if test $ac_cv_header_locale_h = yes; then
|
||||
AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
|
||||
[AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
|
||||
am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
|
||||
if test $am_cv_val_LC_MESSAGES = yes; then
|
||||
AC_DEFINE(HAVE_LC_MESSAGES, 1,
|
||||
[Define if your <locale.h> file defines LC_MESSAGES.])
|
||||
fi
|
||||
fi])
|
||||
|
||||
# GLIB_PATH_PROG_WITH_TEST
|
||||
#----------------------------
|
||||
dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
|
||||
dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
|
||||
glib_DEFUN([GLIB_PATH_PROG_WITH_TEST],
|
||||
[# Extract the first word of "$2", so it can be a program name with args.
|
||||
set dummy $2; ac_word=[$]2
|
||||
AC_MSG_CHECKING([for $ac_word])
|
||||
AC_CACHE_VAL(ac_cv_path_$1,
|
||||
[case "[$]$1" in
|
||||
/*)
|
||||
ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
|
||||
;;
|
||||
*)
|
||||
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
|
||||
for ac_dir in ifelse([$5], , $PATH, [$5]); do
|
||||
test -z "$ac_dir" && ac_dir=.
|
||||
if test -f $ac_dir/$ac_word; then
|
||||
if [$3]; then
|
||||
ac_cv_path_$1="$ac_dir/$ac_word"
|
||||
break
|
||||
fi
|
||||
fi
|
||||
done
|
||||
IFS="$ac_save_ifs"
|
||||
dnl If no 4th arg is given, leave the cache variable unset,
|
||||
dnl so AC_PATH_PROGS will keep looking.
|
||||
ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
|
||||
])dnl
|
||||
;;
|
||||
esac])dnl
|
||||
$1="$ac_cv_path_$1"
|
||||
if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
|
||||
AC_MSG_RESULT([$]$1)
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
AC_SUBST($1)dnl
|
||||
])
|
||||
|
||||
# GLIB_WITH_NLS
|
||||
#-----------------
|
||||
glib_DEFUN([GLIB_WITH_NLS],
|
||||
dnl NLS is obligatory
|
||||
[USE_NLS=yes
|
||||
AC_SUBST(USE_NLS)
|
||||
|
||||
gt_cv_have_gettext=no
|
||||
|
||||
CATOBJEXT=NONE
|
||||
XGETTEXT=:
|
||||
INTLLIBS=
|
||||
|
||||
AC_CHECK_HEADER(libintl.h,
|
||||
[gt_cv_func_dgettext_libintl="no"
|
||||
libintl_extra_libs=""
|
||||
|
||||
#
|
||||
# First check in libc
|
||||
#
|
||||
AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc,
|
||||
[AC_TRY_LINK([
|
||||
#include <libintl.h>
|
||||
],
|
||||
[return !ngettext ("","", 1)],
|
||||
gt_cv_func_ngettext_libc=yes,
|
||||
gt_cv_func_ngettext_libc=no)
|
||||
])
|
||||
|
||||
if test "$gt_cv_func_ngettext_libc" = "yes" ; then
|
||||
AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
|
||||
[AC_TRY_LINK([
|
||||
#include <libintl.h>
|
||||
],
|
||||
[return !dgettext ("","")],
|
||||
gt_cv_func_dgettext_libc=yes,
|
||||
gt_cv_func_dgettext_libc=no)
|
||||
])
|
||||
fi
|
||||
|
||||
if test "$gt_cv_func_ngettext_libc" = "yes" ; then
|
||||
AC_CHECK_FUNCS(bind_textdomain_codeset)
|
||||
fi
|
||||
|
||||
#
|
||||
# If we don't have everything we want, check in libintl
|
||||
#
|
||||
if test "$gt_cv_func_dgettext_libc" != "yes" \
|
||||
|| test "$gt_cv_func_ngettext_libc" != "yes" \
|
||||
|| test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
|
||||
|
||||
AC_CHECK_LIB(intl, bindtextdomain,
|
||||
[AC_CHECK_LIB(intl, ngettext,
|
||||
[AC_CHECK_LIB(intl, dgettext,
|
||||
gt_cv_func_dgettext_libintl=yes)])])
|
||||
|
||||
if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
|
||||
AC_MSG_CHECKING([if -liconv is needed to use gettext])
|
||||
AC_MSG_RESULT([])
|
||||
AC_CHECK_LIB(intl, ngettext,
|
||||
[AC_CHECK_LIB(intl, dcgettext,
|
||||
[gt_cv_func_dgettext_libintl=yes
|
||||
libintl_extra_libs=-liconv],
|
||||
:,-liconv)],
|
||||
:,-liconv)
|
||||
fi
|
||||
|
||||
#
|
||||
# If we found libintl, then check in it for bind_textdomain_codeset();
|
||||
# we'll prefer libc if neither have bind_textdomain_codeset(),
|
||||
# and both have dgettext and ngettext
|
||||
#
|
||||
if test "$gt_cv_func_dgettext_libintl" = "yes" ; then
|
||||
glib_save_LIBS="$LIBS"
|
||||
LIBS="$LIBS -lintl $libintl_extra_libs"
|
||||
unset ac_cv_func_bind_textdomain_codeset
|
||||
AC_CHECK_FUNCS(bind_textdomain_codeset)
|
||||
LIBS="$glib_save_LIBS"
|
||||
|
||||
if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then
|
||||
gt_cv_func_dgettext_libc=no
|
||||
else
|
||||
if test "$gt_cv_func_dgettext_libc" = "yes" \
|
||||
&& test "$gt_cv_func_ngettext_libc" = "yes"; then
|
||||
gt_cv_func_dgettext_libintl=no
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$gt_cv_func_dgettext_libc" = "yes" \
|
||||
|| test "$gt_cv_func_dgettext_libintl" = "yes"; then
|
||||
gt_cv_have_gettext=yes
|
||||
fi
|
||||
|
||||
if test "$gt_cv_func_dgettext_libintl" = "yes"; then
|
||||
INTLLIBS="-lintl $libintl_extra_libs"
|
||||
fi
|
||||
|
||||
if test "$gt_cv_have_gettext" = "yes"; then
|
||||
AC_DEFINE(HAVE_GETTEXT,1,
|
||||
[Define if the GNU gettext() function is already present or preinstalled.])
|
||||
GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
|
||||
[test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
|
||||
if test "$MSGFMT" != "no"; then
|
||||
glib_save_LIBS="$LIBS"
|
||||
LIBS="$LIBS $INTLLIBS"
|
||||
AC_CHECK_FUNCS(dcgettext)
|
||||
AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
|
||||
GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
|
||||
[test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
|
||||
AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
|
||||
return _nl_msg_cat_cntr],
|
||||
[CATOBJEXT=.gmo
|
||||
DATADIRNAME=share],
|
||||
[case $host in
|
||||
*-*-solaris*)
|
||||
dnl On Solaris, if bind_textdomain_codeset is in libc,
|
||||
dnl GNU format message catalog is always supported,
|
||||
dnl since both are added to the libc all together.
|
||||
dnl Hence, we'd like to go with DATADIRNAME=share and
|
||||
dnl and CATOBJEXT=.gmo in this case.
|
||||
AC_CHECK_FUNC(bind_textdomain_codeset,
|
||||
[CATOBJEXT=.gmo
|
||||
DATADIRNAME=share],
|
||||
[CATOBJEXT=.mo
|
||||
DATADIRNAME=lib])
|
||||
;;
|
||||
*)
|
||||
CATOBJEXT=.mo
|
||||
DATADIRNAME=lib
|
||||
;;
|
||||
esac])
|
||||
LIBS="$glib_save_LIBS"
|
||||
INSTOBJEXT=.mo
|
||||
else
|
||||
gt_cv_have_gettext=no
|
||||
fi
|
||||
fi
|
||||
])
|
||||
|
||||
if test "$gt_cv_have_gettext" = "yes" ; then
|
||||
AC_DEFINE(ENABLE_NLS, 1,
|
||||
[always defined to indicate that i18n is enabled])
|
||||
fi
|
||||
|
||||
dnl Test whether we really found GNU xgettext.
|
||||
if test "$XGETTEXT" != ":"; then
|
||||
dnl If it is not GNU xgettext we define it as : so that the
|
||||
dnl Makefiles still can work.
|
||||
if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
|
||||
: ;
|
||||
else
|
||||
AC_MSG_RESULT(
|
||||
[found xgettext program is not GNU xgettext; ignore it])
|
||||
XGETTEXT=":"
|
||||
fi
|
||||
fi
|
||||
|
||||
# We need to process the po/ directory.
|
||||
POSUB=po
|
||||
|
||||
AC_OUTPUT_COMMANDS(
|
||||
[case "$CONFIG_FILES" in *po/Makefile.in*)
|
||||
sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
|
||||
esac])
|
||||
|
||||
dnl These rules are solely for the distribution goal. While doing this
|
||||
dnl we only have to keep exactly one list of the available catalogs
|
||||
dnl in configure.in.
|
||||
for lang in $ALL_LINGUAS; do
|
||||
GMOFILES="$GMOFILES $lang.gmo"
|
||||
POFILES="$POFILES $lang.po"
|
||||
done
|
||||
|
||||
dnl Make all variables we use known to autoconf.
|
||||
AC_SUBST(CATALOGS)
|
||||
AC_SUBST(CATOBJEXT)
|
||||
AC_SUBST(DATADIRNAME)
|
||||
AC_SUBST(GMOFILES)
|
||||
AC_SUBST(INSTOBJEXT)
|
||||
AC_SUBST(INTLLIBS)
|
||||
AC_SUBST(PO_IN_DATADIR_TRUE)
|
||||
AC_SUBST(PO_IN_DATADIR_FALSE)
|
||||
AC_SUBST(POFILES)
|
||||
AC_SUBST(POSUB)
|
||||
])
|
||||
|
||||
# AM_GLIB_GNU_GETTEXT
|
||||
# -------------------
|
||||
# Do checks necessary for use of gettext. If a suitable implementation
|
||||
# of gettext is found in either in libintl or in the C library,
|
||||
# it will set INTLLIBS to the libraries needed for use of gettext
|
||||
# and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable
|
||||
# gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST()
|
||||
# on various variables needed by the Makefile.in.in installed by
|
||||
# glib-gettextize.
|
||||
dnl
|
||||
glib_DEFUN([GLIB_GNU_GETTEXT],
|
||||
[AC_REQUIRE([AC_PROG_CC])dnl
|
||||
AC_REQUIRE([AC_HEADER_STDC])dnl
|
||||
|
||||
GLIB_LC_MESSAGES
|
||||
GLIB_WITH_NLS
|
||||
|
||||
if test "$gt_cv_have_gettext" = "yes"; then
|
||||
if test "x$ALL_LINGUAS" = "x"; then
|
||||
LINGUAS=
|
||||
else
|
||||
AC_MSG_CHECKING(for catalogs to be installed)
|
||||
NEW_LINGUAS=
|
||||
for presentlang in $ALL_LINGUAS; do
|
||||
useit=no
|
||||
if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then
|
||||
desiredlanguages="$LINGUAS"
|
||||
else
|
||||
desiredlanguages="$ALL_LINGUAS"
|
||||
fi
|
||||
for desiredlang in $desiredlanguages; do
|
||||
# Use the presentlang catalog if desiredlang is
|
||||
# a. equal to presentlang, or
|
||||
# b. a variant of presentlang (because in this case,
|
||||
# presentlang can be used as a fallback for messages
|
||||
# which are not translated in the desiredlang catalog).
|
||||
case "$desiredlang" in
|
||||
"$presentlang"*) useit=yes;;
|
||||
esac
|
||||
done
|
||||
if test $useit = yes; then
|
||||
NEW_LINGUAS="$NEW_LINGUAS $presentlang"
|
||||
fi
|
||||
done
|
||||
LINGUAS=$NEW_LINGUAS
|
||||
AC_MSG_RESULT($LINGUAS)
|
||||
fi
|
||||
|
||||
dnl Construct list of names of catalog files to be constructed.
|
||||
if test -n "$LINGUAS"; then
|
||||
for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
|
||||
fi
|
||||
fi
|
||||
|
||||
dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
|
||||
dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
|
||||
dnl Try to locate is.
|
||||
MKINSTALLDIRS=
|
||||
if test -n "$ac_aux_dir"; then
|
||||
MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
|
||||
fi
|
||||
if test -z "$MKINSTALLDIRS"; then
|
||||
MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
|
||||
fi
|
||||
AC_SUBST(MKINSTALLDIRS)
|
||||
|
||||
dnl Generate list of files to be processed by xgettext which will
|
||||
dnl be included in po/Makefile.
|
||||
test -d po || mkdir po
|
||||
if test "x$srcdir" != "x."; then
|
||||
if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
|
||||
posrcprefix="$srcdir/"
|
||||
else
|
||||
posrcprefix="../$srcdir/"
|
||||
fi
|
||||
else
|
||||
posrcprefix="../"
|
||||
fi
|
||||
rm -f po/POTFILES
|
||||
sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
|
||||
< $srcdir/po/POTFILES.in > po/POTFILES
|
||||
])
|
||||
|
||||
# AM_GLIB_DEFINE_LOCALEDIR(VARIABLE)
|
||||
# -------------------------------
|
||||
# Define VARIABLE to the location where catalog files will
|
||||
# be installed by po/Makefile.
|
||||
glib_DEFUN([GLIB_DEFINE_LOCALEDIR],
|
||||
[glib_REQUIRE([GLIB_GNU_GETTEXT])dnl
|
||||
glib_save_prefix="$prefix"
|
||||
glib_save_exec_prefix="$exec_prefix"
|
||||
test "x$prefix" = xNONE && prefix=$ac_default_prefix
|
||||
test "x$exec_prefix" = xNONE && exec_prefix=$prefix
|
||||
if test "x$CATOBJEXT" = "x.mo" ; then
|
||||
localedir=`eval echo "${libdir}/locale"`
|
||||
else
|
||||
localedir=`eval echo "${datadir}/locale"`
|
||||
fi
|
||||
prefix="$glib_save_prefix"
|
||||
exec_prefix="$glib_save_exec_prefix"
|
||||
AC_DEFINE_UNQUOTED($1, "$localedir",
|
||||
[Define the location where the catalogs will be installed])
|
||||
])
|
||||
|
||||
dnl
|
||||
dnl Now the definitions that aclocal will find
|
||||
dnl
|
||||
ifdef(glib_configure_in,[],[
|
||||
AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)])
|
||||
AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)])
|
||||
])dnl
|
157
m4/pkg.m4
157
m4/pkg.m4
|
@ -1,157 +0,0 @@
|
|||
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
|
||||
#
|
||||
# Copyright © 2004 Scott James Remnant <scott@netsplit.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 of the License, 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, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# 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.
|
||||
|
||||
# PKG_PROG_PKG_CONFIG([MIN-VERSION])
|
||||
# ----------------------------------
|
||||
AC_DEFUN([PKG_PROG_PKG_CONFIG],
|
||||
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
|
||||
m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
|
||||
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
|
||||
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
|
||||
])# PKG_PROG_PKG_CONFIG
|
||||
|
||||
# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
|
||||
#
|
||||
# Check to see whether a particular set of modules exists. Similar
|
||||
# to PKG_CHECK_MODULES(), but does not set variables or print errors.
|
||||
#
|
||||
#
|
||||
# Similar to PKG_CHECK_MODULES, make sure that the first instance of
|
||||
# this or PKG_CHECK_MODULES is called, or make sure 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_ifval([$2], [$2], [:])
|
||||
m4_ifvaln([$3], [else
|
||||
$3])dnl
|
||||
fi])
|
||||
|
||||
|
||||
# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
|
||||
# ---------------------------------------------
|
||||
m4_define([_PKG_CONFIG],
|
||||
[if test -n "$PKG_CONFIG"; then
|
||||
if test -n "$$1"; then
|
||||
pkg_cv_[]$1="$$1"
|
||||
else
|
||||
PKG_CHECK_EXISTS([$3],
|
||||
[pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
|
||||
[pkg_failed=yes])
|
||||
fi
|
||||
else
|
||||
pkg_failed=untried
|
||||
fi[]dnl
|
||||
])# _PKG_CONFIG
|
||||
|
||||
# _PKG_SHORT_ERRORS_SUPPORTED
|
||||
# -----------------------------
|
||||
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
|
||||
])# _PKG_SHORT_ERRORS_SUPPORTED
|
||||
|
||||
|
||||
# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
|
||||
# [ACTION-IF-NOT-FOUND])
|
||||
#
|
||||
#
|
||||
# Note that if there is a possibility the first call to
|
||||
# PKG_CHECK_MODULES might not happen, you should be sure to include an
|
||||
# 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 $1])
|
||||
|
||||
_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
|
||||
_PKG_SHORT_ERRORS_SUPPORTED
|
||||
if test $_pkg_short_errors_supported = yes; then
|
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"`
|
||||
else
|
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
|
||||
fi
|
||||
# Put the nasty error message in config.log where it belongs
|
||||
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
|
||||
|
||||
ifelse([$4], , [AC_MSG_ERROR(dnl
|
||||
[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
|
||||
])],
|
||||
[AC_MSG_RESULT([no])
|
||||
$4])
|
||||
elif test $pkg_failed = untried; then
|
||||
ifelse([$4], , [AC_MSG_FAILURE(dnl
|
||||
[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://www.freedesktop.org/software/pkgconfig>.])],
|
||||
[$4])
|
||||
else
|
||||
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
|
||||
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
|
||||
AC_MSG_RESULT([yes])
|
||||
ifelse([$3], , :, [$3])
|
||||
fi[]dnl
|
||||
])# PKG_CHECK_MODULES
|
|
@ -1,207 +0,0 @@
|
|||
EXTRA_DIST = \
|
||||
Credits.rtf \
|
||||
AboutWindow.xib \
|
||||
BlocklistStatusWindow.xib \
|
||||
FileRenameSheetController.xib \
|
||||
FilterBar.xib \
|
||||
InfoFileView.xib \
|
||||
InfoPeersView.xib \
|
||||
InfoTrackersView.xib \
|
||||
InfoWindow.xib \
|
||||
MessageWindow.xib \
|
||||
StatsWindow.xib \
|
||||
StatusBar.xib \
|
||||
URLSheetWindow.xib \
|
||||
Defaults.plist \
|
||||
Info.plist \
|
||||
Transmission_Prefix.pch \
|
||||
Sparkle.framework \
|
||||
sparkle_dsa_pub.pem \
|
||||
TransmissionHelp \
|
||||
QuickLookPlugin \
|
||||
VDKQueue \
|
||||
Images \
|
||||
da.lproj \
|
||||
de.lproj \
|
||||
en.lproj \
|
||||
es.lproj \
|
||||
fr.lproj \
|
||||
it.lproj \
|
||||
nl.lproj \
|
||||
pt_PT.lproj \
|
||||
ru.lproj \
|
||||
tr.lproj \
|
||||
AboutWindowController.h \
|
||||
AboutWindowController.m \
|
||||
AddMagnetWindowController.h \
|
||||
AddMagnetWindowController.m \
|
||||
AddWindowController.h \
|
||||
AddWindowController.m \
|
||||
Badger.h \
|
||||
Badger.m \
|
||||
BadgeView.h \
|
||||
BadgeView.m \
|
||||
BlocklistDownloader.h \
|
||||
BlocklistDownloader.m \
|
||||
BlocklistDownloaderViewController.h \
|
||||
BlocklistDownloaderViewController.m \
|
||||
BlocklistScheduler.h \
|
||||
BlocklistScheduler.m \
|
||||
BonjourController.h \
|
||||
BonjourController.m \
|
||||
ButtonToolbarItem.h \
|
||||
ButtonToolbarItem.m \
|
||||
ColorTextField.h \
|
||||
ColorTextField.m \
|
||||
Controller.h \
|
||||
Controller.m \
|
||||
CreatorWindowController.h \
|
||||
CreatorWindowController.m \
|
||||
DragOverlayView.h \
|
||||
DragOverlayView.m \
|
||||
DragOverlayWindow.h \
|
||||
DragOverlayWindow.m \
|
||||
ExpandedPathToIconTransformer.h \
|
||||
ExpandedPathToIconTransformer.m \
|
||||
ExpandedPathToPathTransformer.h \
|
||||
ExpandedPathToPathTransformer.m \
|
||||
FileRenameSheetController.h \
|
||||
FileRenameSheetController.m \
|
||||
FileListNode.h \
|
||||
FileListNode.m \
|
||||
FileNameCell.h \
|
||||
FileNameCell.m \
|
||||
FileOutlineController.h \
|
||||
FileOutlineController.m \
|
||||
FileOutlineView.h \
|
||||
FileOutlineView.m \
|
||||
FilePriorityCell.h \
|
||||
FilePriorityCell.m \
|
||||
FilterBarController.h \
|
||||
FilterBarController.m \
|
||||
FilterBarView.h \
|
||||
FilterBarView.m \
|
||||
FilterButton.h \
|
||||
FilterButton.m \
|
||||
GlobalOptionsPopoverViewController.h \
|
||||
GlobalOptionsPopoverViewController.m \
|
||||
GroupsController.h \
|
||||
GroupsController.m \
|
||||
GroupsPrefsController.h \
|
||||
GroupsPrefsController.m \
|
||||
GroupToolbarItem.h \
|
||||
GroupToolbarItem.m \
|
||||
InfoTabButtonBack.h \
|
||||
InfoTabButtonBack.m \
|
||||
InfoTabButtonCell.h \
|
||||
InfoTabButtonCell.m \
|
||||
InfoTabMatrix.h \
|
||||
InfoTabMatrix.m \
|
||||
InfoTextField.h \
|
||||
InfoTextField.m \
|
||||
InfoActivityViewController.h \
|
||||
InfoActivityViewController.m \
|
||||
InfoFileViewController.h \
|
||||
InfoFileViewController.m \
|
||||
InfoGeneralViewController.h \
|
||||
InfoGeneralViewController.m \
|
||||
InfoOptionsViewController.h \
|
||||
InfoOptionsViewController.m \
|
||||
InfoPeersViewController.h \
|
||||
InfoPeersViewController.m \
|
||||
InfoTrackersViewController.h \
|
||||
InfoTrackersViewController.m \
|
||||
InfoViewController.h \
|
||||
InfoWindowController.h \
|
||||
InfoWindowController.m \
|
||||
main.m \
|
||||
MessageWindowController.h \
|
||||
MessageWindowController.m \
|
||||
NSApplicationAdditions.h \
|
||||
NSApplicationAdditions.m \
|
||||
NSImageAdditions.h \
|
||||
NSImageAdditions.m \
|
||||
NSMutableArrayAdditions.h \
|
||||
NSMutableArrayAdditions.m \
|
||||
NSStringAdditions.h \
|
||||
NSStringAdditions.m \
|
||||
PeerProgressIndicatorCell.h \
|
||||
PeerProgressIndicatorCell.m \
|
||||
PeerTableView.h \
|
||||
PeerTableView.m \
|
||||
PiecesView.h \
|
||||
PiecesView.m \
|
||||
PortChecker.h \
|
||||
PortChecker.m \
|
||||
PredicateEditorRowTemplateAny.h \
|
||||
PredicateEditorRowTemplateAny.m \
|
||||
PrefsController.h \
|
||||
PrefsController.m \
|
||||
PrefsWindow.h \
|
||||
PrefsWindow.m \
|
||||
ProgressGradients.h \
|
||||
ProgressGradients.m \
|
||||
ShareToolbarItem.h \
|
||||
ShareToolbarItem.m \
|
||||
ShareTorrentFileHelper.h \
|
||||
ShareTorrentFileHelper.m \
|
||||
StatsWindowController.h \
|
||||
StatsWindowController.m \
|
||||
StatusBarController.h \
|
||||
StatusBarController.m \
|
||||
StatusBarView.h \
|
||||
StatusBarView.m \
|
||||
ToolbarSegmentedCell.h \
|
||||
ToolbarSegmentedCell.m \
|
||||
TorrentCell.h \
|
||||
TorrentCell.m \
|
||||
TorrentGroup.h \
|
||||
TorrentGroup.m \
|
||||
Torrent.h \
|
||||
Torrent.m \
|
||||
TorrentTableView.h \
|
||||
TorrentTableView.m \
|
||||
TrackerCell.h \
|
||||
TrackerCell.m \
|
||||
TrackerNode.h \
|
||||
TrackerNode.m \
|
||||
TrackerTableView.h \
|
||||
TrackerTableView.m \
|
||||
URLSheetWindowController.h \
|
||||
URLSheetWindowController.m \
|
||||
WebSeedTableView.h \
|
||||
WebSeedTableView.m
|
||||
|
||||
dist-hook:
|
||||
rm -rf `find $(distdir)/ -type d -name .svn`
|
||||
rm -rf `find $(distdir)/ -type d -name .deps`
|
||||
|
||||
if BUILD_MAC
|
||||
# Use Xcode do make the actual build
|
||||
all:
|
||||
@(cd .. && xcodebuild -alltargets -activeconfiguration | grep -v "^$$")
|
||||
clean-local:
|
||||
@(cd .. && xcodebuild -alltargets -activeconfiguration clean | grep -v "^$$")
|
||||
endif
|
||||
|
||||
define PACKAGE_RULE1
|
||||
$(RM) tmp "Transmission $(VERSION_PACKAGE)" \
|
||||
Transmission-$(VERSION_PACKAGE).dmg
|
||||
mkdir -p tmp
|
||||
cp -R macosx/Transmission.app tmp/
|
||||
endef
|
||||
define PACKAGE_RULE2
|
||||
mv tmp "Transmission $(VERSION_PACKAGE)"
|
||||
hdiutil create -format UDZO -imagekey zlib-level=9 -srcfolder \
|
||||
"Transmission $(VERSION_PACKAGE)" Transmission-$(VERSION_PACKAGE).dmg
|
||||
rm -rf "Transmission $(VERSION_PACKAGE)"
|
||||
endef
|
||||
|
||||
package:
|
||||
$(PACKAGE_RULE1)
|
||||
$(PACKAGE_RULE2)
|
||||
|
||||
package-release:
|
||||
$(PACKAGE_RULE1)
|
||||
strip -S tmp/Transmission.app/Contents/MacOS/Transmission
|
||||
$(PACKAGE_RULE2)
|
|
@ -1,5 +0,0 @@
|
|||
DHT_LIBS = @DHT_LIBS_QT@
|
||||
LIBB64_LIBS = @LIBB64_LIBS_QT@
|
||||
LIBUTP_LIBS = @LIBUTP_LIBS_QT@
|
||||
LIBUPNP_LIBS = @LIBUPNP_LIBS_QT@
|
||||
LIBNATPMP_LIBS = @LIBNATPMP_LIBS_QT@
|
128
qt/qtr.pro
128
qt/qtr.pro
|
@ -1,128 +0,0 @@
|
|||
TARGET = transmission-qt
|
||||
NAME = "Transmission"
|
||||
DESCRIPTION = "Transmission: a fast, easy, and free BitTorrent client"
|
||||
VERSION = 2.81
|
||||
LICENSE = "GPL"
|
||||
|
||||
target.path = /bin
|
||||
INSTALLS += target
|
||||
|
||||
unix: INSTALLS += man
|
||||
man.path = /share/man/man1/
|
||||
man.files = transmission-qt.1
|
||||
|
||||
CONFIG += qt thread link_pkgconfig c++1z warn_on
|
||||
QT += network dbus
|
||||
win32:QT += winextras
|
||||
PKGCONFIG = fontconfig libcurl openssl libevent
|
||||
|
||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||
QT += widgets
|
||||
}
|
||||
|
||||
DEFINES += QT_NO_CAST_FROM_ASCII ENABLE_DBUS_INTEROP
|
||||
win32:DEFINES += QT_DBUS
|
||||
|
||||
TRANSMISSION_TOP = ..
|
||||
|
||||
include(config.pri)
|
||||
|
||||
INCLUDEPATH = $${EVENT_TOP}/include $${INCLUDEPATH}
|
||||
INCLUDEPATH += $${TRANSMISSION_TOP}
|
||||
LIBS += $${TRANSMISSION_TOP}/libtransmission/libtransmission.a
|
||||
LIBS += $${LIBUTP_LIBS}
|
||||
LIBS += $${DHT_LIBS}
|
||||
LIBS += $${LIBB64_LIBS}
|
||||
LIBS += $${LIBUPNP_LIBS}
|
||||
LIBS += $${LIBNATPMP_LIBS}
|
||||
unix: LIBS += -L$${EVENT_TOP}/lib -lz -lrt
|
||||
win32:LIBS += -levent-2.0 -lws2_32 -lintl
|
||||
win32:LIBS += -lidn -liconv -lwldap32 -liphlpapi
|
||||
|
||||
TRANSLATIONS += translations/transmission_de.ts \
|
||||
translations/transmission_en.ts \
|
||||
translations/transmission_es.ts \
|
||||
translations/transmission_eu.ts \
|
||||
translations/transmission_fr.ts \
|
||||
translations/transmission_hu.ts \
|
||||
translations/transmission_id.ts \
|
||||
translations/transmission_it_IT.ts \
|
||||
translations/transmission_ka.ts \
|
||||
translations/transmission_kk.ts \
|
||||
translations/transmission_ko.ts \
|
||||
translations/transmission_lt.ts \
|
||||
translations/transmission_nl.ts \
|
||||
translations/transmission_pl.ts \
|
||||
translations/transmission_pt_BR.ts \
|
||||
translations/transmission_pt_PT.ts \
|
||||
translations/transmission_ru.ts \
|
||||
translations/transmission_sv.ts \
|
||||
translations/transmission_tr.ts \
|
||||
translations/transmission_uk.ts \
|
||||
translations/transmission_zh_CN.ts
|
||||
|
||||
FORMS += AboutDialog.ui \
|
||||
DetailsDialog.ui \
|
||||
LicenseDialog.ui \
|
||||
MainWindow.ui \
|
||||
MakeDialog.ui \
|
||||
MakeProgressDialog.ui \
|
||||
OptionsDialog.ui \
|
||||
PrefsDialog.ui \
|
||||
RelocateDialog.ui \
|
||||
SessionDialog.ui \
|
||||
StatsDialog.ui
|
||||
RESOURCES += application.qrc
|
||||
win32|macx:RESOURCES += icons/Faenza/Faenza.qrc
|
||||
SOURCES += AboutDialog.cc \
|
||||
AddData.cc \
|
||||
Application.cc \
|
||||
ColumnResizer.cc \
|
||||
DBusInteropHelper.cc \
|
||||
DetailsDialog.cc \
|
||||
FaviconCache.cc \
|
||||
FileTreeDelegate.cc \
|
||||
FileTreeItem.cc \
|
||||
FileTreeModel.cc \
|
||||
FileTreeView.cc \
|
||||
FilterBar.cc \
|
||||
FilterBarComboBox.cc \
|
||||
FilterBarComboBoxDelegate.cc \
|
||||
Filters.cc \
|
||||
Formatter.cc \
|
||||
FreeSpaceLabel.cc \
|
||||
IconCache.cc \
|
||||
IconToolButton.cc \
|
||||
InteropHelper.cc \
|
||||
InteropObject.cc \
|
||||
LicenseDialog.cc \
|
||||
MainWindow.cc \
|
||||
MakeDialog.cc \
|
||||
OptionsDialog.cc \
|
||||
PathButton.cc \
|
||||
Prefs.cc \
|
||||
PrefsDialog.cc \
|
||||
RelocateDialog.cc \
|
||||
RpcClient.cc \
|
||||
RpcQueue.cc \
|
||||
Session.cc \
|
||||
SessionDialog.cc \
|
||||
SqueezeLabel.cc \
|
||||
StatsDialog.cc \
|
||||
StyleHelper.cc \
|
||||
Torrent.cc \
|
||||
TorrentDelegate.cc \
|
||||
TorrentDelegateMin.cc \
|
||||
TorrentFilter.cc \
|
||||
TorrentModel.cc \
|
||||
TorrentView.cc \
|
||||
TrackerDelegate.cc \
|
||||
TrackerModel.cc \
|
||||
TrackerModelFilter.cc \
|
||||
Utils.cc \
|
||||
VariantHelpers.cc \
|
||||
WatchDir.cc
|
||||
HEADERS += $$replace(SOURCES, .cc, .h)
|
||||
HEADERS += BaseDialog.h CustomVariantType.h Speed.h Typedefs.h
|
||||
|
||||
win32:RC_FILE = qtr.rc
|
|
@ -1,7 +0,0 @@
|
|||
SUBDIRS = \
|
||||
gtest \
|
||||
libtransmission
|
||||
|
||||
EXTRA_DIST = \
|
||||
CMakeLists.txt
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
check_LTLIBRARIES = \
|
||||
libgtest.la \
|
||||
libgtest_main.la
|
||||
|
||||
GTEST_DIR = $(top_srcdir)/third-party/googletest
|
||||
|
||||
GOOGLE_TEST_INCLUDES = \
|
||||
-I$(top_srcdir)/third-party/googletest/googletest/include \
|
||||
-I$(top_srcdir)/third-party/googletest/googletest
|
||||
|
||||
libgtest_la_SOURCES = \
|
||||
$(GTEST_DIR)/googletest/src/gtest-all.cc
|
||||
|
||||
libgtest_la_LDFLAGS = \
|
||||
-pthread
|
||||
|
||||
libgtest_la_CPPFLAGS = \
|
||||
$(GOOGLE_TEST_INCLUDES)
|
||||
|
||||
libgtest_main_la_SOURCES = \
|
||||
$(GTEST_DIR)/googletest/src/gtest_main.cc
|
||||
|
||||
libgtest_main_la_CPPFLAGS = \
|
||||
$(GOOGLE_TEST_INCLUDES)
|
||||
|
||||
libgtest_main_la_LIBADD = \
|
||||
$(top_builddir)/tests/gtest/libgtest.la
|
||||
|
||||
EXTRA_DIST = \
|
||||
CMakeLists.txt
|
|
@ -1,93 +0,0 @@
|
|||
#check_PROGRAMS = gtest
|
||||
#
|
||||
#gtest_SOURCES = gtest.cpp
|
||||
#gtest_LDADD = libgtest.la
|
||||
#gtest_LDFLAGS = -pthread
|
||||
#
|
||||
#gtest_CPPFLAGS = \
|
||||
# -I$(top_srcdir)/googletest/googletest/include \
|
||||
# -I$(top_srcdir)/googletest/googletest \
|
||||
# -pthread
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-std=gnu++17 \
|
||||
-D__TRANSMISSION__ \
|
||||
@LIBEVENT_CFLAGS@ \
|
||||
@LIBCURL_CFLAGS@ \
|
||||
-I$(top_srcdir)/third-party/googletest/googletest/include \
|
||||
-I$(top_srcdir)/libtransmission \
|
||||
-I$(srcdir) \
|
||||
-pthread
|
||||
|
||||
LDADD = \
|
||||
$(top_builddir)/tests/gtest/libgtest_main.la \
|
||||
$(top_builddir)/tests/gtest/libgtest.la \
|
||||
$(top_builddir)/libtransmission/libtransmission.a \
|
||||
@LIBUPNP_LIBS@ \
|
||||
@LIBNATPMP_LIBS@ \
|
||||
@DHT_LIBS@ \
|
||||
@LIBB64_LIBS@ \
|
||||
@LIBUTP_LIBS@ \
|
||||
@GTK_LIBS@ \
|
||||
@LIBAPPINDICATOR_LIBS@ \
|
||||
@LIBEVENT_LIBS@ \
|
||||
@LIBCURL_LIBS@ \
|
||||
@CRYPTO_LIBS@ \
|
||||
@ZLIB_LIBS@ \
|
||||
@PTHREAD_LIBS@ \
|
||||
${LIBM}
|
||||
|
||||
TESTS = \
|
||||
test_bitfield \
|
||||
test_blocklist \
|
||||
test_clients \
|
||||
test_crypto \
|
||||
test_error \
|
||||
test_file \
|
||||
test_getopt \
|
||||
test_history \
|
||||
test_json \
|
||||
test_magnet \
|
||||
test_makemeta \
|
||||
test_metainfo \
|
||||
test_move \
|
||||
test_peer_msgs \
|
||||
test_quark \
|
||||
test_rename \
|
||||
test_rpc \
|
||||
test_session \
|
||||
test_subprocess \
|
||||
test_utils \
|
||||
test_variant \
|
||||
test_watchdir
|
||||
|
||||
check_PROGRAMS = $(TESTS)
|
||||
|
||||
test_bitfield_SOURCES = bitfield-test.cc
|
||||
test_blocklist_SOURCES = blocklist-test.cc
|
||||
test_clients_SOURCES = clients-test.cc
|
||||
test_crypto_SOURCES = crypto-test.cc
|
||||
test_error_SOURCES = error-test.cc
|
||||
test_file_SOURCES = file-test.cc
|
||||
test_getopt_SOURCES = getopt-test.cc
|
||||
test_history_SOURCES = history-test.cc
|
||||
test_json_SOURCES = json-test.cc
|
||||
test_magnet_SOURCES = magnet-test.cc
|
||||
test_makemeta_SOURCES = makemeta-test.cc
|
||||
test_metainfo_SOURCES = metainfo-test.cc
|
||||
test_move_SOURCES = move-test.cc
|
||||
test_peer_msgs_SOURCES = peer-msgs-test.cc
|
||||
test_quark_SOURCES = quark-test.cc
|
||||
test_rename_SOURCES = rename-test.cc
|
||||
test_rpc_SOURCES = rpc-test.cc
|
||||
test_session_SOURCES = session-test.cc
|
||||
test_subprocess_SOURCES = subprocess-test.cc
|
||||
test_utils_SOURCES = utils-test.cc
|
||||
test_variant_SOURCES = variant-test.cc
|
||||
test_watchdir_SOURCES = watchdir-test.cc
|
||||
|
||||
EXTRA_DIST = \
|
||||
CMakeLists.txt \
|
||||
subprocess-test.cmd \
|
||||
crypto-test-ref.h \
|
||||
test-fixtures.h
|
30
third-party/Makefile.am
vendored
30
third-party/Makefile.am
vendored
|
@ -1,30 +0,0 @@
|
|||
if BUILD_DHT
|
||||
DHT_DIR = dht
|
||||
endif
|
||||
if BUILD_B64
|
||||
B64_DIR = libb64
|
||||
endif
|
||||
if BUILD_UTP
|
||||
UTP_DIR = libutp
|
||||
endif
|
||||
if BUILD_MINIUPNP
|
||||
MINIUPNP_DIR = miniupnpc
|
||||
endif
|
||||
if BUILD_NATPMP
|
||||
NATPMP_DIR = libnatpmp
|
||||
endif
|
||||
|
||||
SUBDIRS = \
|
||||
$(DHT_DIR) \
|
||||
$(B64_DIR) \
|
||||
$(NATPMP_DIR) \
|
||||
$(MINIUPNP_DIR) \
|
||||
$(UTP_DIR)
|
||||
|
||||
EXTRA_DIST = \
|
||||
curl \
|
||||
googletest \
|
||||
libevent \
|
||||
openssl \
|
||||
macosx-libevent-config.h \
|
||||
macosx-libevent-event-config.h
|
|
@ -1,67 +0,0 @@
|
|||
%define name transmission
|
||||
%define version @VERSION@
|
||||
%define release 1
|
||||
|
||||
Summary: Transmission BitTorrent Client
|
||||
Name: %{name}
|
||||
Version: %{version}
|
||||
Release: %{release}
|
||||
License: MIT
|
||||
Group: Applications/Internet
|
||||
URL: https://transmissionbt.com/
|
||||
Epoch: 1
|
||||
Source0: %{name}-%{version}.tar.bz2
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
|
||||
|
||||
# MANDATORY for libtransmission
|
||||
BuildRequires: curl-devel >= @CURL_MINIMUM@
|
||||
BuildRequires: libevent-devel >= @LIBEVENT_MINIMUM@
|
||||
BuildRequires: openssl-devel >= @OPENSSL_MINIMUM@
|
||||
Requires: curl >= @CURL_MINIMUM@
|
||||
Requires: libevent >= @LIBEVENT_MINIMUM@
|
||||
Requires: openssl >= @OPENSSL_MINIMUM@
|
||||
# MANDATORY for the gtk+ client
|
||||
BuildRequires: glib2-devel >= @GLIB_MINIMUM@
|
||||
BuildRequires: gtk2-devel >= @GTK_MINIMUM@
|
||||
Requires: glib2 >= @GLIB_MINIMUM@
|
||||
Requires: gtk2 >= @GTK_MINIMUM@
|
||||
|
||||
Provides: %{name}
|
||||
|
||||
%description
|
||||
A fast and easy BitTorrent client
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%build
|
||||
%configure --program-prefix=""
|
||||
make CFLAGS="$RPM_OPT_FLAGS"
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
make DESTDIR=$RPM_BUILD_ROOT install
|
||||
%find_lang %{name}-gtk
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc AUTHORS NEWS.md README.md
|
||||
%attr(755,root,root) %{_bindir}/%{name}*
|
||||
%{_datadir}/applications/%{name}-gtk.desktop
|
||||
%{_datadir}/pixmaps/*
|
||||
%{_datadir}/icons/*
|
||||
%{_datadir}/%{name}/web/*
|
||||
%{_datadir}/man/man1/%{name}*
|
||||
%{_datadir}/locale/*
|
||||
|
||||
%changelog
|
||||
|
||||
* Wed Jan 13 2010 Charles Kerr <charles@charleskerr.com>
|
||||
- made the GConf dependency explicit
|
||||
- annotated the Depends section to show which libraries are optional
|
||||
* Thu Mar 5 2009 Gijs <info@bsnw.nl>
|
||||
- fixed %files section
|
||||
- added Source0
|
||||
* Wed Jul 18 2006 Charles Kerr <charles@charleskerr.com>
|
||||
- first draft at a spec file, cribbed from Pan's spec file
|
|
@ -26,7 +26,7 @@ if [ -n "$JENKINS_URL" ] && [ -n "$GIT_COMMIT" ]; then
|
|||
vcs_revision=$GIT_COMMIT
|
||||
elif [ -n "$TEAMCITY_PROJECT_NAME" ] && [ -n "$BUILD_VCS_NUMBER" ]; then
|
||||
vcs_revision=$BUILD_VCS_NUMBER
|
||||
elif [ -d ".git" ] && type git > /dev/null 2>&1; then
|
||||
elif [ -e ".git" ] && type git > /dev/null 2>&1; then
|
||||
vcs_revision=$(git rev-list --max-count=1 HEAD)
|
||||
elif [ -f "$vcs_revision_file" ]; then
|
||||
vcs_revision=$(cat "$vcs_revision_file")
|
||||
|
|
|
@ -1,45 +0,0 @@
|
|||
AM_CPPFLAGS = -I@top_srcdir@
|
||||
|
||||
AM_CFLAGS = \
|
||||
@LIBEVENT_CFLAGS@ \
|
||||
@LIBCURL_CFLAGS@ \
|
||||
@ZLIB_CFLAGS@ \
|
||||
@PTHREAD_CFLAGS@
|
||||
|
||||
bin_PROGRAMS = \
|
||||
transmission-create \
|
||||
transmission-edit \
|
||||
transmission-remote \
|
||||
transmission-show
|
||||
|
||||
transmission_create_SOURCES = create.c
|
||||
transmission_edit_SOURCES = edit.c
|
||||
transmission_remote_SOURCES = remote.c
|
||||
transmission_show_SOURCES = show.c
|
||||
|
||||
noinst_HEADERS = \
|
||||
units.h
|
||||
|
||||
dist_man_MANS = \
|
||||
transmission-create.1 \
|
||||
transmission-edit.1 \
|
||||
transmission-remote.1 \
|
||||
transmission-show.1
|
||||
|
||||
transmission_create_LDADD = \
|
||||
$(top_builddir)/libtransmission/libtransmission.a \
|
||||
@LIBUPNP_LIBS@ \
|
||||
@LIBNATPMP_LIBS@ \
|
||||
@INTLLIBS@ \
|
||||
@DHT_LIBS@ \
|
||||
@LIBB64_LIBS@ \
|
||||
@LIBUTP_LIBS@ \
|
||||
@LIBEVENT_LIBS@ \
|
||||
@LIBCURL_LIBS@ \
|
||||
@CRYPTO_LIBS@ \
|
||||
@ZLIB_LIBS@ \
|
||||
@PTHREAD_LIBS@ \
|
||||
${LIBM}
|
||||
transmission_edit_LDADD = $(transmission_create_LDADD)
|
||||
transmission_remote_LDADD = $(transmission_create_LDADD)
|
||||
transmission_show_LDADD = $(transmission_create_LDADD)
|
|
@ -1,11 +0,0 @@
|
|||
datadir = ${datarootdir}/${PACKAGE_NAME}/${subdir}
|
||||
|
||||
dist_data_DATA = \
|
||||
index.html \
|
||||
LICENSE
|
||||
|
||||
SUBDIRS = \
|
||||
images \
|
||||
style \
|
||||
javascript
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
datadir = ${datarootdir}/${PACKAGE_NAME}/${subdir}
|
||||
dist_data_DATA = \
|
||||
favicon.ico \
|
||||
favicon.png \
|
||||
webclip-icon.png
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
datadir = ${datarootdir}/${PACKAGE_NAME}/${subdir}
|
||||
|
||||
dist_data_DATA = \
|
||||
common.js \
|
||||
dialog.js \
|
||||
file-row.js \
|
||||
formatter.js \
|
||||
inspector.js \
|
||||
main.js \
|
||||
notifications.js \
|
||||
polyfill.js \
|
||||
prefs-dialog.js \
|
||||
remote.js \
|
||||
torrent.js \
|
||||
torrent-row.js \
|
||||
transmission.js
|
||||
|
||||
SUBDIRS = \
|
||||
jquery
|
|
@ -1,8 +0,0 @@
|
|||
datadir = ${datarootdir}/${PACKAGE_NAME}/${subdir}
|
||||
|
||||
dist_data_DATA = \
|
||||
jquery-ui.min.js \
|
||||
jquery-migrate.min.js \
|
||||
jquery.min.js \
|
||||
jquery.ui-contextmenu.min.js \
|
||||
jquery.transmenu.min.js
|
|
@ -1,4 +0,0 @@
|
|||
SUBDIRS = \
|
||||
jqueryui \
|
||||
transmission
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
SUBDIRS = images
|
||||
|
||||
datadir = ${datarootdir}/${PACKAGE_NAME}/${subdir}
|
||||
dist_data_DATA = jquery-ui.min.css
|
|
@ -1,15 +0,0 @@
|
|||
datadir = ${datarootdir}/${PACKAGE_NAME}/${subdir}
|
||||
dist_data_DATA = \
|
||||
ui-bg_flat_0_aaaaaa_40x100.png \
|
||||
ui-bg_flat_75_ffffff_40x100.png \
|
||||
ui-bg_glass_55_fbf9ee_1x400.png \
|
||||
ui-bg_glass_65_ffffff_1x400.png \
|
||||
ui-bg_glass_75_dadada_1x400.png \
|
||||
ui-bg_glass_75_e6e6e6_1x400.png \
|
||||
ui-bg_glass_95_fef1ec_1x400.png \
|
||||
ui-bg_highlight-soft_75_cccccc_1x100.png \
|
||||
ui-icons_222222_256x240.png \
|
||||
ui-icons_2e83ff_256x240.png \
|
||||
ui-icons_454545_256x240.png \
|
||||
ui-icons_888888_256x240.png \
|
||||
ui-icons_cd0a0a_256x240.png
|
|
@ -1,10 +0,0 @@
|
|||
SUBDIRS = images
|
||||
|
||||
datadir = ${datarootdir}/${PACKAGE_NAME}/${subdir}
|
||||
dist_data_DATA = \
|
||||
common.css \
|
||||
mobile.css
|
||||
|
||||
EXTRA_DIST = \
|
||||
common.scss \
|
||||
mobile.scss
|
|
@ -1,31 +0,0 @@
|
|||
SUBDIRS = buttons
|
||||
|
||||
datadir = ${datarootdir}/${PACKAGE_NAME}/${subdir}
|
||||
dist_data_DATA = \
|
||||
arrow-down.png \
|
||||
arrow-up.png \
|
||||
blue-turtle.png \
|
||||
compact.png \
|
||||
file-priority-high.png \
|
||||
file-priority-low.png \
|
||||
file-priority-normal.png \
|
||||
filter_bar.png \
|
||||
filter_icon.png \
|
||||
inspector-files.png \
|
||||
inspector-info.png \
|
||||
inspector-peers.png \
|
||||
inspector-trackers.png \
|
||||
lock_icon.png \
|
||||
logo.png \
|
||||
progress.png \
|
||||
settings.png \
|
||||
toolbar-close.png \
|
||||
toolbar-folder.png \
|
||||
toolbar-info.png \
|
||||
toolbar-pause.png \
|
||||
toolbar-start.png \
|
||||
toolbar-pause-all.png \
|
||||
toolbar-start-all.png \
|
||||
turtle.png \
|
||||
wrench.png
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
datadir = ${datarootdir}/${PACKAGE_NAME}/${subdir}
|
||||
|
||||
dist_data_DATA = \
|
||||
torrent_buttons.png
|
Loading…
Reference in a new issue