diff --git a/MANIFEST.in b/MANIFEST.in index ac05c9005..582ed1e92 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -20,7 +20,6 @@ recursive-include images * recursive-include mac * recursive-include po * recursive-include test * -recursive-include windows * # Remove files created in the build global-exclude *.pyc diff --git a/windows/AIO/32-bit/pyconfig.h b/windows/AIO/32-bit/pyconfig.h deleted file mode 100755 index 15f30af6f..000000000 --- a/windows/AIO/32-bit/pyconfig.h +++ /dev/null @@ -1,1548 +0,0 @@ -/* pyconfig.h. Generated from pyconfig.h.in by configure. */ -/* pyconfig.h.in. Generated from configure.ac by autoheader. */ - - -#ifndef Py_PYCONFIG_H -#define Py_PYCONFIG_H - - -/* Define if building universal (internal helper macro) */ -/* #undef AC_APPLE_UNIVERSAL_BUILD */ - -/* Define for AIX if your compiler is a genuine IBM xlC/xlC_r and you want - support for AIX C++ shared extension modules. */ -/* #undef AIX_GENUINE_CPLUSPLUS */ - -/* Define if C doubles are 64-bit IEEE 754 binary format, stored in ARM - mixed-endian order (byte order 45670123) */ -/* #undef DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 */ - -/* Define if C doubles are 64-bit IEEE 754 binary format, stored with the most - significant byte first */ -/* #undef DOUBLE_IS_BIG_ENDIAN_IEEE754 */ - -/* Define if C doubles are 64-bit IEEE 754 binary format, stored with the - least significant byte first */ -#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1 - -/* Define if --enable-ipv6 is specified */ -/* #undef ENABLE_IPV6 */ - -/* Define if flock needs to be linked with bsd library. */ -/* #undef FLOCK_NEEDS_LIBBSD */ - -/* Define if getpgrp() must be called as getpgrp(0). */ -/* #undef GETPGRP_HAVE_ARG */ - -/* Define if gettimeofday() does not have second (timezone) argument This is - the case on Motorola V4 (R40V4.2) */ -/* #undef GETTIMEOFDAY_NO_TZ */ - -/* Define to 1 if you have the `accept4' function. */ -/* #undef HAVE_ACCEPT4 */ - -/* Define to 1 if you have the `acosh' function. */ -#define HAVE_ACOSH 1 - -/* struct addrinfo */ -#define HAVE_ADDRINFO 1 - -/* Define to 1 if you have the `alarm' function. */ -/* #undef HAVE_ALARM */ - -/* Define if aligned memory access is required */ -/* #undef HAVE_ALIGNED_REQUIRED */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ALLOCA_H */ - -/* Define this if your time.h defines altzone. */ -/* #undef HAVE_ALTZONE */ - -/* Define to 1 if you have the `asinh' function. */ -#define HAVE_ASINH 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ASM_TYPES_H */ - -/* Define to 1 if you have the `atanh' function. */ -#define HAVE_ATANH 1 - -/* Define to 1 if you have the `bind_textdomain_codeset' function. */ -/* #undef HAVE_BIND_TEXTDOMAIN_CODESET */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_BLUETOOTH_BLUETOOTH_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_BLUETOOTH_H */ - -/* Define if mbstowcs(NULL, "text", 0) does not return the number of wide - chars that would be converted. */ -/* #undef HAVE_BROKEN_MBSTOWCS */ - -/* Define if nice() returns success/failure instead of the new priority. */ -/* #undef HAVE_BROKEN_NICE */ - -/* Define if the system reports an invalid PIPE_BUF value. */ -/* #undef HAVE_BROKEN_PIPE_BUF */ - -/* Define if poll() sets errno on invalid file descriptors. */ -/* #undef HAVE_BROKEN_POLL */ - -/* Define if the Posix semaphores do not work on your system */ -/* #undef HAVE_BROKEN_POSIX_SEMAPHORES */ - -/* Define if pthread_sigmask() does not work on your system. */ -/* #undef HAVE_BROKEN_PTHREAD_SIGMASK */ - -/* define to 1 if your sem_getvalue is broken. */ -/* #undef HAVE_BROKEN_SEM_GETVALUE */ - -/* Define if `unsetenv` does not return an int. */ -/* #undef HAVE_BROKEN_UNSETENV */ - -/* Has builtin atomics */ -#define HAVE_BUILTIN_ATOMIC 1 - -/* Define this if you have the type _Bool. */ -#define HAVE_C99_BOOL 1 - -/* Define to 1 if you have the 'chflags' function. */ -/* #undef HAVE_CHFLAGS */ - -/* Define to 1 if you have the `chown' function. */ -/* #undef HAVE_CHOWN */ - -/* Define if you have the 'chroot' function. */ -/* #undef HAVE_CHROOT */ - -/* Define to 1 if you have the `clock' function. */ -#define HAVE_CLOCK 1 - -/* Define to 1 if you have the `clock_getres' function. */ -#define HAVE_CLOCK_GETRES 1 - -/* Define to 1 if you have the `clock_gettime' function. */ -#define HAVE_CLOCK_GETTIME 1 - -/* Define if the C compiler supports computed gotos. */ -#define HAVE_COMPUTED_GOTOS 1 - -/* Define to 1 if you have the `confstr' function. */ -/* #undef HAVE_CONFSTR */ - -/* Define to 1 if you have the header file. */ -#define HAVE_CONIO_H 1 - -/* Define to 1 if you have the `copysign' function. */ -#define HAVE_COPYSIGN 1 - -/* Define to 1 if you have the `ctermid' function. */ -/* #undef HAVE_CTERMID */ - -/* Define if you have the 'ctermid_r' function. */ -/* #undef HAVE_CTERMID_R */ - -/* Define to 1 if you have the header file. */ -#define HAVE_CURSES_H 1 - -/* Define if you have the 'is_term_resized' function. */ -#define HAVE_CURSES_IS_TERM_RESIZED 1 - -/* Define if you have the 'resizeterm' function. */ -#define HAVE_CURSES_RESIZETERM 1 - -/* Define if you have the 'resize_term' function. */ -#define HAVE_CURSES_RESIZE_TERM 1 - -/* Define to 1 if you have the declaration of `isfinite', and to 0 if you - don't. */ -#define HAVE_DECL_ISFINITE 1 - -/* Define to 1 if you have the declaration of `isinf', and to 0 if you don't. - */ -#define HAVE_DECL_ISINF 1 - -/* Define to 1 if you have the declaration of `isnan', and to 0 if you don't. - */ -#define HAVE_DECL_ISNAN 1 - -/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't. - */ -#define HAVE_DECL_TZNAME 1 - -/* Define to 1 if you have the device macros. */ -/* #undef HAVE_DEVICE_MACROS */ - -/* Define to 1 if you have the /dev/ptc device file. */ -/* #undef HAVE_DEV_PTC */ - -/* Define to 1 if you have the /dev/ptmx device file. */ -/* #undef HAVE_DEV_PTMX */ - -/* Define to 1 if you have the header file. */ -#define HAVE_DIRECT_H 1 - -/* Define to 1 if the dirent structure has a d_type field */ -/* #undef HAVE_DIRENT_D_TYPE */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -#define HAVE_DIRENT_H 1 - -/* Define if you have the 'dirfd' function or macro. */ -/* #undef HAVE_DIRFD */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_DLFCN_H */ - -/* Define to 1 if you have the `dlopen' function. */ -/* #undef HAVE_DLOPEN */ - -/* Define to 1 if you have the `dup2' function. */ -#define HAVE_DUP2 1 - -/* Define to 1 if you have the `dup3' function. */ -/* #undef HAVE_DUP3 */ - -/* Defined when any dynamic module loading is enabled. */ -#define HAVE_DYNAMIC_LOADING 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ENDIAN_H */ - -/* Define if you have the 'epoll' functions. */ -/* #undef HAVE_EPOLL */ - -/* Define if you have the 'epoll_create1' function. */ -/* #undef HAVE_EPOLL_CREATE1 */ - -/* Define to 1 if you have the `erf' function. */ -#define HAVE_ERF 1 - -/* Define to 1 if you have the `erfc' function. */ -#define HAVE_ERFC 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_ERRNO_H 1 - -/* Define to 1 if you have the `execv' function. */ -#define HAVE_EXECV 1 - -/* Define to 1 if you have the `expm1' function. */ -#define HAVE_EXPM1 1 - -/* Define to 1 if you have the `faccessat' function. */ -/* #undef HAVE_FACCESSAT */ - -/* Define if you have the 'fchdir' function. */ -/* #undef HAVE_FCHDIR */ - -/* Define to 1 if you have the `fchmod' function. */ -/* #undef HAVE_FCHMOD */ - -/* Define to 1 if you have the `fchmodat' function. */ -/* #undef HAVE_FCHMODAT */ - -/* Define to 1 if you have the `fchown' function. */ -/* #undef HAVE_FCHOWN */ - -/* Define to 1 if you have the `fchownat' function. */ -/* #undef HAVE_FCHOWNAT */ - -/* Define to 1 if you have the header file. */ -#define HAVE_FCNTL_H 1 - -/* Define if you have the 'fdatasync' function. */ -/* #undef HAVE_FDATASYNC */ - -/* Define to 1 if you have the `fdopendir' function. */ -/* #undef HAVE_FDOPENDIR */ - -/* Define to 1 if you have the `fexecve' function. */ -/* #undef HAVE_FEXECVE */ - -/* Define to 1 if you have the `finite' function. */ -#define HAVE_FINITE 1 - -/* Define to 1 if you have the `flock' function. */ -/* #undef HAVE_FLOCK */ - -/* Define to 1 if you have the `fork' function. */ -/* #undef HAVE_FORK */ - -/* Define to 1 if you have the `forkpty' function. */ -/* #undef HAVE_FORKPTY */ - -/* Define to 1 if you have the `fpathconf' function. */ -/* #undef HAVE_FPATHCONF */ - -/* Define to 1 if you have the `fseek64' function. */ -/* #undef HAVE_FSEEK64 */ - -/* Define to 1 if you have the `fseeko' function. */ -#define HAVE_FSEEKO 1 - -/* Define to 1 if you have the `fstatat' function. */ -/* #undef HAVE_FSTATAT */ - -/* Define to 1 if you have the `fstatvfs' function. */ -/* #undef HAVE_FSTATVFS */ - -/* Define if you have the 'fsync' function. */ -/* #undef HAVE_FSYNC */ - -/* Define to 1 if you have the `ftell64' function. */ -/* #undef HAVE_FTELL64 */ - -/* Define to 1 if you have the `ftello' function. */ -#define HAVE_FTELLO 1 - -/* Define to 1 if you have the `ftime' function. */ -#define HAVE_FTIME 1 - -/* Define to 1 if you have the `ftruncate' function. */ -/* #undef HAVE_FTRUNCATE */ - -/* Define to 1 if you have the `futimens' function. */ -/* #undef HAVE_FUTIMENS */ - -/* Define to 1 if you have the `futimes' function. */ -/* #undef HAVE_FUTIMES */ - -/* Define to 1 if you have the `futimesat' function. */ -/* #undef HAVE_FUTIMESAT */ - -/* Define to 1 if you have the `gai_strerror' function. */ -/* #undef HAVE_GAI_STRERROR */ - -/* Define to 1 if you have the `gamma' function. */ -/* #undef HAVE_GAMMA */ - -/* Define if we can use gcc inline assembler to get and set mc68881 fpcr */ -/* #undef HAVE_GCC_ASM_FOR_MC68881 */ - -/* Define if we can use x64 gcc inline assembler */ -/* #undef HAVE_GCC_ASM_FOR_X64 */ - -/* Define if we can use gcc inline assembler to get and set x87 control word - */ -#define HAVE_GCC_ASM_FOR_X87 1 - -/* Define if your compiler provides __uint128_t */ -/* #undef HAVE_GCC_UINT128_T */ - -/* Define if you have the getaddrinfo function. */ -/* #undef HAVE_GETADDRINFO */ - -/* Define this if you have flockfile(), getc_unlocked(), and funlockfile() */ -/* #undef HAVE_GETC_UNLOCKED */ - -/* Define to 1 if you have the `getentropy' function. */ -/* #undef HAVE_GETENTROPY */ - -/* Define to 1 if you have the `getgrouplist' function. */ -/* #undef HAVE_GETGROUPLIST */ - -/* Define to 1 if you have the `getgroups' function. */ -/* #undef HAVE_GETGROUPS */ - -/* Define to 1 if you have the `gethostbyname' function. */ -/* #undef HAVE_GETHOSTBYNAME */ - -/* Define this if you have some version of gethostbyname_r() */ -/* #undef HAVE_GETHOSTBYNAME_R */ - -/* Define this if you have the 3-arg version of gethostbyname_r(). */ -/* #undef HAVE_GETHOSTBYNAME_R_3_ARG */ - -/* Define this if you have the 5-arg version of gethostbyname_r(). */ -/* #undef HAVE_GETHOSTBYNAME_R_5_ARG */ - -/* Define this if you have the 6-arg version of gethostbyname_r(). */ -/* #undef HAVE_GETHOSTBYNAME_R_6_ARG */ - -/* Define to 1 if you have the `getitimer' function. */ -/* #undef HAVE_GETITIMER */ - -/* Define to 1 if you have the `getloadavg' function. */ -/* #undef HAVE_GETLOADAVG */ - -/* Define to 1 if you have the `getlogin' function. */ -#define HAVE_GETLOGIN 1 - -/* Define to 1 if you have the `getnameinfo' function. */ -/* #undef HAVE_GETNAMEINFO */ - -/* Define if you have the 'getpagesize' function. */ -/* #undef HAVE_GETPAGESIZE */ - -/* Define to 1 if you have the `getpeername' function. */ -#define HAVE_GETPEERNAME 1 - -/* Define to 1 if you have the `getpgid' function. */ -/* #undef HAVE_GETPGID */ - -/* Define to 1 if you have the `getpgrp' function. */ -/* #undef HAVE_GETPGRP */ - -/* Define to 1 if you have the `getpid' function. */ -#define HAVE_GETPID 1 - -/* Define to 1 if you have the `getpriority' function. */ -/* #undef HAVE_GETPRIORITY */ - -/* Define to 1 if you have the `getpwent' function. */ -/* #undef HAVE_GETPWENT */ - -/* Define to 1 if the Linux getrandom() syscall is available */ -/* #undef HAVE_GETRANDOM_SYSCALL */ - -/* Define to 1 if you have the `getresgid' function. */ -/* #undef HAVE_GETRESGID */ - -/* Define to 1 if you have the `getresuid' function. */ -/* #undef HAVE_GETRESUID */ - -/* Define to 1 if you have the `getsid' function. */ -/* #undef HAVE_GETSID */ - -/* Define to 1 if you have the `getspent' function. */ -/* #undef HAVE_GETSPENT */ - -/* Define to 1 if you have the `getspnam' function. */ -/* #undef HAVE_GETSPNAM */ - -/* Define to 1 if you have the `gettimeofday' function. */ -#define HAVE_GETTIMEOFDAY 1 - -/* Define to 1 if you have the `getwd' function. */ -/* #undef HAVE_GETWD */ - -/* Define if glibc has incorrect _FORTIFY_SOURCE wrappers for memmove and - bcopy. */ -/* #undef HAVE_GLIBC_MEMMOVE_BUG */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_GRP_H */ - -/* Define if you have the 'hstrerror' function. */ -/* #undef HAVE_HSTRERROR */ - -/* Define this if you have le64toh() */ -/* #undef HAVE_HTOLE64 */ - -/* Define to 1 if you have the `hypot' function. */ -#define HAVE_HYPOT 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_IEEEFP_H 1 - -/* Define to 1 if you have the `if_nameindex' function. */ -/* #undef HAVE_IF_NAMEINDEX */ - -/* Define if you have the 'inet_aton' function. */ -/* #undef HAVE_INET_ATON */ - -/* Define if you have the 'inet_pton' function. */ -/* #undef HAVE_INET_PTON */ - -/* Define to 1 if you have the `initgroups' function. */ -/* #undef HAVE_INITGROUPS */ - -/* Define if your compiler provides int32_t. */ -#define HAVE_INT32_T 1 - -/* Define if your compiler provides int64_t. */ -#define HAVE_INT64_T 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_INTTYPES_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_IO_H 1 - -/* Define if gcc has the ipa-pure-const bug. */ -/* #undef HAVE_IPA_PURE_CONST_BUG */ - -/* Define to 1 if you have the `kill' function. */ -/* #undef HAVE_KILL */ - -/* Define to 1 if you have the `killpg' function. */ -/* #undef HAVE_KILLPG */ - -/* Define if you have the 'kqueue' functions. */ -/* #undef HAVE_KQUEUE */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LANGINFO_H */ - -/* Defined to enable large file support when an off_t is bigger than a long - and long long is available and at least as big as an off_t. You may need to - add some flags for configuration and compilation to enable this mode. (For - Solaris and Linux, the necessary defines are already defined.) */ -#define HAVE_LARGEFILE_SUPPORT 1 - -/* Define to 1 if you have the 'lchflags' function. */ -/* #undef HAVE_LCHFLAGS */ - -/* Define to 1 if you have the `lchmod' function. */ -/* #undef HAVE_LCHMOD */ - -/* Define to 1 if you have the `lchown' function. */ -/* #undef HAVE_LCHOWN */ - -/* Define to 1 if you have the `lgamma' function. */ -#define HAVE_LGAMMA 1 - -/* Define to 1 if you have the `dl' library (-ldl). */ -/* #undef HAVE_LIBDL */ - -/* Define to 1 if you have the `dld' library (-ldld). */ -/* #undef HAVE_LIBDLD */ - -/* Define to 1 if you have the `ieee' library (-lieee). */ -/* #undef HAVE_LIBIEEE */ - -/* Define to 1 if you have the header file. */ -#define HAVE_LIBINTL_H 1 - -/* Define if you have the readline library (-lreadline). */ -#define HAVE_LIBREADLINE 1 - -/* Define to 1 if you have the `resolv' library (-lresolv). */ -/* #undef HAVE_LIBRESOLV */ - -/* Define to 1 if you have the `sendfile' library (-lsendfile). */ -/* #undef HAVE_LIBSENDFILE */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LIBUTIL_H */ - -/* Define if you have the 'link' function. */ -/* #undef HAVE_LINK */ - -/* Define to 1 if you have the `linkat' function. */ -/* #undef HAVE_LINKAT */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_CAN_BCM_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_CAN_H */ - -/* Define if compiling using Linux 3.6 or later. */ -/* #undef HAVE_LINUX_CAN_RAW_FD_FRAMES */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_CAN_RAW_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_NETLINK_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_TIPC_H */ - -/* Define to 1 if you have the `lockf' function. */ -/* #undef HAVE_LOCKF */ - -/* Define to 1 if you have the `log1p' function. */ -#define HAVE_LOG1P 1 - -/* Define to 1 if you have the `log2' function. */ -#define HAVE_LOG2 1 - -/* Define this if you have the type long double. */ -#define HAVE_LONG_DOUBLE 1 - -/* Define this if you have the type long long. */ -#define HAVE_LONG_LONG 1 - -/* Define to 1 if you have the `lstat' function. */ -/* #undef HAVE_LSTAT */ - -/* Define to 1 if you have the `lutimes' function. */ -/* #undef HAVE_LUTIMES */ - -/* Define this if you have the makedev macro. */ -/* #undef HAVE_MAKEDEV */ - -/* Define to 1 if you have the `mbrtowc' function. */ -#define HAVE_MBRTOWC 1 - -/* Define to 1 if you have the `memmove' function. */ -#define HAVE_MEMMOVE 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the `memrchr' function. */ -/* #undef HAVE_MEMRCHR */ - -/* Define to 1 if you have the `mkdirat' function. */ -/* #undef HAVE_MKDIRAT */ - -/* Define to 1 if you have the `mkfifo' function. */ -/* #undef HAVE_MKFIFO */ - -/* Define to 1 if you have the `mkfifoat' function. */ -/* #undef HAVE_MKFIFOAT */ - -/* Define to 1 if you have the `mknod' function. */ -/* #undef HAVE_MKNOD */ - -/* Define to 1 if you have the `mknodat' function. */ -/* #undef HAVE_MKNODAT */ - -/* Define to 1 if you have the `mktime' function. */ -#define HAVE_MKTIME 1 - -/* Define to 1 if you have the `mmap' function. */ -/* #undef HAVE_MMAP */ - -/* Define to 1 if you have the `mremap' function. */ -/* #undef HAVE_MREMAP */ - -/* Define to 1 if you have the header file. */ -#define HAVE_NCURSES_H 1 - -/* Define to 1 if you have the header file, and it defines `DIR'. */ -/* #undef HAVE_NDIR_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_NETPACKET_PACKET_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_NET_IF_H */ - -/* Define to 1 if you have the `nice' function. */ -/* #undef HAVE_NICE */ - -/* Define to 1 if you have the `openat' function. */ -/* #undef HAVE_OPENAT */ - -/* Define to 1 if you have the `openpty' function. */ -/* #undef HAVE_OPENPTY */ - -/* Define if compiling using MacOS X 10.5 SDK or later. */ -/* #undef HAVE_OSX105_SDK */ - -/* Define to 1 if you have the `pathconf' function. */ -/* #undef HAVE_PATHCONF */ - -/* Define to 1 if you have the `pause' function. */ -/* #undef HAVE_PAUSE */ - -/* Define to 1 if you have the `pipe2' function. */ -/* #undef HAVE_PIPE2 */ - -/* Define to 1 if you have the `plock' function. */ -/* #undef HAVE_PLOCK */ - -/* Define to 1 if you have the `poll' function. */ -/* #undef HAVE_POLL */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_POLL_H */ - -/* Define to 1 if you have the `posix_fadvise' function. */ -/* #undef HAVE_POSIX_FADVISE */ - -/* Define to 1 if you have the `posix_fallocate' function. */ -/* #undef HAVE_POSIX_FALLOCATE */ - -/* Define to 1 if you have the `pread' function. */ -/* #undef HAVE_PREAD */ - -/* Define if you have the 'prlimit' functions. */ -/* #undef HAVE_PRLIMIT */ - -/* Define to 1 if you have the header file. */ -#define HAVE_PROCESS_H 1 - -/* Define if your compiler supports function prototype */ -#define HAVE_PROTOTYPES 1 - -/* Define to 1 if you have the `pthread_atfork' function. */ -/* #undef HAVE_PTHREAD_ATFORK */ - -/* Defined for Solaris 2.6 bug in pthread header. */ -/* #undef HAVE_PTHREAD_DESTRUCTOR */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_PTHREAD_H */ - -/* Define to 1 if you have the `pthread_init' function. */ -/* #undef HAVE_PTHREAD_INIT */ - -/* Define to 1 if you have the `pthread_kill' function. */ -/* #undef HAVE_PTHREAD_KILL */ - -/* Define to 1 if you have the `pthread_sigmask' function. */ -/* #undef HAVE_PTHREAD_SIGMASK */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_PTY_H */ - -/* Define to 1 if you have the `putenv' function. */ -#define HAVE_PUTENV 1 - -/* Define to 1 if you have the `pwrite' function. */ -/* #undef HAVE_PWRITE */ - -/* Define if the libcrypto has RAND_egd */ -#define HAVE_RAND_EGD 1 - -/* Define to 1 if you have the `readlink' function. */ -/* #undef HAVE_READLINK */ - -/* Define to 1 if you have the `readlinkat' function. */ -/* #undef HAVE_READLINKAT */ - -/* Define to 1 if you have the `readv' function. */ -/* #undef HAVE_READV */ - -/* Define to 1 if you have the `realpath' function. */ -/* #undef HAVE_REALPATH */ - -/* Define to 1 if you have the `renameat' function. */ -/* #undef HAVE_RENAMEAT */ - -/* Define to 1 if you have the 'REPARSE_DATA_BUFFER' structure. */ -/* #undef HAVE_REPARSE_DATA_BUFFER */ - -/* Define if readline supports append_history */ -#define HAVE_RL_APPEND_HISTORY 1 - -/* Define if you have readline 2.1 */ -#define HAVE_RL_CALLBACK 1 - -/* Define if you can turn off readline's signal handling. */ -#define HAVE_RL_CATCH_SIGNAL 1 - -/* Define if you have readline 2.2 */ -#define HAVE_RL_COMPLETION_APPEND_CHARACTER 1 - -/* Define if you have readline 4.0 */ -#define HAVE_RL_COMPLETION_DISPLAY_MATCHES_HOOK 1 - -/* Define if you have readline 4.2 */ -#define HAVE_RL_COMPLETION_MATCHES 1 - -/* Define if you have rl_completion_suppress_append */ -#define HAVE_RL_COMPLETION_SUPPRESS_APPEND 1 - -/* Define if you have readline 4.0 */ -#define HAVE_RL_PRE_INPUT_HOOK 1 - -/* Define to 1 if you have the `round' function. */ -#define HAVE_ROUND 1 - -/* Define to 1 if you have the `sched_get_priority_max' function. */ -#define HAVE_SCHED_GET_PRIORITY_MAX 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SCHED_H */ - -/* Define to 1 if you have the `sched_rr_get_interval' function. */ -/* #undef HAVE_SCHED_RR_GET_INTERVAL */ - -/* Define to 1 if you have the `sched_setaffinity' function. */ -/* #undef HAVE_SCHED_SETAFFINITY */ - -/* Define to 1 if you have the `sched_setparam' function. */ -/* #undef HAVE_SCHED_SETPARAM */ - -/* Define to 1 if you have the `sched_setscheduler' function. */ -/* #undef HAVE_SCHED_SETSCHEDULER */ - -/* Define to 1 if you have the `select' function. */ -/* #undef HAVE_SELECT */ - -/* Define to 1 if you have the `sem_getvalue' function. */ -#define HAVE_SEM_GETVALUE 1 - -/* Define to 1 if you have the `sem_open' function. */ -/* #undef HAVE_SEM_OPEN */ - -/* Define to 1 if you have the `sem_timedwait' function. */ -#define HAVE_SEM_TIMEDWAIT 1 - -/* Define to 1 if you have the `sem_unlink' function. */ -#define HAVE_SEM_UNLINK 1 - -/* Define to 1 if you have the `sendfile' function. */ -/* #undef HAVE_SENDFILE */ - -/* Define to 1 if you have the `setegid' function. */ -/* #undef HAVE_SETEGID */ - -/* Define to 1 if you have the `seteuid' function. */ -/* #undef HAVE_SETEUID */ - -/* Define to 1 if you have the `setgid' function. */ -/* #undef HAVE_SETGID */ - -/* Define if you have the 'setgroups' function. */ -/* #undef HAVE_SETGROUPS */ - -/* Define to 1 if you have the `sethostname' function. */ -/* #undef HAVE_SETHOSTNAME */ - -/* Define to 1 if you have the `setitimer' function. */ -/* #undef HAVE_SETITIMER */ - -/* Define to 1 if you have the `setlocale' function. */ -#define HAVE_SETLOCALE 1 - -/* Define to 1 if you have the `setpgid' function. */ -/* #undef HAVE_SETPGID */ - -/* Define to 1 if you have the `setpgrp' function. */ -/* #undef HAVE_SETPGRP */ - -/* Define to 1 if you have the `setpriority' function. */ -/* #undef HAVE_SETPRIORITY */ - -/* Define to 1 if you have the `setregid' function. */ -/* #undef HAVE_SETREGID */ - -/* Define to 1 if you have the `setresgid' function. */ -/* #undef HAVE_SETRESGID */ - -/* Define to 1 if you have the `setresuid' function. */ -/* #undef HAVE_SETRESUID */ - -/* Define to 1 if you have the `setreuid' function. */ -/* #undef HAVE_SETREUID */ - -/* Define to 1 if you have the `setsid' function. */ -/* #undef HAVE_SETSID */ - -/* Define to 1 if you have the `setuid' function. */ -/* #undef HAVE_SETUID */ - -/* Define to 1 if you have the `setvbuf' function. */ -#define HAVE_SETVBUF 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SHADOW_H */ - -/* Define to 1 if you have the `sigaction' function. */ -/* #undef HAVE_SIGACTION */ - -/* Define to 1 if you have the `sigaltstack' function. */ -/* #undef HAVE_SIGALTSTACK */ - -/* Define to 1 if you have the `siginterrupt' function. */ -/* #undef HAVE_SIGINTERRUPT */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SIGNAL_H 1 - -/* Define to 1 if you have the `sigpending' function. */ -/* #undef HAVE_SIGPENDING */ - -/* Define to 1 if you have the `sigrelse' function. */ -/* #undef HAVE_SIGRELSE */ - -/* Define to 1 if you have the `sigtimedwait' function. */ -/* #undef HAVE_SIGTIMEDWAIT */ - -/* Define to 1 if you have the `sigwait' function. */ -/* #undef HAVE_SIGWAIT */ - -/* Define to 1 if you have the `sigwaitinfo' function. */ -/* #undef HAVE_SIGWAITINFO */ - -/* Define to 1 if you have the `snprintf' function. */ -#define HAVE_SNPRINTF 1 - -/* Define if sockaddr has sa_len member */ -/* #undef HAVE_SOCKADDR_SA_LEN */ - -/* struct sockaddr_storage (sys/socket.h) */ -#define HAVE_SOCKADDR_STORAGE 1 - -/* Define if you have the 'socketpair' function. */ -/* #undef HAVE_SOCKETPAIR */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SPAWN_H */ - -/* Define if your compiler provides ssize_t */ -#define HAVE_SSIZE_T 1 - -/* Define to 1 if you have the `statvfs' function. */ -/* #undef HAVE_STATVFS */ - -/* Define if you have struct stat.st_mtim.tv_nsec */ -/* #undef HAVE_STAT_TV_NSEC */ - -/* Define if you have struct stat.st_mtimensec */ -/* #undef HAVE_STAT_TV_NSEC2 */ - -/* Define if your compiler supports variable length function prototypes (e.g. - void fprintf(FILE *, char *, ...);) *and* */ -#define HAVE_STDARG_PROTOTYPES 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDINT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Has stdatomic.h, atomic_int and _Atomic void* types work */ -#define HAVE_STD_ATOMIC 1 - -/* Define to 1 if you have the `strdup' function. */ -#define HAVE_STRDUP 1 - -/* Define to 1 if you have the `strftime' function. */ -#define HAVE_STRFTIME 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRINGS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the `strlcpy' function. */ -/* #undef HAVE_STRLCPY */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_STROPTS_H */ - -/* Define to 1 if `st_birthtime' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ - -/* Define to 1 if `st_blksize' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ - -/* Define to 1 if `st_blocks' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_BLOCKS */ - -/* Define to 1 if `st_flags' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_FLAGS */ - -/* Define to 1 if `st_gen' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_GEN */ - -/* Define to 1 if `st_rdev' is a member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_RDEV 1 - -/* Define to 1 if `tm_zone' is a member of `struct tm'. */ -/* #undef HAVE_STRUCT_TM_TM_ZONE */ - -/* Define to 1 if your `struct stat' has `st_blocks'. Deprecated, use - `HAVE_STRUCT_STAT_ST_BLOCKS' instead. */ -/* #undef HAVE_ST_BLOCKS */ - -/* Define if you have the 'symlink' function. */ -/* #undef HAVE_SYMLINK */ - -/* Define to 1 if you have the `symlinkat' function. */ -/* #undef HAVE_SYMLINKAT */ - -/* Define to 1 if you have the `sync' function. */ -/* #undef HAVE_SYNC */ - -/* Define to 1 if you have the `sysconf' function. */ -/* #undef HAVE_SYSCONF */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYSEXITS_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_AUDIOIO_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_BSDTTY_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_DEVPOLL_H */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_DIR_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_ENDIAN_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_EPOLL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_EVENT_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_FILE_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_IOCTL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_KERN_CONTROL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_LOADAVG_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_LOCK_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_MKDEV_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_MODEM_H */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_NDIR_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_PARAM_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_POLL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_RESOURCE_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SELECT_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SENDFILE_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SOCKET_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_STATVFS_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SYSCALL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SYS_DOMAIN_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_TERMIO_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_TIMES_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TIME_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_UIO_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_UN_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_UTSNAME_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_WAIT_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_XATTR_H */ - -/* Define to 1 if you have the `tcgetpgrp' function. */ -/* #undef HAVE_TCGETPGRP */ - -/* Define to 1 if you have the `tcsetpgrp' function. */ -/* #undef HAVE_TCSETPGRP */ - -/* Define to 1 if you have the `tempnam' function. */ -#define HAVE_TEMPNAM 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_TERMIOS_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_TERM_H 1 - -/* Define to 1 if you have the `tgamma' function. */ -#define HAVE_TGAMMA 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_THREAD_H */ - -/* Define to 1 if you have the `timegm' function. */ -/* #undef HAVE_TIMEGM */ - -/* Define to 1 if you have the `times' function. */ -/* #undef HAVE_TIMES */ - -/* Define to 1 if you have the `tmpfile' function. */ -#define HAVE_TMPFILE 1 - -/* Define to 1 if you have the `tmpnam' function. */ -#define HAVE_TMPNAM 1 - -/* Define to 1 if you have the `tmpnam_r' function. */ -/* #undef HAVE_TMPNAM_R */ - -/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use - `HAVE_STRUCT_TM_TM_ZONE' instead. */ -/* #undef HAVE_TM_ZONE */ - -/* Define to 1 if you have the `truncate' function. */ -/* #undef HAVE_TRUNCATE */ - -/* Define to 1 if you don't have `tm_zone' but do have the external array - `tzname'. */ -#define HAVE_TZNAME 1 - -/* Define this if you have tcl and TCL_UTF_MAX==6 */ -/* #undef HAVE_UCS4_TCL */ - -/* Define if your compiler provides uint32_t. */ -#define HAVE_UINT32_T 1 - -/* Define if your compiler provides uint64_t. */ -#define HAVE_UINT64_T 1 - -/* Define to 1 if the system has the type `uintptr_t'. */ -#define HAVE_UINTPTR_T 1 - -/* Define to 1 if you have the `uname' function. */ -/* #undef HAVE_UNAME */ - -/* Define to 1 if you have the header file. */ -#define HAVE_UNISTD_H 1 - -/* Define to 1 if you have the `unlinkat' function. */ -/* #undef HAVE_UNLINKAT */ - -/* Define to 1 if you have the `unsetenv' function. */ -/* #undef HAVE_UNSETENV */ - -/* Define if you have a useable wchar_t type defined in wchar.h; useable means - wchar_t must be an unsigned type with at least 16 bits. (see - Include/unicodeobject.h). */ -#define HAVE_USABLE_WCHAR_T 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_UTIL_H */ - -/* Define to 1 if you have the `utimensat' function. */ -/* #undef HAVE_UTIMENSAT */ - -/* Define to 1 if you have the `utimes' function. */ -/* #undef HAVE_UTIMES */ - -/* Define to 1 if you have the header file. */ -#define HAVE_UTIME_H 1 - -/* Define to 1 if you have the `wait3' function. */ -/* #undef HAVE_WAIT3 */ - -/* Define to 1 if you have the `wait4' function. */ -/* #undef HAVE_WAIT4 */ - -/* Define to 1 if you have the `waitid' function. */ -/* #undef HAVE_WAITID */ - -/* Define to 1 if you have the `waitpid' function. */ -/* #undef HAVE_WAITPID */ - -/* Define if the compiler provides a wchar.h header file. */ -#define HAVE_WCHAR_H 1 - -/* Define to 1 if you have the `wcscoll' function. */ -#define HAVE_WCSCOLL 1 - -/* Define to 1 if you have the `wcsftime' function. */ -#define HAVE_WCSFTIME 1 - -/* Define to 1 if you have the `wcsxfrm' function. */ -#define HAVE_WCSXFRM 1 - -/* Define to 1 if you have the `wmemcmp' function. */ -#define HAVE_WMEMCMP 1 - -/* Define if tzset() actually switches the local timezone in a meaningful way. - */ -/* #undef HAVE_WORKING_TZSET */ - -/* Define to 1 if you have the `writev' function. */ -/* #undef HAVE_WRITEV */ - -/* Define to 1 if you have the header file. */ -#define HAVE_WS2TCPIP_H 1 - -/* Define if the zlib library has inflateCopy */ -#define HAVE_ZLIB_COPY 1 - -/* Define to 1 if you have the `_getpty' function. */ -/* #undef HAVE__GETPTY */ - -/* Define if log1p(-0.) is 0. rather than -0. */ -/* #undef LOG1P_DROPS_ZERO_SIGN */ - -/* Define to 1 if `major', `minor', and `makedev' are declared in . - */ -/* #undef MAJOR_IN_MKDEV */ - -/* Define to 1 if `major', `minor', and `makedev' are declared in - . */ -/* #undef MAJOR_IN_SYSMACROS */ - -/* Define if mvwdelch in curses.h is an expression. */ -#define MVWDELCH_IS_EXPRESSION 1 - -/* Define to 1 if you have WINDOW _flags as internal structure. */ -/* #undef NCURSES_INTERNALS */ - -/* Define to 0 if you have WINDOW _flags in non-opaque structure. */ -/* #undef NCURSES_OPAQUE */ - -/* Define to 1 if you want to use native NT threads */ -#define NT_THREADS 1 - -/* Define to the address where bug reports for this package should be sent. */ -/* #undef PACKAGE_BUGREPORT */ - -/* Define to the full name of this package. */ -/* #undef PACKAGE_NAME */ - -/* Define to the full name and version of this package. */ -/* #undef PACKAGE_STRING */ - -/* Define to the one symbol short name of this package. */ -/* #undef PACKAGE_TARNAME */ - -/* Define to the home page for this package. */ -/* #undef PACKAGE_URL */ - -/* Define to the version of this package. */ -/* #undef PACKAGE_VERSION */ - -/* Define if POSIX semaphores aren't enabled on your system */ -#define POSIX_SEMAPHORES_NOT_ENABLED 1 - -/* Defined if PTHREAD_SCOPE_SYSTEM supported. */ -/* #undef PTHREAD_SYSTEM_SCHED_SUPPORTED */ - -/* Define as the preferred size in bits of long digits */ -/* #undef PYLONG_BITS_IN_DIGIT */ - -/* Define to printf format modifier for long long type */ -#define PY_FORMAT_LONG_LONG "ll" - -/* Define to printf format modifier for Py_ssize_t */ -#define PY_FORMAT_SIZE_T "z" - -/* Define if you want to build an interpreter with many run-time checks. */ -/* #undef Py_DEBUG */ - -/* Defined if Python is built as a shared library. */ -#define Py_ENABLE_SHARED 1 - -/* Define hash algorithm for str, bytes and memoryview. SipHash24: 1, FNV: 2, - externally defined: 0 */ -/* #undef Py_HASH_ALGORITHM */ - -/* assume C89 semantics that RETSIGTYPE is always void */ -#define RETSIGTYPE void - -/* Define if setpgrp() must be called as setpgrp(0, 0). */ -/* #undef SETPGRP_HAVE_ARG */ - -/* Define if i>>j for signed int i does not extend the sign bit when i < 0 */ -/* #undef SIGNED_RIGHT_SHIFT_ZERO_FILLS */ - -/* The size of `double', as computed by sizeof. */ -#define SIZEOF_DOUBLE 8 - -/* The size of `float', as computed by sizeof. */ -#define SIZEOF_FLOAT 4 - -/* The size of `fpos_t', as computed by sizeof. */ -#define SIZEOF_FPOS_T 8 - -/* The size of `int', as computed by sizeof. */ -#define SIZEOF_INT 4 - -/* The size of `long', as computed by sizeof. */ -#define SIZEOF_LONG 4 - -/* The size of `long double', as computed by sizeof. */ -#define SIZEOF_LONG_DOUBLE 12 - -/* The size of `long long', as computed by sizeof. */ -#define SIZEOF_LONG_LONG 8 - -/* The size of `off_t', as computed by sizeof. */ -#define SIZEOF_OFF_T 4 - -/* The size of `pid_t', as computed by sizeof. */ -#define SIZEOF_PID_T 4 - -/* The size of `pthread_t', as computed by sizeof. */ -/* #undef SIZEOF_PTHREAD_T */ - -/* The size of `short', as computed by sizeof. */ -#define SIZEOF_SHORT 2 - -/* The size of `size_t', as computed by sizeof. */ -#define SIZEOF_SIZE_T 4 - -/* The size of `time_t', as computed by sizeof. */ -#define SIZEOF_TIME_T 4 - -/* The size of `uintptr_t', as computed by sizeof. */ -#define SIZEOF_UINTPTR_T 4 - -/* The size of `void *', as computed by sizeof. */ -#define SIZEOF_VOID_P 4 - -/* The size of `wchar_t', as computed by sizeof. */ -#define SIZEOF_WCHAR_T 2 - -/* The size of `_Bool', as computed by sizeof. */ -#define SIZEOF__BOOL 1 - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define if you can safely include both and - (which you can't on SCO ODT 3.0). */ -/* #undef SYS_SELECT_WITH_SYS_TIME */ - -/* Define if tanh(-0.) is -0., or if platform doesn't have signed zeros */ -#define TANH_PRESERVES_ZERO_SIGN 1 - -/* Library needed by timemodule.c: librt may be needed for clock_gettime() */ -/* #undef TIMEMODULE_LIB */ - -/* Define to 1 if you can safely include both and . */ -#define TIME_WITH_SYS_TIME 1 - -/* Define to 1 if your declares `struct tm'. */ -/* #undef TM_IN_SYS_TIME */ - -/* Define if you want to use computed gotos in ceval.c. */ -/* #undef USE_COMPUTED_GOTOS */ - -/* Define to use the C99 inline keyword. */ -#define USE_INLINE 1 - -/* Enable extensions on AIX 3, Interix. */ -#ifndef _ALL_SOURCE -# define _ALL_SOURCE 1 -#endif -/* Enable GNU extensions on systems that have them. */ -#ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -#endif -/* Enable threading extensions on Solaris. */ -#ifndef _POSIX_PTHREAD_SEMANTICS -# define _POSIX_PTHREAD_SEMANTICS 1 -#endif -/* Enable extensions on HP NonStop. */ -#ifndef _TANDEM_SOURCE -# define _TANDEM_SOURCE 1 -#endif -/* Enable general extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# define __EXTENSIONS__ 1 -#endif - - -/* Define if a va_list is an array of some kind */ -/* #undef VA_LIST_IS_ARRAY */ - -/* Define if you want SIGFPE handled (see Include/pyfpe.h). */ -/* #undef WANT_SIGFPE_HANDLER */ - -/* Define if WINDOW in curses.h offers a field _flags. */ -#define WINDOW_HAS_FLAGS 1 - -/* Define if you want documentation strings in extension modules */ -#define WITH_DOC_STRINGS 1 - -/* Define if you want to use the new-style (Openstep, Rhapsody, MacOS) dynamic - linker (dyld) instead of the old-style (NextStep) dynamic linker (rld). - Dyld is necessary to support frameworks. */ -/* #undef WITH_DYLD */ - -/* Define to 1 if libintl is needed for locale functions. */ -/* #undef WITH_LIBINTL */ - -/* Define if you want to produce an OpenStep/Rhapsody framework (shared - library plus accessory files). */ -/* #undef WITH_NEXT_FRAMEWORK */ - -/* Define if you want to compile in Python-specific mallocs */ -#define WITH_PYMALLOC 1 - -/* Define if you want to compile in rudimentary thread support */ -#define WITH_THREAD 1 - -/* Define to profile with the Pentium timestamp counter */ -/* #undef WITH_TSC */ - -/* Define if you want pymalloc to be disabled when running under valgrind */ -/* #undef WITH_VALGRIND */ - -/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most - significant byte first (like Motorola and SPARC, unlike Intel). */ -#if defined AC_APPLE_UNIVERSAL_BUILD -# if defined __BIG_ENDIAN__ -# define WORDS_BIGENDIAN 1 -# endif -#else -# ifndef WORDS_BIGENDIAN -/* # undef WORDS_BIGENDIAN */ -# endif -#endif - -/* Define if arithmetic is subject to x87-style double rounding issue */ -#define X87_DOUBLE_ROUNDING 1 - -/* Define on OpenBSD to activate all library features */ -/* #undef _BSD_SOURCE */ - -/* Define on Irix to enable u_int */ -#define _BSD_TYPES 1 - -/* Define on Darwin to activate all library features */ -#define _DARWIN_C_SOURCE 1 - -/* This must be set to 64 on some systems to enable large file support. */ -/* #undef _FILE_OFFSET_BITS */ - -/* Define on Linux to activate all library features */ -#define _GNU_SOURCE 1 - -/* Define to include mbstate_t for mbrtowc */ -/* #undef _INCLUDE__STDC_A1_SOURCE */ - -/* This must be defined on some systems to enable large file support. */ -/* #undef _LARGEFILE_SOURCE */ - -/* This must be defined on AIX systems to enable large file support. */ -/* #undef _LARGE_FILES */ - -/* Define to 1 if on MINIX. */ -/* #undef _MINIX */ - -/* Define on NetBSD to activate all library features */ -#define _NETBSD_SOURCE 1 - -/* Define to 2 if the system does not provide POSIX.1 features except with - this defined. */ -/* #undef _POSIX_1_SOURCE */ - -/* Define to activate features from IEEE Stds 1003.1-2008 */ -#define _POSIX_C_SOURCE 200809L - -/* Define to 1 if you need to in order for `stat' and other things to work. */ -/* #undef _POSIX_SOURCE */ - -/* Define if you have POSIX threads, and your system does not define that. */ -/* #undef _POSIX_THREADS */ - -/* Define to force use of thread-safe errno, h_errno, and other functions */ -/* #undef _REENTRANT */ - -/* Define for Solaris 2.5.1 so the uint32_t typedef from , - , or is not used. If the typedef were allowed, the - #define below would cause a syntax error. */ -/* #undef _UINT32_T */ - -/* Define for Solaris 2.5.1 so the uint64_t typedef from , - , or is not used. If the typedef were allowed, the - #define below would cause a syntax error. */ -/* #undef _UINT64_T */ - -/* Define to the level of X/Open that your system supports */ -#define _XOPEN_SOURCE 700 - -/* Define to activate Unix95-and-earlier features */ -#define _XOPEN_SOURCE_EXTENDED 1 - -/* Define on FreeBSD to activate all library features */ -#define __BSD_VISIBLE 1 - -/* Define to 1 if type `char' is unsigned and you are not using gcc. */ -#ifndef __CHAR_UNSIGNED__ -/* # undef __CHAR_UNSIGNED__ */ -#endif - -/* Define to 'long' if doesn't define. */ -/* #undef clock_t */ - -/* Define to empty if `const' does not conform to ANSI C. */ -/* #undef const */ - -/* Define to `int' if doesn't define. */ -#define gid_t int - -/* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or to nothing if 'inline' is not supported under any name. */ -#ifndef __cplusplus -/* #undef inline */ -#endif - -/* Define to the type of a signed integer type of width exactly 32 bits if - such a type exists and the standard includes do not define it. */ -/* #undef int32_t */ - -/* Define to the type of a signed integer type of width exactly 64 bits if - such a type exists and the standard includes do not define it. */ -/* #undef int64_t */ - -/* Define to `int' if does not define. */ -/* #undef mode_t */ - -/* Define to `long int' if does not define. */ -/* #undef off_t */ - -/* Define to `int' if does not define. */ -/* #undef pid_t */ - -/* Define to empty if the keyword does not work. */ -/* #undef signed */ - -/* Define to `unsigned int' if does not define. */ -/* #undef size_t */ - -/* Define to `int' if or does not define. */ -/* #undef socklen_t */ - -/* Define to `int' if doesn't define. */ -#define uid_t int - -/* Define to the type of an unsigned integer type of width exactly 32 bits if - such a type exists and the standard includes do not define it. */ -/* #undef uint32_t */ - -/* Define to the type of an unsigned integer type of width exactly 64 bits if - such a type exists and the standard includes do not define it. */ -/* #undef uint64_t */ - -/* Define to empty if the keyword does not work. */ -/* #undef volatile */ - - -/* Define the macros needed if on a UnixWare 7.x system. */ -#if defined(__USLC__) && defined(__SCO_VERSION__) -#define STRICT_SYSV_CURSES /* Don't use ncurses extensions */ -#endif - -#endif /*Py_PYCONFIG_H*/ - diff --git a/windows/AIO/64-bit/pyconfig.h b/windows/AIO/64-bit/pyconfig.h deleted file mode 100755 index 7adf0a9e7..000000000 --- a/windows/AIO/64-bit/pyconfig.h +++ /dev/null @@ -1,1548 +0,0 @@ -/* pyconfig.h. Generated from pyconfig.h.in by configure. */ -/* pyconfig.h.in. Generated from configure.ac by autoheader. */ - - -#ifndef Py_PYCONFIG_H -#define Py_PYCONFIG_H - - -/* Define if building universal (internal helper macro) */ -/* #undef AC_APPLE_UNIVERSAL_BUILD */ - -/* Define for AIX if your compiler is a genuine IBM xlC/xlC_r and you want - support for AIX C++ shared extension modules. */ -/* #undef AIX_GENUINE_CPLUSPLUS */ - -/* Define if C doubles are 64-bit IEEE 754 binary format, stored in ARM - mixed-endian order (byte order 45670123) */ -/* #undef DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 */ - -/* Define if C doubles are 64-bit IEEE 754 binary format, stored with the most - significant byte first */ -/* #undef DOUBLE_IS_BIG_ENDIAN_IEEE754 */ - -/* Define if C doubles are 64-bit IEEE 754 binary format, stored with the - least significant byte first */ -#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1 - -/* Define if --enable-ipv6 is specified */ -/* #undef ENABLE_IPV6 */ - -/* Define if flock needs to be linked with bsd library. */ -/* #undef FLOCK_NEEDS_LIBBSD */ - -/* Define if getpgrp() must be called as getpgrp(0). */ -/* #undef GETPGRP_HAVE_ARG */ - -/* Define if gettimeofday() does not have second (timezone) argument This is - the case on Motorola V4 (R40V4.2) */ -/* #undef GETTIMEOFDAY_NO_TZ */ - -/* Define to 1 if you have the `accept4' function. */ -/* #undef HAVE_ACCEPT4 */ - -/* Define to 1 if you have the `acosh' function. */ -#define HAVE_ACOSH 1 - -/* struct addrinfo */ -#define HAVE_ADDRINFO 1 - -/* Define to 1 if you have the `alarm' function. */ -/* #undef HAVE_ALARM */ - -/* Define if aligned memory access is required */ -/* #undef HAVE_ALIGNED_REQUIRED */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ALLOCA_H */ - -/* Define this if your time.h defines altzone. */ -/* #undef HAVE_ALTZONE */ - -/* Define to 1 if you have the `asinh' function. */ -#define HAVE_ASINH 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ASM_TYPES_H */ - -/* Define to 1 if you have the `atanh' function. */ -#define HAVE_ATANH 1 - -/* Define to 1 if you have the `bind_textdomain_codeset' function. */ -/* #undef HAVE_BIND_TEXTDOMAIN_CODESET */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_BLUETOOTH_BLUETOOTH_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_BLUETOOTH_H */ - -/* Define if mbstowcs(NULL, "text", 0) does not return the number of wide - chars that would be converted. */ -/* #undef HAVE_BROKEN_MBSTOWCS */ - -/* Define if nice() returns success/failure instead of the new priority. */ -/* #undef HAVE_BROKEN_NICE */ - -/* Define if the system reports an invalid PIPE_BUF value. */ -/* #undef HAVE_BROKEN_PIPE_BUF */ - -/* Define if poll() sets errno on invalid file descriptors. */ -/* #undef HAVE_BROKEN_POLL */ - -/* Define if the Posix semaphores do not work on your system */ -/* #undef HAVE_BROKEN_POSIX_SEMAPHORES */ - -/* Define if pthread_sigmask() does not work on your system. */ -/* #undef HAVE_BROKEN_PTHREAD_SIGMASK */ - -/* define to 1 if your sem_getvalue is broken. */ -/* #undef HAVE_BROKEN_SEM_GETVALUE */ - -/* Define if `unsetenv` does not return an int. */ -/* #undef HAVE_BROKEN_UNSETENV */ - -/* Has builtin atomics */ -#define HAVE_BUILTIN_ATOMIC 1 - -/* Define this if you have the type _Bool. */ -#define HAVE_C99_BOOL 1 - -/* Define to 1 if you have the 'chflags' function. */ -/* #undef HAVE_CHFLAGS */ - -/* Define to 1 if you have the `chown' function. */ -/* #undef HAVE_CHOWN */ - -/* Define if you have the 'chroot' function. */ -/* #undef HAVE_CHROOT */ - -/* Define to 1 if you have the `clock' function. */ -#define HAVE_CLOCK 1 - -/* Define to 1 if you have the `clock_getres' function. */ -#define HAVE_CLOCK_GETRES 1 - -/* Define to 1 if you have the `clock_gettime' function. */ -#define HAVE_CLOCK_GETTIME 1 - -/* Define if the C compiler supports computed gotos. */ -#define HAVE_COMPUTED_GOTOS 1 - -/* Define to 1 if you have the `confstr' function. */ -/* #undef HAVE_CONFSTR */ - -/* Define to 1 if you have the header file. */ -#define HAVE_CONIO_H 1 - -/* Define to 1 if you have the `copysign' function. */ -#define HAVE_COPYSIGN 1 - -/* Define to 1 if you have the `ctermid' function. */ -/* #undef HAVE_CTERMID */ - -/* Define if you have the 'ctermid_r' function. */ -/* #undef HAVE_CTERMID_R */ - -/* Define to 1 if you have the header file. */ -#define HAVE_CURSES_H 1 - -/* Define if you have the 'is_term_resized' function. */ -#define HAVE_CURSES_IS_TERM_RESIZED 1 - -/* Define if you have the 'resizeterm' function. */ -#define HAVE_CURSES_RESIZETERM 1 - -/* Define if you have the 'resize_term' function. */ -#define HAVE_CURSES_RESIZE_TERM 1 - -/* Define to 1 if you have the declaration of `isfinite', and to 0 if you - don't. */ -#define HAVE_DECL_ISFINITE 1 - -/* Define to 1 if you have the declaration of `isinf', and to 0 if you don't. - */ -#define HAVE_DECL_ISINF 1 - -/* Define to 1 if you have the declaration of `isnan', and to 0 if you don't. - */ -#define HAVE_DECL_ISNAN 1 - -/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't. - */ -#define HAVE_DECL_TZNAME 1 - -/* Define to 1 if you have the device macros. */ -/* #undef HAVE_DEVICE_MACROS */ - -/* Define to 1 if you have the /dev/ptc device file. */ -/* #undef HAVE_DEV_PTC */ - -/* Define to 1 if you have the /dev/ptmx device file. */ -/* #undef HAVE_DEV_PTMX */ - -/* Define to 1 if you have the header file. */ -#define HAVE_DIRECT_H 1 - -/* Define to 1 if the dirent structure has a d_type field */ -/* #undef HAVE_DIRENT_D_TYPE */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -#define HAVE_DIRENT_H 1 - -/* Define if you have the 'dirfd' function or macro. */ -/* #undef HAVE_DIRFD */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_DLFCN_H */ - -/* Define to 1 if you have the `dlopen' function. */ -/* #undef HAVE_DLOPEN */ - -/* Define to 1 if you have the `dup2' function. */ -#define HAVE_DUP2 1 - -/* Define to 1 if you have the `dup3' function. */ -/* #undef HAVE_DUP3 */ - -/* Defined when any dynamic module loading is enabled. */ -#define HAVE_DYNAMIC_LOADING 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ENDIAN_H */ - -/* Define if you have the 'epoll' functions. */ -/* #undef HAVE_EPOLL */ - -/* Define if you have the 'epoll_create1' function. */ -/* #undef HAVE_EPOLL_CREATE1 */ - -/* Define to 1 if you have the `erf' function. */ -#define HAVE_ERF 1 - -/* Define to 1 if you have the `erfc' function. */ -#define HAVE_ERFC 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_ERRNO_H 1 - -/* Define to 1 if you have the `execv' function. */ -#define HAVE_EXECV 1 - -/* Define to 1 if you have the `expm1' function. */ -#define HAVE_EXPM1 1 - -/* Define to 1 if you have the `faccessat' function. */ -/* #undef HAVE_FACCESSAT */ - -/* Define if you have the 'fchdir' function. */ -/* #undef HAVE_FCHDIR */ - -/* Define to 1 if you have the `fchmod' function. */ -/* #undef HAVE_FCHMOD */ - -/* Define to 1 if you have the `fchmodat' function. */ -/* #undef HAVE_FCHMODAT */ - -/* Define to 1 if you have the `fchown' function. */ -/* #undef HAVE_FCHOWN */ - -/* Define to 1 if you have the `fchownat' function. */ -/* #undef HAVE_FCHOWNAT */ - -/* Define to 1 if you have the header file. */ -#define HAVE_FCNTL_H 1 - -/* Define if you have the 'fdatasync' function. */ -/* #undef HAVE_FDATASYNC */ - -/* Define to 1 if you have the `fdopendir' function. */ -/* #undef HAVE_FDOPENDIR */ - -/* Define to 1 if you have the `fexecve' function. */ -/* #undef HAVE_FEXECVE */ - -/* Define to 1 if you have the `finite' function. */ -#define HAVE_FINITE 1 - -/* Define to 1 if you have the `flock' function. */ -/* #undef HAVE_FLOCK */ - -/* Define to 1 if you have the `fork' function. */ -/* #undef HAVE_FORK */ - -/* Define to 1 if you have the `forkpty' function. */ -/* #undef HAVE_FORKPTY */ - -/* Define to 1 if you have the `fpathconf' function. */ -/* #undef HAVE_FPATHCONF */ - -/* Define to 1 if you have the `fseek64' function. */ -/* #undef HAVE_FSEEK64 */ - -/* Define to 1 if you have the `fseeko' function. */ -#define HAVE_FSEEKO 1 - -/* Define to 1 if you have the `fstatat' function. */ -/* #undef HAVE_FSTATAT */ - -/* Define to 1 if you have the `fstatvfs' function. */ -/* #undef HAVE_FSTATVFS */ - -/* Define if you have the 'fsync' function. */ -/* #undef HAVE_FSYNC */ - -/* Define to 1 if you have the `ftell64' function. */ -/* #undef HAVE_FTELL64 */ - -/* Define to 1 if you have the `ftello' function. */ -#define HAVE_FTELLO 1 - -/* Define to 1 if you have the `ftime' function. */ -#define HAVE_FTIME 1 - -/* Define to 1 if you have the `ftruncate' function. */ -/* #undef HAVE_FTRUNCATE */ - -/* Define to 1 if you have the `futimens' function. */ -/* #undef HAVE_FUTIMENS */ - -/* Define to 1 if you have the `futimes' function. */ -/* #undef HAVE_FUTIMES */ - -/* Define to 1 if you have the `futimesat' function. */ -/* #undef HAVE_FUTIMESAT */ - -/* Define to 1 if you have the `gai_strerror' function. */ -/* #undef HAVE_GAI_STRERROR */ - -/* Define to 1 if you have the `gamma' function. */ -/* #undef HAVE_GAMMA */ - -/* Define if we can use gcc inline assembler to get and set mc68881 fpcr */ -/* #undef HAVE_GCC_ASM_FOR_MC68881 */ - -/* Define if we can use x64 gcc inline assembler */ -#define HAVE_GCC_ASM_FOR_X64 1 - -/* Define if we can use gcc inline assembler to get and set x87 control word - */ -#define HAVE_GCC_ASM_FOR_X87 1 - -/* Define if your compiler provides __uint128_t */ -#define HAVE_GCC_UINT128_T 1 - -/* Define if you have the getaddrinfo function. */ -/* #undef HAVE_GETADDRINFO */ - -/* Define this if you have flockfile(), getc_unlocked(), and funlockfile() */ -/* #undef HAVE_GETC_UNLOCKED */ - -/* Define to 1 if you have the `getentropy' function. */ -/* #undef HAVE_GETENTROPY */ - -/* Define to 1 if you have the `getgrouplist' function. */ -/* #undef HAVE_GETGROUPLIST */ - -/* Define to 1 if you have the `getgroups' function. */ -/* #undef HAVE_GETGROUPS */ - -/* Define to 1 if you have the `gethostbyname' function. */ -/* #undef HAVE_GETHOSTBYNAME */ - -/* Define this if you have some version of gethostbyname_r() */ -/* #undef HAVE_GETHOSTBYNAME_R */ - -/* Define this if you have the 3-arg version of gethostbyname_r(). */ -/* #undef HAVE_GETHOSTBYNAME_R_3_ARG */ - -/* Define this if you have the 5-arg version of gethostbyname_r(). */ -/* #undef HAVE_GETHOSTBYNAME_R_5_ARG */ - -/* Define this if you have the 6-arg version of gethostbyname_r(). */ -/* #undef HAVE_GETHOSTBYNAME_R_6_ARG */ - -/* Define to 1 if you have the `getitimer' function. */ -/* #undef HAVE_GETITIMER */ - -/* Define to 1 if you have the `getloadavg' function. */ -/* #undef HAVE_GETLOADAVG */ - -/* Define to 1 if you have the `getlogin' function. */ -#define HAVE_GETLOGIN 1 - -/* Define to 1 if you have the `getnameinfo' function. */ -/* #undef HAVE_GETNAMEINFO */ - -/* Define if you have the 'getpagesize' function. */ -/* #undef HAVE_GETPAGESIZE */ - -/* Define to 1 if you have the `getpeername' function. */ -#define HAVE_GETPEERNAME 1 - -/* Define to 1 if you have the `getpgid' function. */ -/* #undef HAVE_GETPGID */ - -/* Define to 1 if you have the `getpgrp' function. */ -/* #undef HAVE_GETPGRP */ - -/* Define to 1 if you have the `getpid' function. */ -#define HAVE_GETPID 1 - -/* Define to 1 if you have the `getpriority' function. */ -/* #undef HAVE_GETPRIORITY */ - -/* Define to 1 if you have the `getpwent' function. */ -/* #undef HAVE_GETPWENT */ - -/* Define to 1 if the Linux getrandom() syscall is available */ -/* #undef HAVE_GETRANDOM_SYSCALL */ - -/* Define to 1 if you have the `getresgid' function. */ -/* #undef HAVE_GETRESGID */ - -/* Define to 1 if you have the `getresuid' function. */ -/* #undef HAVE_GETRESUID */ - -/* Define to 1 if you have the `getsid' function. */ -/* #undef HAVE_GETSID */ - -/* Define to 1 if you have the `getspent' function. */ -/* #undef HAVE_GETSPENT */ - -/* Define to 1 if you have the `getspnam' function. */ -/* #undef HAVE_GETSPNAM */ - -/* Define to 1 if you have the `gettimeofday' function. */ -#define HAVE_GETTIMEOFDAY 1 - -/* Define to 1 if you have the `getwd' function. */ -/* #undef HAVE_GETWD */ - -/* Define if glibc has incorrect _FORTIFY_SOURCE wrappers for memmove and - bcopy. */ -/* #undef HAVE_GLIBC_MEMMOVE_BUG */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_GRP_H */ - -/* Define if you have the 'hstrerror' function. */ -/* #undef HAVE_HSTRERROR */ - -/* Define this if you have le64toh() */ -/* #undef HAVE_HTOLE64 */ - -/* Define to 1 if you have the `hypot' function. */ -#define HAVE_HYPOT 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_IEEEFP_H 1 - -/* Define to 1 if you have the `if_nameindex' function. */ -/* #undef HAVE_IF_NAMEINDEX */ - -/* Define if you have the 'inet_aton' function. */ -/* #undef HAVE_INET_ATON */ - -/* Define if you have the 'inet_pton' function. */ -/* #undef HAVE_INET_PTON */ - -/* Define to 1 if you have the `initgroups' function. */ -/* #undef HAVE_INITGROUPS */ - -/* Define if your compiler provides int32_t. */ -#define HAVE_INT32_T 1 - -/* Define if your compiler provides int64_t. */ -#define HAVE_INT64_T 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_INTTYPES_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_IO_H 1 - -/* Define if gcc has the ipa-pure-const bug. */ -/* #undef HAVE_IPA_PURE_CONST_BUG */ - -/* Define to 1 if you have the `kill' function. */ -/* #undef HAVE_KILL */ - -/* Define to 1 if you have the `killpg' function. */ -/* #undef HAVE_KILLPG */ - -/* Define if you have the 'kqueue' functions. */ -/* #undef HAVE_KQUEUE */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LANGINFO_H */ - -/* Defined to enable large file support when an off_t is bigger than a long - and long long is available and at least as big as an off_t. You may need to - add some flags for configuration and compilation to enable this mode. (For - Solaris and Linux, the necessary defines are already defined.) */ -#define HAVE_LARGEFILE_SUPPORT 1 - -/* Define to 1 if you have the 'lchflags' function. */ -/* #undef HAVE_LCHFLAGS */ - -/* Define to 1 if you have the `lchmod' function. */ -/* #undef HAVE_LCHMOD */ - -/* Define to 1 if you have the `lchown' function. */ -/* #undef HAVE_LCHOWN */ - -/* Define to 1 if you have the `lgamma' function. */ -#define HAVE_LGAMMA 1 - -/* Define to 1 if you have the `dl' library (-ldl). */ -/* #undef HAVE_LIBDL */ - -/* Define to 1 if you have the `dld' library (-ldld). */ -/* #undef HAVE_LIBDLD */ - -/* Define to 1 if you have the `ieee' library (-lieee). */ -/* #undef HAVE_LIBIEEE */ - -/* Define to 1 if you have the header file. */ -#define HAVE_LIBINTL_H 1 - -/* Define if you have the readline library (-lreadline). */ -#define HAVE_LIBREADLINE 1 - -/* Define to 1 if you have the `resolv' library (-lresolv). */ -/* #undef HAVE_LIBRESOLV */ - -/* Define to 1 if you have the `sendfile' library (-lsendfile). */ -/* #undef HAVE_LIBSENDFILE */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LIBUTIL_H */ - -/* Define if you have the 'link' function. */ -/* #undef HAVE_LINK */ - -/* Define to 1 if you have the `linkat' function. */ -/* #undef HAVE_LINKAT */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_CAN_BCM_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_CAN_H */ - -/* Define if compiling using Linux 3.6 or later. */ -/* #undef HAVE_LINUX_CAN_RAW_FD_FRAMES */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_CAN_RAW_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_NETLINK_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LINUX_TIPC_H */ - -/* Define to 1 if you have the `lockf' function. */ -/* #undef HAVE_LOCKF */ - -/* Define to 1 if you have the `log1p' function. */ -#define HAVE_LOG1P 1 - -/* Define to 1 if you have the `log2' function. */ -#define HAVE_LOG2 1 - -/* Define this if you have the type long double. */ -#define HAVE_LONG_DOUBLE 1 - -/* Define this if you have the type long long. */ -#define HAVE_LONG_LONG 1 - -/* Define to 1 if you have the `lstat' function. */ -/* #undef HAVE_LSTAT */ - -/* Define to 1 if you have the `lutimes' function. */ -/* #undef HAVE_LUTIMES */ - -/* Define this if you have the makedev macro. */ -/* #undef HAVE_MAKEDEV */ - -/* Define to 1 if you have the `mbrtowc' function. */ -#define HAVE_MBRTOWC 1 - -/* Define to 1 if you have the `memmove' function. */ -#define HAVE_MEMMOVE 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the `memrchr' function. */ -/* #undef HAVE_MEMRCHR */ - -/* Define to 1 if you have the `mkdirat' function. */ -/* #undef HAVE_MKDIRAT */ - -/* Define to 1 if you have the `mkfifo' function. */ -/* #undef HAVE_MKFIFO */ - -/* Define to 1 if you have the `mkfifoat' function. */ -/* #undef HAVE_MKFIFOAT */ - -/* Define to 1 if you have the `mknod' function. */ -/* #undef HAVE_MKNOD */ - -/* Define to 1 if you have the `mknodat' function. */ -/* #undef HAVE_MKNODAT */ - -/* Define to 1 if you have the `mktime' function. */ -#define HAVE_MKTIME 1 - -/* Define to 1 if you have the `mmap' function. */ -/* #undef HAVE_MMAP */ - -/* Define to 1 if you have the `mremap' function. */ -/* #undef HAVE_MREMAP */ - -/* Define to 1 if you have the header file. */ -#define HAVE_NCURSES_H 1 - -/* Define to 1 if you have the header file, and it defines `DIR'. */ -/* #undef HAVE_NDIR_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_NETPACKET_PACKET_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_NET_IF_H */ - -/* Define to 1 if you have the `nice' function. */ -/* #undef HAVE_NICE */ - -/* Define to 1 if you have the `openat' function. */ -/* #undef HAVE_OPENAT */ - -/* Define to 1 if you have the `openpty' function. */ -/* #undef HAVE_OPENPTY */ - -/* Define if compiling using MacOS X 10.5 SDK or later. */ -/* #undef HAVE_OSX105_SDK */ - -/* Define to 1 if you have the `pathconf' function. */ -/* #undef HAVE_PATHCONF */ - -/* Define to 1 if you have the `pause' function. */ -/* #undef HAVE_PAUSE */ - -/* Define to 1 if you have the `pipe2' function. */ -/* #undef HAVE_PIPE2 */ - -/* Define to 1 if you have the `plock' function. */ -/* #undef HAVE_PLOCK */ - -/* Define to 1 if you have the `poll' function. */ -/* #undef HAVE_POLL */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_POLL_H */ - -/* Define to 1 if you have the `posix_fadvise' function. */ -/* #undef HAVE_POSIX_FADVISE */ - -/* Define to 1 if you have the `posix_fallocate' function. */ -/* #undef HAVE_POSIX_FALLOCATE */ - -/* Define to 1 if you have the `pread' function. */ -/* #undef HAVE_PREAD */ - -/* Define if you have the 'prlimit' functions. */ -/* #undef HAVE_PRLIMIT */ - -/* Define to 1 if you have the header file. */ -#define HAVE_PROCESS_H 1 - -/* Define if your compiler supports function prototype */ -#define HAVE_PROTOTYPES 1 - -/* Define to 1 if you have the `pthread_atfork' function. */ -/* #undef HAVE_PTHREAD_ATFORK */ - -/* Defined for Solaris 2.6 bug in pthread header. */ -/* #undef HAVE_PTHREAD_DESTRUCTOR */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_PTHREAD_H */ - -/* Define to 1 if you have the `pthread_init' function. */ -/* #undef HAVE_PTHREAD_INIT */ - -/* Define to 1 if you have the `pthread_kill' function. */ -/* #undef HAVE_PTHREAD_KILL */ - -/* Define to 1 if you have the `pthread_sigmask' function. */ -/* #undef HAVE_PTHREAD_SIGMASK */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_PTY_H */ - -/* Define to 1 if you have the `putenv' function. */ -#define HAVE_PUTENV 1 - -/* Define to 1 if you have the `pwrite' function. */ -/* #undef HAVE_PWRITE */ - -/* Define if the libcrypto has RAND_egd */ -#define HAVE_RAND_EGD 1 - -/* Define to 1 if you have the `readlink' function. */ -/* #undef HAVE_READLINK */ - -/* Define to 1 if you have the `readlinkat' function. */ -/* #undef HAVE_READLINKAT */ - -/* Define to 1 if you have the `readv' function. */ -/* #undef HAVE_READV */ - -/* Define to 1 if you have the `realpath' function. */ -/* #undef HAVE_REALPATH */ - -/* Define to 1 if you have the `renameat' function. */ -/* #undef HAVE_RENAMEAT */ - -/* Define to 1 if you have the 'REPARSE_DATA_BUFFER' structure. */ -/* #undef HAVE_REPARSE_DATA_BUFFER */ - -/* Define if readline supports append_history */ -#define HAVE_RL_APPEND_HISTORY 1 - -/* Define if you have readline 2.1 */ -#define HAVE_RL_CALLBACK 1 - -/* Define if you can turn off readline's signal handling. */ -#define HAVE_RL_CATCH_SIGNAL 1 - -/* Define if you have readline 2.2 */ -#define HAVE_RL_COMPLETION_APPEND_CHARACTER 1 - -/* Define if you have readline 4.0 */ -#define HAVE_RL_COMPLETION_DISPLAY_MATCHES_HOOK 1 - -/* Define if you have readline 4.2 */ -#define HAVE_RL_COMPLETION_MATCHES 1 - -/* Define if you have rl_completion_suppress_append */ -#define HAVE_RL_COMPLETION_SUPPRESS_APPEND 1 - -/* Define if you have readline 4.0 */ -#define HAVE_RL_PRE_INPUT_HOOK 1 - -/* Define to 1 if you have the `round' function. */ -#define HAVE_ROUND 1 - -/* Define to 1 if you have the `sched_get_priority_max' function. */ -#define HAVE_SCHED_GET_PRIORITY_MAX 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SCHED_H */ - -/* Define to 1 if you have the `sched_rr_get_interval' function. */ -/* #undef HAVE_SCHED_RR_GET_INTERVAL */ - -/* Define to 1 if you have the `sched_setaffinity' function. */ -/* #undef HAVE_SCHED_SETAFFINITY */ - -/* Define to 1 if you have the `sched_setparam' function. */ -/* #undef HAVE_SCHED_SETPARAM */ - -/* Define to 1 if you have the `sched_setscheduler' function. */ -/* #undef HAVE_SCHED_SETSCHEDULER */ - -/* Define to 1 if you have the `select' function. */ -/* #undef HAVE_SELECT */ - -/* Define to 1 if you have the `sem_getvalue' function. */ -#define HAVE_SEM_GETVALUE 1 - -/* Define to 1 if you have the `sem_open' function. */ -/* #undef HAVE_SEM_OPEN */ - -/* Define to 1 if you have the `sem_timedwait' function. */ -#define HAVE_SEM_TIMEDWAIT 1 - -/* Define to 1 if you have the `sem_unlink' function. */ -#define HAVE_SEM_UNLINK 1 - -/* Define to 1 if you have the `sendfile' function. */ -/* #undef HAVE_SENDFILE */ - -/* Define to 1 if you have the `setegid' function. */ -/* #undef HAVE_SETEGID */ - -/* Define to 1 if you have the `seteuid' function. */ -/* #undef HAVE_SETEUID */ - -/* Define to 1 if you have the `setgid' function. */ -/* #undef HAVE_SETGID */ - -/* Define if you have the 'setgroups' function. */ -/* #undef HAVE_SETGROUPS */ - -/* Define to 1 if you have the `sethostname' function. */ -/* #undef HAVE_SETHOSTNAME */ - -/* Define to 1 if you have the `setitimer' function. */ -/* #undef HAVE_SETITIMER */ - -/* Define to 1 if you have the `setlocale' function. */ -#define HAVE_SETLOCALE 1 - -/* Define to 1 if you have the `setpgid' function. */ -/* #undef HAVE_SETPGID */ - -/* Define to 1 if you have the `setpgrp' function. */ -/* #undef HAVE_SETPGRP */ - -/* Define to 1 if you have the `setpriority' function. */ -/* #undef HAVE_SETPRIORITY */ - -/* Define to 1 if you have the `setregid' function. */ -/* #undef HAVE_SETREGID */ - -/* Define to 1 if you have the `setresgid' function. */ -/* #undef HAVE_SETRESGID */ - -/* Define to 1 if you have the `setresuid' function. */ -/* #undef HAVE_SETRESUID */ - -/* Define to 1 if you have the `setreuid' function. */ -/* #undef HAVE_SETREUID */ - -/* Define to 1 if you have the `setsid' function. */ -/* #undef HAVE_SETSID */ - -/* Define to 1 if you have the `setuid' function. */ -/* #undef HAVE_SETUID */ - -/* Define to 1 if you have the `setvbuf' function. */ -#define HAVE_SETVBUF 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SHADOW_H */ - -/* Define to 1 if you have the `sigaction' function. */ -/* #undef HAVE_SIGACTION */ - -/* Define to 1 if you have the `sigaltstack' function. */ -/* #undef HAVE_SIGALTSTACK */ - -/* Define to 1 if you have the `siginterrupt' function. */ -/* #undef HAVE_SIGINTERRUPT */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SIGNAL_H 1 - -/* Define to 1 if you have the `sigpending' function. */ -/* #undef HAVE_SIGPENDING */ - -/* Define to 1 if you have the `sigrelse' function. */ -/* #undef HAVE_SIGRELSE */ - -/* Define to 1 if you have the `sigtimedwait' function. */ -/* #undef HAVE_SIGTIMEDWAIT */ - -/* Define to 1 if you have the `sigwait' function. */ -/* #undef HAVE_SIGWAIT */ - -/* Define to 1 if you have the `sigwaitinfo' function. */ -/* #undef HAVE_SIGWAITINFO */ - -/* Define to 1 if you have the `snprintf' function. */ -#define HAVE_SNPRINTF 1 - -/* Define if sockaddr has sa_len member */ -/* #undef HAVE_SOCKADDR_SA_LEN */ - -/* struct sockaddr_storage (sys/socket.h) */ -#define HAVE_SOCKADDR_STORAGE 1 - -/* Define if you have the 'socketpair' function. */ -/* #undef HAVE_SOCKETPAIR */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SPAWN_H */ - -/* Define if your compiler provides ssize_t */ -#define HAVE_SSIZE_T 1 - -/* Define to 1 if you have the `statvfs' function. */ -/* #undef HAVE_STATVFS */ - -/* Define if you have struct stat.st_mtim.tv_nsec */ -/* #undef HAVE_STAT_TV_NSEC */ - -/* Define if you have struct stat.st_mtimensec */ -/* #undef HAVE_STAT_TV_NSEC2 */ - -/* Define if your compiler supports variable length function prototypes (e.g. - void fprintf(FILE *, char *, ...);) *and* */ -#define HAVE_STDARG_PROTOTYPES 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDINT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Has stdatomic.h, atomic_int and _Atomic void* types work */ -#define HAVE_STD_ATOMIC 1 - -/* Define to 1 if you have the `strdup' function. */ -#define HAVE_STRDUP 1 - -/* Define to 1 if you have the `strftime' function. */ -#define HAVE_STRFTIME 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRINGS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the `strlcpy' function. */ -/* #undef HAVE_STRLCPY */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_STROPTS_H */ - -/* Define to 1 if `st_birthtime' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_BIRTHTIME */ - -/* Define to 1 if `st_blksize' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */ - -/* Define to 1 if `st_blocks' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_BLOCKS */ - -/* Define to 1 if `st_flags' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_FLAGS */ - -/* Define to 1 if `st_gen' is a member of `struct stat'. */ -/* #undef HAVE_STRUCT_STAT_ST_GEN */ - -/* Define to 1 if `st_rdev' is a member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_RDEV 1 - -/* Define to 1 if `tm_zone' is a member of `struct tm'. */ -/* #undef HAVE_STRUCT_TM_TM_ZONE */ - -/* Define to 1 if your `struct stat' has `st_blocks'. Deprecated, use - `HAVE_STRUCT_STAT_ST_BLOCKS' instead. */ -/* #undef HAVE_ST_BLOCKS */ - -/* Define if you have the 'symlink' function. */ -/* #undef HAVE_SYMLINK */ - -/* Define to 1 if you have the `symlinkat' function. */ -/* #undef HAVE_SYMLINKAT */ - -/* Define to 1 if you have the `sync' function. */ -/* #undef HAVE_SYNC */ - -/* Define to 1 if you have the `sysconf' function. */ -/* #undef HAVE_SYSCONF */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYSEXITS_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_AUDIOIO_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_BSDTTY_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_DEVPOLL_H */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_DIR_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_ENDIAN_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_EPOLL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_EVENT_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_FILE_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_IOCTL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_KERN_CONTROL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_LOADAVG_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_LOCK_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_MKDEV_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_MODEM_H */ - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_NDIR_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_PARAM_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_POLL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_RESOURCE_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SELECT_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SENDFILE_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SOCKET_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_STATVFS_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SYSCALL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SYS_DOMAIN_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_TERMIO_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_TIMES_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TIME_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_UIO_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_UN_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_UTSNAME_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_WAIT_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_XATTR_H */ - -/* Define to 1 if you have the `tcgetpgrp' function. */ -/* #undef HAVE_TCGETPGRP */ - -/* Define to 1 if you have the `tcsetpgrp' function. */ -/* #undef HAVE_TCSETPGRP */ - -/* Define to 1 if you have the `tempnam' function. */ -#define HAVE_TEMPNAM 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_TERMIOS_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_TERM_H 1 - -/* Define to 1 if you have the `tgamma' function. */ -#define HAVE_TGAMMA 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_THREAD_H */ - -/* Define to 1 if you have the `timegm' function. */ -/* #undef HAVE_TIMEGM */ - -/* Define to 1 if you have the `times' function. */ -/* #undef HAVE_TIMES */ - -/* Define to 1 if you have the `tmpfile' function. */ -#define HAVE_TMPFILE 1 - -/* Define to 1 if you have the `tmpnam' function. */ -#define HAVE_TMPNAM 1 - -/* Define to 1 if you have the `tmpnam_r' function. */ -/* #undef HAVE_TMPNAM_R */ - -/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use - `HAVE_STRUCT_TM_TM_ZONE' instead. */ -/* #undef HAVE_TM_ZONE */ - -/* Define to 1 if you have the `truncate' function. */ -/* #undef HAVE_TRUNCATE */ - -/* Define to 1 if you don't have `tm_zone' but do have the external array - `tzname'. */ -#define HAVE_TZNAME 1 - -/* Define this if you have tcl and TCL_UTF_MAX==6 */ -/* #undef HAVE_UCS4_TCL */ - -/* Define if your compiler provides uint32_t. */ -#define HAVE_UINT32_T 1 - -/* Define if your compiler provides uint64_t. */ -#define HAVE_UINT64_T 1 - -/* Define to 1 if the system has the type `uintptr_t'. */ -#define HAVE_UINTPTR_T 1 - -/* Define to 1 if you have the `uname' function. */ -/* #undef HAVE_UNAME */ - -/* Define to 1 if you have the header file. */ -#define HAVE_UNISTD_H 1 - -/* Define to 1 if you have the `unlinkat' function. */ -/* #undef HAVE_UNLINKAT */ - -/* Define to 1 if you have the `unsetenv' function. */ -/* #undef HAVE_UNSETENV */ - -/* Define if you have a useable wchar_t type defined in wchar.h; useable means - wchar_t must be an unsigned type with at least 16 bits. (see - Include/unicodeobject.h). */ -#define HAVE_USABLE_WCHAR_T 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_UTIL_H */ - -/* Define to 1 if you have the `utimensat' function. */ -/* #undef HAVE_UTIMENSAT */ - -/* Define to 1 if you have the `utimes' function. */ -/* #undef HAVE_UTIMES */ - -/* Define to 1 if you have the header file. */ -#define HAVE_UTIME_H 1 - -/* Define to 1 if you have the `wait3' function. */ -/* #undef HAVE_WAIT3 */ - -/* Define to 1 if you have the `wait4' function. */ -/* #undef HAVE_WAIT4 */ - -/* Define to 1 if you have the `waitid' function. */ -/* #undef HAVE_WAITID */ - -/* Define to 1 if you have the `waitpid' function. */ -/* #undef HAVE_WAITPID */ - -/* Define if the compiler provides a wchar.h header file. */ -#define HAVE_WCHAR_H 1 - -/* Define to 1 if you have the `wcscoll' function. */ -#define HAVE_WCSCOLL 1 - -/* Define to 1 if you have the `wcsftime' function. */ -#define HAVE_WCSFTIME 1 - -/* Define to 1 if you have the `wcsxfrm' function. */ -#define HAVE_WCSXFRM 1 - -/* Define to 1 if you have the `wmemcmp' function. */ -#define HAVE_WMEMCMP 1 - -/* Define if tzset() actually switches the local timezone in a meaningful way. - */ -/* #undef HAVE_WORKING_TZSET */ - -/* Define to 1 if you have the `writev' function. */ -/* #undef HAVE_WRITEV */ - -/* Define to 1 if you have the header file. */ -#define HAVE_WS2TCPIP_H 1 - -/* Define if the zlib library has inflateCopy */ -#define HAVE_ZLIB_COPY 1 - -/* Define to 1 if you have the `_getpty' function. */ -/* #undef HAVE__GETPTY */ - -/* Define if log1p(-0.) is 0. rather than -0. */ -/* #undef LOG1P_DROPS_ZERO_SIGN */ - -/* Define to 1 if `major', `minor', and `makedev' are declared in . - */ -/* #undef MAJOR_IN_MKDEV */ - -/* Define to 1 if `major', `minor', and `makedev' are declared in - . */ -/* #undef MAJOR_IN_SYSMACROS */ - -/* Define if mvwdelch in curses.h is an expression. */ -#define MVWDELCH_IS_EXPRESSION 1 - -/* Define to 1 if you have WINDOW _flags as internal structure. */ -/* #undef NCURSES_INTERNALS */ - -/* Define to 0 if you have WINDOW _flags in non-opaque structure. */ -/* #undef NCURSES_OPAQUE */ - -/* Define to 1 if you want to use native NT threads */ -#define NT_THREADS 1 - -/* Define to the address where bug reports for this package should be sent. */ -/* #undef PACKAGE_BUGREPORT */ - -/* Define to the full name of this package. */ -/* #undef PACKAGE_NAME */ - -/* Define to the full name and version of this package. */ -/* #undef PACKAGE_STRING */ - -/* Define to the one symbol short name of this package. */ -/* #undef PACKAGE_TARNAME */ - -/* Define to the home page for this package. */ -/* #undef PACKAGE_URL */ - -/* Define to the version of this package. */ -/* #undef PACKAGE_VERSION */ - -/* Define if POSIX semaphores aren't enabled on your system */ -#define POSIX_SEMAPHORES_NOT_ENABLED 1 - -/* Defined if PTHREAD_SCOPE_SYSTEM supported. */ -/* #undef PTHREAD_SYSTEM_SCHED_SUPPORTED */ - -/* Define as the preferred size in bits of long digits */ -/* #undef PYLONG_BITS_IN_DIGIT */ - -/* Define to printf format modifier for long long type */ -#define PY_FORMAT_LONG_LONG "ll" - -/* Define to printf format modifier for Py_ssize_t */ -#define PY_FORMAT_SIZE_T "z" - -/* Define if you want to build an interpreter with many run-time checks. */ -/* #undef Py_DEBUG */ - -/* Defined if Python is built as a shared library. */ -#define Py_ENABLE_SHARED 1 - -/* Define hash algorithm for str, bytes and memoryview. SipHash24: 1, FNV: 2, - externally defined: 0 */ -/* #undef Py_HASH_ALGORITHM */ - -/* assume C89 semantics that RETSIGTYPE is always void */ -#define RETSIGTYPE void - -/* Define if setpgrp() must be called as setpgrp(0, 0). */ -/* #undef SETPGRP_HAVE_ARG */ - -/* Define if i>>j for signed int i does not extend the sign bit when i < 0 */ -/* #undef SIGNED_RIGHT_SHIFT_ZERO_FILLS */ - -/* The size of `double', as computed by sizeof. */ -#define SIZEOF_DOUBLE 8 - -/* The size of `float', as computed by sizeof. */ -#define SIZEOF_FLOAT 4 - -/* The size of `fpos_t', as computed by sizeof. */ -#define SIZEOF_FPOS_T 8 - -/* The size of `int', as computed by sizeof. */ -#define SIZEOF_INT 4 - -/* The size of `long', as computed by sizeof. */ -#define SIZEOF_LONG 4 - -/* The size of `long double', as computed by sizeof. */ -#define SIZEOF_LONG_DOUBLE 16 - -/* The size of `long long', as computed by sizeof. */ -#define SIZEOF_LONG_LONG 8 - -/* The size of `off_t', as computed by sizeof. */ -#define SIZEOF_OFF_T 4 - -/* The size of `pid_t', as computed by sizeof. */ -#define SIZEOF_PID_T 8 - -/* The size of `pthread_t', as computed by sizeof. */ -/* #undef SIZEOF_PTHREAD_T */ - -/* The size of `short', as computed by sizeof. */ -#define SIZEOF_SHORT 2 - -/* The size of `size_t', as computed by sizeof. */ -#define SIZEOF_SIZE_T 8 - -/* The size of `time_t', as computed by sizeof. */ -#define SIZEOF_TIME_T 8 - -/* The size of `uintptr_t', as computed by sizeof. */ -#define SIZEOF_UINTPTR_T 8 - -/* The size of `void *', as computed by sizeof. */ -#define SIZEOF_VOID_P 8 - -/* The size of `wchar_t', as computed by sizeof. */ -#define SIZEOF_WCHAR_T 2 - -/* The size of `_Bool', as computed by sizeof. */ -#define SIZEOF__BOOL 1 - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define if you can safely include both and - (which you can't on SCO ODT 3.0). */ -/* #undef SYS_SELECT_WITH_SYS_TIME */ - -/* Define if tanh(-0.) is -0., or if platform doesn't have signed zeros */ -#define TANH_PRESERVES_ZERO_SIGN 1 - -/* Library needed by timemodule.c: librt may be needed for clock_gettime() */ -/* #undef TIMEMODULE_LIB */ - -/* Define to 1 if you can safely include both and . */ -#define TIME_WITH_SYS_TIME 1 - -/* Define to 1 if your declares `struct tm'. */ -/* #undef TM_IN_SYS_TIME */ - -/* Define if you want to use computed gotos in ceval.c. */ -/* #undef USE_COMPUTED_GOTOS */ - -/* Define to use the C99 inline keyword. */ -#define USE_INLINE 1 - -/* Enable extensions on AIX 3, Interix. */ -#ifndef _ALL_SOURCE -# define _ALL_SOURCE 1 -#endif -/* Enable GNU extensions on systems that have them. */ -#ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -#endif -/* Enable threading extensions on Solaris. */ -#ifndef _POSIX_PTHREAD_SEMANTICS -# define _POSIX_PTHREAD_SEMANTICS 1 -#endif -/* Enable extensions on HP NonStop. */ -#ifndef _TANDEM_SOURCE -# define _TANDEM_SOURCE 1 -#endif -/* Enable general extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# define __EXTENSIONS__ 1 -#endif - - -/* Define if a va_list is an array of some kind */ -/* #undef VA_LIST_IS_ARRAY */ - -/* Define if you want SIGFPE handled (see Include/pyfpe.h). */ -/* #undef WANT_SIGFPE_HANDLER */ - -/* Define if WINDOW in curses.h offers a field _flags. */ -#define WINDOW_HAS_FLAGS 1 - -/* Define if you want documentation strings in extension modules */ -#define WITH_DOC_STRINGS 1 - -/* Define if you want to use the new-style (Openstep, Rhapsody, MacOS) dynamic - linker (dyld) instead of the old-style (NextStep) dynamic linker (rld). - Dyld is necessary to support frameworks. */ -/* #undef WITH_DYLD */ - -/* Define to 1 if libintl is needed for locale functions. */ -/* #undef WITH_LIBINTL */ - -/* Define if you want to produce an OpenStep/Rhapsody framework (shared - library plus accessory files). */ -/* #undef WITH_NEXT_FRAMEWORK */ - -/* Define if you want to compile in Python-specific mallocs */ -#define WITH_PYMALLOC 1 - -/* Define if you want to compile in rudimentary thread support */ -#define WITH_THREAD 1 - -/* Define to profile with the Pentium timestamp counter */ -/* #undef WITH_TSC */ - -/* Define if you want pymalloc to be disabled when running under valgrind */ -/* #undef WITH_VALGRIND */ - -/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most - significant byte first (like Motorola and SPARC, unlike Intel). */ -#if defined AC_APPLE_UNIVERSAL_BUILD -# if defined __BIG_ENDIAN__ -# define WORDS_BIGENDIAN 1 -# endif -#else -# ifndef WORDS_BIGENDIAN -/* # undef WORDS_BIGENDIAN */ -# endif -#endif - -/* Define if arithmetic is subject to x87-style double rounding issue */ -/* #undef X87_DOUBLE_ROUNDING */ - -/* Define on OpenBSD to activate all library features */ -/* #undef _BSD_SOURCE */ - -/* Define on Irix to enable u_int */ -#define _BSD_TYPES 1 - -/* Define on Darwin to activate all library features */ -#define _DARWIN_C_SOURCE 1 - -/* This must be set to 64 on some systems to enable large file support. */ -/* #undef _FILE_OFFSET_BITS */ - -/* Define on Linux to activate all library features */ -#define _GNU_SOURCE 1 - -/* Define to include mbstate_t for mbrtowc */ -/* #undef _INCLUDE__STDC_A1_SOURCE */ - -/* This must be defined on some systems to enable large file support. */ -/* #undef _LARGEFILE_SOURCE */ - -/* This must be defined on AIX systems to enable large file support. */ -/* #undef _LARGE_FILES */ - -/* Define to 1 if on MINIX. */ -/* #undef _MINIX */ - -/* Define on NetBSD to activate all library features */ -#define _NETBSD_SOURCE 1 - -/* Define to 2 if the system does not provide POSIX.1 features except with - this defined. */ -/* #undef _POSIX_1_SOURCE */ - -/* Define to activate features from IEEE Stds 1003.1-2008 */ -#define _POSIX_C_SOURCE 200809L - -/* Define to 1 if you need to in order for `stat' and other things to work. */ -/* #undef _POSIX_SOURCE */ - -/* Define if you have POSIX threads, and your system does not define that. */ -/* #undef _POSIX_THREADS */ - -/* Define to force use of thread-safe errno, h_errno, and other functions */ -/* #undef _REENTRANT */ - -/* Define for Solaris 2.5.1 so the uint32_t typedef from , - , or is not used. If the typedef were allowed, the - #define below would cause a syntax error. */ -/* #undef _UINT32_T */ - -/* Define for Solaris 2.5.1 so the uint64_t typedef from , - , or is not used. If the typedef were allowed, the - #define below would cause a syntax error. */ -/* #undef _UINT64_T */ - -/* Define to the level of X/Open that your system supports */ -#define _XOPEN_SOURCE 700 - -/* Define to activate Unix95-and-earlier features */ -#define _XOPEN_SOURCE_EXTENDED 1 - -/* Define on FreeBSD to activate all library features */ -#define __BSD_VISIBLE 1 - -/* Define to 1 if type `char' is unsigned and you are not using gcc. */ -#ifndef __CHAR_UNSIGNED__ -/* # undef __CHAR_UNSIGNED__ */ -#endif - -/* Define to 'long' if doesn't define. */ -/* #undef clock_t */ - -/* Define to empty if `const' does not conform to ANSI C. */ -/* #undef const */ - -/* Define to `int' if doesn't define. */ -#define gid_t int - -/* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or to nothing if 'inline' is not supported under any name. */ -#ifndef __cplusplus -/* #undef inline */ -#endif - -/* Define to the type of a signed integer type of width exactly 32 bits if - such a type exists and the standard includes do not define it. */ -/* #undef int32_t */ - -/* Define to the type of a signed integer type of width exactly 64 bits if - such a type exists and the standard includes do not define it. */ -/* #undef int64_t */ - -/* Define to `int' if does not define. */ -/* #undef mode_t */ - -/* Define to `long int' if does not define. */ -/* #undef off_t */ - -/* Define to `int' if does not define. */ -/* #undef pid_t */ - -/* Define to empty if the keyword does not work. */ -/* #undef signed */ - -/* Define to `unsigned int' if does not define. */ -/* #undef size_t */ - -/* Define to `int' if or does not define. */ -/* #undef socklen_t */ - -/* Define to `int' if doesn't define. */ -#define uid_t int - -/* Define to the type of an unsigned integer type of width exactly 32 bits if - such a type exists and the standard includes do not define it. */ -/* #undef uint32_t */ - -/* Define to the type of an unsigned integer type of width exactly 64 bits if - such a type exists and the standard includes do not define it. */ -/* #undef uint64_t */ - -/* Define to empty if the keyword does not work. */ -/* #undef volatile */ - - -/* Define the macros needed if on a UnixWare 7.x system. */ -#if defined(__USLC__) && defined(__SCO_VERSION__) -#define STRICT_SYSV_CURSES /* Don't use ncurses extensions */ -#endif - -#endif /*Py_PYCONFIG_H*/ - diff --git a/windows/nonAIO/BUILD_WIN32.TXT b/windows/nonAIO/BUILD_WIN32.TXT deleted file mode 100644 index 2ed00e6a3..000000000 --- a/windows/nonAIO/BUILD_WIN32.TXT +++ /dev/null @@ -1,97 +0,0 @@ - -HOW TO CREATE A WINDOWS INSTALLER - -Introduction. -============= -It is possible to build two types of installer - - - Release installer, intended for end user. The release installer is built from the - release tarball. - - - Development installer, used for testing nsis install script, and packaging issues. - This installer is not intended for end user. Instalation of a Development installer - will overwrite an already installed released Gramps application. Running a development - installer will warn with dialog that the installer is not an official release. - -The following procedure is capable of creating a Windows installer from either Windows -or Linux OS's as long as the correct tools are installed. - -The following programs are required to be installed and on the path - - python (currently only tested on python 2.6 - not ready for python 3.x yet) - - nsis at least V2.42 (http://nsis.sourceforge.net or apt-get install nsis) - - msgfmt (for windows http://gnuwin32.sourceforge.net/packages/gettext.htm) - - Extra tools for development installer build - - svn (subversion ) - -Release Installer -================= -To create an offical release of gramps download the required tarball for a release -from sourceforge. The files that are contained within the tarball consist of the files -that make up an offical release. - -i.e. - - WINDOWS - [PATH_TO_SCRIPT]\build_GrampsWin32.py -t TARBALL_PATH - or - c:\python26\python [PATH_TO_SCRIPT]\build_GrampsWin32.py -t TARBALL_PATH - - LINUX - python2.6 [PATH_TO_SCRIPT]/build_GrampsWin32.py -t TARBALL_PATH - -where TARBALL path is the path to the tarball including the tarball name. -The build will happen on the dir you run the script from, you can also -control the build dir with the -oDIR, --out=DIR options - - -Development installer - Build from within SVN version tree. -=========================================================== -NOTE: This installer will package ALL plugins that are part of SVN version - control into the installer, even if it's not intended for end user. - - ** The offical RELEASE of GRAMPS is built from tarball. (see above)** - -It works with a subversion working copy of Gramps, it automatically -queries configure.in to get the correct gramps version number that -includes the SVN revision number. - -Procedure: -From the command prompt, change to the path -[GRAMPS_SVN]\windows\builder - -Run the build script with no arguments, the script will assume it's being run -from a gramps subversion working copy, and then commence the build. - -It will export the sources from svn to create the correct directory image, -complile the langauage files, and package all up into the installer. - -i.e. - WINDOWS - build_GrampsWin32.py - or - c:\python26\python build_GrampsWin32.py - - LINUX - python2.6 build_GrampsWin32.py - -============== Build Script Options ================================================ ->build_GrampsWin32.py --help - -Create Gramps Windows Installer. -Usage: - python build_GrampsWin32.py [options] [repository_path] - -Arguments: - repository_path Path to the repository to build GRAMPS from, this can be either - - The root path of a SVN working copy - - A tarball that has been saved on local disk - - Left blank to build the SVN working copy this file is part of -Options: - -h, --help This help message. - -oDIR, --out=DIR Directory to build files (optional) - --nsis_only Build NSIS only (does not Clean & Build All) - -t --tarball Build release version from Tarball. - -mDIR, --msgdir=DIR Directory to msgfmt.exe - -========================================================================================== \ No newline at end of file diff --git a/windows/nonAIO/builder/build_GrampsWin32.py b/windows/nonAIO/builder/build_GrampsWin32.py deleted file mode 100644 index 16aaac51f..000000000 --- a/windows/nonAIO/builder/build_GrampsWin32.py +++ /dev/null @@ -1,639 +0,0 @@ -# -# Gramps - a GTK+ based genealogy program -# -# Copyright (C) 2006 Brian Matherly -# Copyright (C) 2008 Stephen George -# -# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# $Id: $ - -import os, glob, sys, shutil -import string -import os.path as path -import subprocess - -CONFIGURE_IN = 'configure.in' -CONST_PY_IN = 'src/const.py.in' -TRANSLATE_FOLDER = 'po' - -EXTRA_FILES = [ 'COPYING', 'NEWS', 'FAQ', 'AUTHORS'] - -FULL_COLON_SUBST = "~" - -#min required version of NSIS -MIN_NSIS_VERSION = (2,42) - -#tools used during build -MAKENSIS_exe = None -SVN_exe = None -po_errs = [] -po_oks = [] - -import gobject - - -#==== Set up logging system -# need to also set up a logger for when run as a module. - -# change to set up a console logger in module global space. -# then add the file logger later once I know the path -import logging -logging.basicConfig(level=logging.DEBUG, - format='%(asctime)s %(name)-10s %(levelname)-8s %(message)s', - datefmt='%H:%M', - filename= 'build.log', #path.join(out_dir,'build.log'), - filemode='w') -#create a Handler for the console -console = logging.StreamHandler() -console.setLevel(logging.INFO) -#Set a simle format for console -formatter = logging.Formatter('%(levelname)-8s %(message)s') -console.setFormatter(formatter) -#add the console handler to the root handler -log = logging.getLogger('BuildApp') -log.addHandler(console) - - -class buildbase(GObject.GObject): - __gsignals__={ - "build_progresstext" : (GObject.SignalFlags.RUN_LAST, None, [GObject.TYPE_STRING]), - "build_progressfraction" : (GObject.SignalFlags.RUN_LAST, None, [GObject.TYPE_FLOAT]), - } - - def __init(self): - GObject.GObject.__init__(self) - self.gramps_version = 'VERSION-UNKNOWN' - self.bTarball = bTarball - self.build_root = '.' # the directory were the build source is located - self.out_dir = '.' # the directory to output final installer to, and the expand source to - self.repository_path = '.' #where the source comes from, either SVN root or a tarball - self.bBuildInstaller = True - self.tarbase3 = '.' - - def getbuild_src(self): - return os.path.join(self.build_root, 'src') - - build_src = property(getbuild_src) - - def isGrampsRoot(self, root ): - log.debug( 'isGrampsRoot: %s' % root ) - if path.isfile(path.join(root, CONFIGURE_IN)): - if path.isfile(path.join(root, CONST_PY_IN)): - if path.isdir(path.join(root, TRANSLATE_FOLDER)): - return True - return False - - def getSVNRevision(self, dir ): - log.debug('========== getSVNRevision(%s)' % dir) - cmd = 'svnversion -n %s' % dir - log.debug( "Running: %s" % cmd ) - - proc = subprocess.Popen( cmd, shell = True, stdout=subprocess.PIPE, stderr=subprocess.PIPE ) - (out, err) = proc.communicate() - output = string.strip(out) - log.debug( output ) - if err: - for line in err.split('\n'): - log.error(line) - if not stdout: - output = '-UNKNOWN' - return 'SVN' + output - - def exportSVN(self, svn_dir, destdir): - ''' - svn export PATH1 PATH2 - exports a clean directory tree from the working copy specified by PATH1 into PATH2. - All local changes will be preserved, but files not under version control will not be copied. - - destdir cannot exist, script will clean up dir first - ''' - log.debug('========== exportSVN(%s, %s)' % (svn_dir, destdir) ) -# cmd = '"%s" export %s %s' % (SVN_exe ,svn_dir, destdir) - cmd = [SVN_exe, 'export' ,svn_dir, destdir] #'"%s" export %s %s' % (SVN_exe ,svn_dir, destdir) - - log.info( "Running: %s" % cmd) - - proc = subprocess.Popen( cmd, shell = True, stdout=subprocess.PIPE, stderr=subprocess.PIPE ) - (out, err) = proc.communicate() - output = string.strip(out) - log.info( output ) - if err: - log.error(err) - - def copyExtraFilesToBuildDir(self, source_path): - ''' - A few extra files not in src directory needs to be copied to the build dir - ''' - log.debug('========== copyExtraFilesToBuildDir(%s)' % (source_path)) - for file in EXTRA_FILES: - outfile = file - if file == 'NEWS': - #Jump through hoops tomake sure the end of line charactors are windows format (wont work on linux!!) - outfile = 'NEWS.TXT' #Lets add .TXT suffix to filename so installer knows to call notepad - fnews = open(os.path.join(source_path,file), 'r') - newslines = fnews.readlines() - newsout = open(os.path.join(self.build_src,outfile), 'w') - newsout.writelines(newslines) - newsout.close() - fnews.close() - else: - shutil.copy(os.path.join(source_path,file), os.path.join(self.build_src,outfile) ) - - def compileInstallScript(self): - ''' - Now we got a build directory, lets create the installation program - ''' - log.debug('========== compileInstallScript()') - log.info('Compiling NullSoft install script .... be patient') - # calc path to gramps2.nsi - # need to ensure __file__ has full path, under linux it does not. - thisfilepath = os.path.abspath(__file__) - pth = os.path.relpath(os.path.dirname( thisfilepath ), os.getcwd()) - pth2nsis_script = os.path.join(pth, 'gramps2.nsi') - - #should tests be more along lines of os.name which returns 'posix', 'nt', 'mac', 'os2', 'ce', 'java', 'riscos' - if sys.platform == 'win32': -# cmd = '"%s" /V3 %s' % (MAKENSIS_exe, pth2nsis_script) - cmd = [MAKENSIS_exe, '/V3',pth2nsis_script] - elif sys.platform == 'linux2': - #assumption makensis is installed and on the path - cmd = '%s -V3 %s' % (MAKENSIS_exe, pth2nsis_script) - - log.info( "Running: %s" % cmd) - # Need to define the following enviroment variables for NSIS script - os.environ['GRAMPS_VER'] = self.gramps_version - os.environ['GRAMPS_BUILD_DIR'] = os.path.abspath(self.build_src) - os.environ['GRAMPS_OUT_DIR'] = os.path.abspath(self.out_dir) - - proc = subprocess.Popen( cmd, shell = True, stdout=subprocess.PIPE, stderr=subprocess.PIPE ) - (out, err) = proc.communicate() - output = string.strip(out) - log.info( output ) - if err: - log.error(err) - - def getVersionFromConfigureIn(self, repository_path): - log.debug('========== read_config_in(%s)' % repository_path) - fin = open('%s/configure.in' % repository_path, 'r') - conf_lines = fin.readlines() - fin.close() - return self.getVersionFromLines(conf_lines) - - def getVersionFromLines(self, conf_lines): - log.debug('========== getVersionFromLines()') - for line in conf_lines: - if 'AC_INIT(gramps' in line: - junk, ver, junk2 = line.split(',') - elif line[:7] == 'RELEASE': - junk,release = line.split('=') - if 'SVN$' in release:#not a release version - release = self.getSVNRevision( repository_path ) - elif not self.bTarball: # This is aRelease, lets make sure svn working copy is prestine -# elif not bTarball: # This is aRelease, lets make sure svn working copy is prestine - test_num = getSVNRevision( repository_path ) - if test_num.endswith('M'): # in test_num: #endsWith - log.warning('*==========================================================') - log.warning('* Building a Release from modified SVN Working Copy ') - log.warning('* ===> Creating %s-%s from %s-%s <==' % (ver.strip(), release.strip(),ver.strip(), test_num.strip()) ) - log.warning('*==========================================================') - gversion = '%s-%s' % (ver.strip(), release.strip()) - gversion = gversion.replace(":", FULL_COLON_SUBST) # if it's a mixed version, then need to replace the : with something else - log.info( 'GrampsVersion: %s' % gversion ) - return gversion - - def processPO( self ): - log.debug('========== processPO( )') - po_dir = os.path.join(self.build_root, "po") - mo_dir = os.path.join(self.build_src, "lang") - if not os.path.exists(mo_dir): - os.makedirs(mo_dir) - #TODO: find a better way to handle different platforms - if sys.platform == 'win32': - po_files = glob.glob(po_dir + r"\*.po") - # no longer using python msgfmt as it doesn't handle plurals (april 2010) - # msgfmtCmd = path.normpath(path.join(sys.prefix, "Tools/i18n/msgfmt.py") ) - - # GetText Win 32 obtained from http://gnuwin32.sourceforge.net/packages/gettext.htm - # ....\gettext\bin\msgfmt.exe needs to be on the path - msgfmtCmd = 'msgfmt.exe' - #print('msgfmtCmd = %s' % msgfmtCmd) - elif sys.platform == 'linux2': - po_files = glob.glob(po_dir + "/*.po") - msgfmtCmd = "%s/bin/msgfmt" % sys.prefix - else: - po_files = [] #empty list - msgfmtCmd = "UNKNOWN_PLATFORM" - log.debug( msgfmtCmd ) - #if not os.path.exists(msgfmtCmd): - # log.error( "msgfmt not found - unable to generate mo files") - # return - log.info( "Generating mo files" ) - global po_errs, po_oks - po_total = len(po_files) - po_count = 0 - for po_file in po_files: - po_count = po_count + 1 - #This will be interesting - self.emit("build_progresstext", 'compiling %s' % po_file) - self.emit("build_progressfraction", po_count/po_total) - - lan = os.path.basename(po_file).replace( ".po", "" ) - lan_path = os.path.join(mo_dir,lan,"LC_MESSAGES") - if not os.path.exists(lan_path): - os.makedirs(lan_path) - mo_file = os.path.join(lan_path,"gramps.mo") - log.info( mo_file ) - - cmd = [msgfmtCmd, '--statistics','-o', mo_file, po_file] - log.debug( cmd ) - - proc = subprocess.Popen( cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE ) - (out, err) = proc.communicate() - output = string.strip(out) - log.info( output ) - # log.debug( output ) Nothing coming out here, statistics come out stderr ?? - if err: - log.info(err) # statistics comming out stderr - po_errs.append(lan) - else: - po_oks.append(lan) - - def generateConstPy(self ): - log.debug('========== generate_const.py()') - fin = open(os.path.join(self.build_src,'const.py.in'), 'r') - in_lines = fin.readlines() - fin.close() - fout = open(os.path.join(self.build_src,'const.py'), 'w') - for line in in_lines: - if '@VERSIONSTRING@' in line: #VERSION = "@VERSIONSTRING@" - corrline = line.replace('@VERSIONSTRING@', self.gramps_version.replace(FULL_COLON_SUBST,":") ) - fout.write(corrline) - #fout.write('VERSION = "%s"\n'% self.gramps_version.replace(FULL_COLON_SUBST,":")) - - #elif '@prefix@' in line: #PREFIXDIR = "@prefix@" - # what to do? , doesnt seem to matter on windows - - #elif '@sysconfdir@' in line: #SYSCONFDIR = "@sysconfdir@" - # what to do? , doesnt seem to matter on windows - - else: - fout.write(line) - fout.close() - - def cleanBuildDir(self): - log.debug( '========== cleanBuildDir()' ) - log.info( 'Cleaning build and output directories' ) - if sys.platform == 'win32': #both platforms emit different exceptions for the same operation, map the exception here - MY_EXCEPTION = WindowsError - elif sys.platform == 'linux2': - MY_EXCEPTION = OSError - if os.path.exists(self.build_root): - try: - log.info('removing directory: %s' % self.build_root ) - shutil.rmtree(self.build_root) - except MY_EXCEPTION as e: - log.error( e ) - - for file in ['gramps-%s.exe'%self.gramps_version ]: #, 'build.log']: - fname = os.path.join(self.out_dir, file) - if os.path.isfile(fname): - try: - log.info('removing file: %s' % fname ) - os.remove(fname) - except MY_EXCEPTION as e: - log.error( e ) - - def getNSISVersionNumber(self): - #Check version of NSIS, to ensure NSIS is compatible with script features - # >"c:\Program Files\NSIS\makensis.exe" /version - # v2.42 - cmd = '"%s" -VERSION' % (MAKENSIS_exe) - log.debug(cmd) - - proc = subprocess.Popen( cmd, shell = True, stdout=subprocess.PIPE, stderr=subprocess.PIPE ) - (out, err) = proc.communicate() - output = string.strip(out) - log.info( output ) - if err: - log.error(err) - if sys.platform == 'win32': #'not recognized' in err: - minor =0 - major =0 - return (major, minor) - - #parse the output to get version number into tuple - ver = output[1:].split('.') - major = int(ver[0]) - try: - minor = int(ver[1]) - except ValueError as e: - m = ver[1] - minor = int(m[:2]) - return (major, minor) - - def checkForBuildTools(self): - global MAKENSIS_exe, SVN_exe - log.debug( '========== checkForBuildTools()' ) - if sys.platform == 'win32': - import _winreg as winreg - # Find NSIS on system - try: - with winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\NSIS') as key: - nsispath = winreg.QueryValue(key, '') - makensisexe = path.join( nsispath, 'makensis.exe') - if path.isfile( makensisexe ): - MAKENSIS_exe = makensisexe - except WindowsError as e: - log.warning('NSIS not found, in registory') - log.warning('..Testing if makensis is on the path') - MAKENSIS_exe = 'makensis' - #cmd = os.path.join(nsis_dir, MAKENSIS_exe) - - cmd = '%s /VERSION' % MAKENSIS_exe - proc = subprocess.Popen( cmd, shell = True, stdout=subprocess.PIPE, stderr=subprocess.PIPE ) - (out, err) = proc.communicate() - output = string.strip(out) - log.info( output ) - if err: - log.error(err) - log.error('....makensis.exe not found on path') - sys.exit(0) - #else: - # log.info("makensis version %s" % output) - - # Find msgfmt on system - cmd = os.path.join(msg_dir, 'msgfmt.exe') - - proc = subprocess.Popen( cmd, shell = True, stdout=subprocess.PIPE, stderr=subprocess.PIPE ) - (out, err) = proc.communicate() - output = string.strip(out) - log.info( output ) - if not err.startswith(cmd): - #log.error(err) - log.error('msgfmt.exe not found on path') - log.error(' try the -m DIR , --msgdir=DIR option to specify the directory or put it on the path') - sys.exit(0) - - # Find SVN on system - optional, if building from tarball - if not bTarball: - try: - with winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\svn.exe') as key: - svnpath = winreg.QueryValue(key, '') - if path.isfile(svnpath): - SVN_exe = svnpath - except WindowsError as e: - log.warning('SVN not found, in registory') - log.warning('... Hoping svn is on the path') - SVN_exe = 'svn' - - elif sys.platform == 'linux2': - #ASSUMPTION: these tools are on the path - #TODO: check for svn on Linux - log.info( 'TODO: Check for svn' ) - SVN_exe = 'svn' - #TODO: check for nsis on Linux - log.info( 'TODO: Check for nsis' ) - MAKENSIS_exe = 'makensis' - - # Check if we are running a compatible vesion of NSIS - vers = self.getNSISVersionNumber() - if vers < MIN_NSIS_VERSION: - log.error( "Require NSIS version %d.%d or later ..... found NSIS version %d.%d" % (MIN_NSIS_VERSION[0],MIN_NSIS_VERSION[1], vers[0], vers[1]) ) - log.info("Disabling NSIS compilation ... Please upgrade your NSIS version") - self.bBuildInstaller = False - else: - self.bBuildInstaller = True - log.info( "NSIS version %d.%d" % vers ) - - def expandTarBall(self, tarball, expand_dir): - # gramps-3.1.0.tar.gz - log.info( 'expandTarBall(%s, %s)' % (tarball, expand_dir) ) - if tarfile.is_tarfile(self.repository_path): - tar = tarfile.open(self.repository_path) - tar.extractall(self.out_dir) - tar.close() - #base = os.path.basename(self.repository_path) - extractDir = os.path.join(self.out_dir, self.tarbase3 ) - try: - os.rename( extractDir, self.build_root) - except WindowsError as e: - log.error("FAILED: \n\t extractDir=%s \n\t build_root=%s" % (extractDir, self.build_root)) - raise WindowsError(e) - else: - log.error( "Sorry %s is not a tar file" % self.repository_path ) - - def getVersionFromTarBall(self, tarball): - log.debug( 'getVersionFromTarBall(%s)' % (tarball)) - - if tarfile.is_tarfile(self.repository_path): - tar = tarfile.open(self.repository_path) - members = tar.getnames() - for member in members: - if 'configure.in' in member: - log.debug('Reading version from: %s' % member) - file = tar.extractfile(member) - lines = file.readlines() - vers = self.getVersionFromLines(lines) - if 'TODO' in member: #need to get path this will extract too, grab it of one of the files - self.tarbase3, rest = member.split('/', 1) - print('==ExtractPath', self.tarbase3) - tar.close() - log.debug( 'Version (%s)' % (vers) ) - return vers - - def copyPatchTreeToDest(self, src, dst): - '''Patch a tarball build with alternate files as required. - At this stage do not allow new directories to be made or - new files to be added, just replace existing files. - ''' - log.info('Patching: now in %s', src) - names = os.listdir(src) - #os.makedirs(dst) - not creating new dir - errors = [] - for name in names: - srcname = os.path.join(src, name) - dstname = os.path.join(dst, name) - try: - if os.path.isfile(srcname) and os.path.isfile(dstname): - log.info('Overwriting %s -> %s' % (srcname, dstname)) - shutil.copyfile(srcname, dstname) - elif os.path.isdir(srcname) and os.path.isdir(dstname): - self.copyPatchTreeToDest(srcname, dstname) - else: - log.error('UNDEFINED: %s -> %s' % (srcname, dstname)) - except (IOError, os.error) as why: - errors.append((srcname, dstname, str(why))) - # catch the Error from the recursive copytree so that we can - # continue with other files - except Error as err: - errors.extend(err.args[0]) - if errors: - raise Error(errors) - -def buildGRAMPS( base, out_dir, bTarball): - bo = buildbase() - - bo.repository_path = base - bo.out_dir = out_dir - bo.bTarball = bTarball - bo.bBuildInstaller = bBuildInstaller - - if not bo.bTarball and not bo.isGrampsRoot(bo.repository_path): - log.error( '$$$$ BAD Gramps Root specified $$$$') - else: - bo.checkForBuildTools() - if bo.bTarball: - bo.gramps_version = bo.getVersionFromTarBall( bo.repository_path ) - bo.build_root = path.normpath(os.path.join(bo.out_dir, 'gramps-%s' % bo.gramps_version)) - if bBuildAll: - bo.cleanBuildDir() - bo.expandTarBall(base, bo.out_dir) - bo.copyExtraFilesToBuildDir(bo.build_root ) - else: #SVN Build - bo.gramps_version = bo.getVersionFromConfigureIn( base ) - bo.build_root = path.normpath(os.path.join(bo.out_dir, 'gramps-%s' % bo.gramps_version)) - if bBuildAll: - bo.cleanBuildDir() - os.mkdir(bo.build_root) - bo.exportSVN(os.path.join(base, 'src'), os.path.join(bo.build_root, 'src') ) - bo.exportSVN(os.path.join(base, 'po'), os.path.join(bo.build_root, 'po') ) - bo.exportSVN(os.path.join(base, 'example'), os.path.join(bo.build_root, 'examples') ) - bo.generateConstPy( ) - bo.copyExtraFilesToBuildDir(base) - - if bPatchBuild: - bo.copyPatchTreeToDest( patch_dir, bo.build_root ) - if bBuildAll: - bo.processPO( ) - if bo.bBuildInstaller: - bo.compileInstallScript() - - -if __name__ == '__main__': - import getopt - import os - import sys - import tarfile - - usage = '''Create Gramps Windows Installer. -Usage: - python build_GrampsWin32.py [options] [repository_path] - -Arguments: - repository_path Path to the repository to build GRAMPS from, this can be either - - The root path of a SVN working copy - - A tarball that has been saved on local disk - - Left blank to build the SVN working copy this file is part of -Options: - -h, --help This help message. - -oDIR, --out=DIR Directory to build files (optional) - --nsis_only Build NSIS only (does not Clean & Build All) - -t --tarball Build release version from Tarball. - -mDIR, --msgdir=DIR Directory to msgfmt.exe - -pDIR, --patch=DIR Specify a directory to patch files into the build. - only valid for a tarball build. - This directory will allow you to patch the release after expanding - from tarball and before creating installer. - (n.b. each file to be replaced needs to be specified with full path - to exactly mimic the paths in the expanded tarball) - ''' -# TODO: nsis_dir option - a path to nsismake (for occasions script cannot work it out) -# TODO: svn_dir option - a path to svn (for occasions script cannot work it out) -# TODO: tortoise_dir Option - accommodate windows user who dont have svn but use tortoiseSVN - - repository_path = '.' # Repository - either SVN working copy dir or Tarball file - out_dir = None - bBuildAll = True - bBuildInstaller = True - bTarball = False - msg_dir = "" - bPatchBuild = False - patch_dir = "" - try: - opts, args = getopt.getopt(sys.argv[1:], "ho:tm:p:", - ["help", "out=", "nsis_only", "tarball", "msgdir=", "patch="]) - - for o, a in opts: - if o in ("-h", "--help"): - print(usage) - sys.exit(0) - - if o in ("-o", "--out"): - out_dir = a - if o in ("--nsis_only"): - bBuildAll = False - if o in ('-t', "--tarball"): - print('This is a tarball build') - bTarball = True - if o in ("-m", "--msgdir"): - if os.path.isdir( a ): - msg_dir = a - else: - raise getopt.GetoptError('\nERROR: msgfmt dir does not exist') - if o in ("-p", "--patch"): - if os.path.isdir( a ): - patch_dir = a - bPatchBuild = True - else: - raise getopt.GetoptError('\nERROR: Patch directory does not exist') - - if args: #got args use first one as base dir - repository_path = path.normpath(args[0]) - else: # no base dir passed in, work out one from current working dir - repository_path = path.normpath("%s/../.." % os.getcwd() ) - - if bPatchBuild and not bTarball: - log.warning("Cannot specify patch for SVN build, resetting patch option") - patch_dir = None - # raise getopt.GetoptError, '\nERROR: No base directory specified' - - if len(args) > 1: - raise getopt.GetoptError('\nERROR: Too many arguments') - - except getopt.GetoptError as msg: - print(msg) - print('\n %s' % usage) - sys.exit(2) - - if bTarball: - if not tarfile.is_tarfile(repository_path): - print("Tarball %s not a valid Tarball" % repository_path) - sys.exit(1) - - else: - if not os.path.isdir(repository_path): - print("WC root directory not found; %s " % repository_path) - sys.exit(1) - - if out_dir == None: - if bTarball: - out_dir = path.normpath(os.getcwd()) - else: - out_dir = path.normpath(os.path.join(repository_path, 'windows')) - log.info("Setting outdir to %s", out_dir) - - - s_args = '' - for value in sys.argv[1:]: - s_args = s_args + ' %s'%value - - print("======= build_GrampsWin32.py %s ========" % s_args) - log.debug('Using %s to find python tools' % sys.prefix) - log.info('Platform: %s' % sys.platform) - #========================== - sys.exit(buildGRAMPS(repository_path,out_dir, bTarball)) - -GObject.type_register(buildbase) diff --git a/windows/nonAIO/builder/check_gtk_install.py b/windows/nonAIO/builder/check_gtk_install.py deleted file mode 100644 index 0cf89ce8a..000000000 --- a/windows/nonAIO/builder/check_gtk_install.py +++ /dev/null @@ -1,373 +0,0 @@ -import sys -import os -import _winreg -from ctypes.util import find_library -import getopt -import string - - -#==== Set up logging system -# need to also set up a logger for when run as a module. - -# change to set up a console logger in module global space. -# then add the file logger later once I know the path - - -import logging -logging.basicConfig(level=logging.DEBUG, - format='%(message)s', - datefmt='%H:%M', - filename= 'gtkcheck.log', - filemode='w') -#create a Handler for the console -console = logging.StreamHandler() -console.setLevel(logging.INFO) -#Set a simple format for console -formatter = logging.Formatter('%(levelname)-8s %(message)s') -console.setFormatter(formatter) -#add the console handler to the root handler -log = logging.getLogger('CheckGtkApp') -log.addHandler(console) - - -NOT_FOUND_STR ='Not Found' -#small selection of DLL's to test -testdlls = ['libgdk-win32-2.0-0.dll', 'libglib-2.0-0.dll', 'libgobject-2.0-0.dll', 'libcairo-2.dll', ] - -explain_exposed = ''' *********************************************************** - * It seems that other installations are exposing GTK DLL's - * to the operating system as they are in the environment - * path variable BEFORE the runtime directory. - * You should reorder the path variable to put your GTK - * runtime path before these other installations on the path''' - -explain_safe = ''' *************************************************************** - * While there are other installations of GTK DLL's on the path, - * it should be safe as they are on the path AFTER the runtime - * directory. ''' - -def RunExeCommand( app, args ): - cmd = app + ' ' + args - #print("Running: ", cmd) - stdin, stdout, stderr = os.popen3( cmd ) - output = string.strip(stdout.read()) - #print(output) - err = stderr.read() - if err: - print(err) - return output - -def CheckGtkInReg(): - global gtkPathInRegistry, gtkVersionInRegistry, dllPathInRegistry, dllPathShort - log.info( '\n==== Checking Registry for GTK =====' ) - try: - with _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\GTK\\2.0') as key: - gtkVersionInRegistry = _winreg.QueryValueEx(key, 'Version')[0] - gtkPathInRegistry = _winreg.QueryValueEx(key, 'Path')[0] - dllPathInRegistry = _winreg.QueryValueEx(key, 'DllPath')[0] - log.info( ' Version : %s'% gtkVersionInRegistry ) - log.info( ' Path : %s'% gtkPathInRegistry ) - log.info( ' DllPath : %s'% dllPathInRegistry ) - - except WindowsError as e: - log.info( '\n GTK registry key not found in registry' ) - log.info( ''' ******************************************************************** - * This might not be an error, but means I don't know the directory to - * your preferred GTK installation. - * - try passing in your GTK installation path.\n''' ) - log.info( '-' * 60 ) - log.info( usage ) - sys.exit(0) - -def WorkOutShortDosPath(): - global dllPathShort - log.info( '\n==== Use win32Api to query short path name for GTK =====' ) - try: - import win32api - dllPathShort = win32api.GetShortPathName(dllPathInRegistry) - log.info( ' DllPath8.3: %s' % dllPathShort ) - except ImportError: - log.info( ' **Cant query short path name, Win32Api not installed' ) - log.info( ' install from http://python.net/crew/mhammond/win32/' ) - log.info( ' if you want this function to work' ) - -def FindLibsWithCtypes(): - # use ctypes to check where windows finds it's DLL's - log.info( '\n==== Use ctypes to find dlls ====' ) - other_paths = [] - for dll in testdlls: - dllpathvalid = False - cpath = find_library(dll) - if cpath: - #print(cpath) - if cpath == os.path.join(dllPathInRegistry, dll) \ - or cpath == os.path.join(dllPathShort, dll): - dllpathvalid = True - - if not dllpathvalid: - pp = os.path.dirname(cpath) - if pp not in other_paths: - other_paths.append(pp) - else: - log.info( " ERROR:... ctypes failed to find %s" % dll) - if other_paths: - for pth in other_paths: - log.info( " ERROR: ctypes loaded some gtk dll's from %s" % pth ) - else: - log.info( " OK ... ctypes found dll's in %s" % os.path.dirname(cpath) ) - -def ScanDependencyFileForErrors(fname): - fin = open(fname, 'r') - lines = fin.readlines() - fin.close() - sysroot = os.environ["SystemRoot"] - capture = False - runtimedlls = {} - for line in lines: - if line.startswith(" Module"): # work out were paths end - pthend_idx = line.find("File Time Stamp") - acceptablePaths = [ dllPathShort.lower(), - dllPathInRegistry.lower(), - os.path.join(sysroot, 'system32').lower() - ] - if line.startswith('----- ------------'): - capture = True - if capture and line.startswith('['): - filename = line[5:pthend_idx].strip() - dirname = os.path.dirname(filename).strip() - parts = line[pthend_idx:].split() - OK = False - if dirname.startswith(os.path.join(sysroot, 'winsxs').lower()) \ - or dirname.startswith(os.path.join( - sys.prefix, r'lib\site-packages\gtk-2.0').lower()): - OK = True - - for pth in acceptablePaths: - if dirname == pth.lower(): - OK = True - - if 'MSVCR90.DLL' in filename: - if parts[0] == 'Error': - runtimedlls[filename] = "Error dll not found" - else: - runtimedlls[filename] = parts[16] - - if OK == False: - if parts[0] == 'Error': - log.info( " %s \tError dll not found" %( filename)) - else: - log.info( " ERROR: %s \tVersion %s" %( filename, parts[16])) - for rtdll in runtimedlls: - if runtimedlls[rtdll].startswith("Error"): - log.info( '\n ERROR: MS runtime %s not found'%rtdll ) - else: - log.info( '\n MS runtime Version %s loaded from' % runtimedlls[rtdll] ) - log.info( " %s" %rtdll ) - log.info( '') - -def CheckWithDependencyWalker(): - log.info( '\n==== Checking with Dependency Walker ====' ) - log.info( ' Please be patient takes some time' ) - exe = os.path.join(scriptpath, 'depends.exe') - fout = os.path.join(scriptpath, 'depres.txt') - f2check = [ - os.path.join(sys.prefix, 'Lib/site-packages/gtk-2.0/gtk/_Gtk.pyd' ), - os.path.join(sys.prefix, 'Lib/site-packages/gtk-2.0/gobject/_GObject.pyd' ), - os.path.join(sys.prefix, 'Lib/site-packages/gtk-2.0/pangocairo.pyd' ), - ] - if os.path.isfile( exe ): - for ftest in f2check: - if os.path.isfile( ftest ): - #delete the output file before running command - try: - os.remove(fout) - except WindowsError as e: - pass - log.info( ' Testing file %s' % ftest ) - out = RunExeCommand(exe, '/c /f1 /ot "%s" "%s"' % (fout, ftest) ) - if os.path.isfile(fout): - ScanDependencyFileForErrors(fout) - else: - log.info( " ERROR: file %d does not exist", ftest ) - else: - log.info( ' Cannot check with dependency walker, not installed in local directory' ) - log.info( ' get dependency walker from http://www.dependencywalker.com/' ) - log.info( ' and unzip into this directory for it to work.' ) - -def CheckPathForOtherGtkInstalls(): - log.info( '\n====Checking environment path for other gtk installations====' ) - ePath = os.environ['path'] - dirs = ePath.split(';') - gtkpth_idx = 9999 - other_paths = [] - explain_level = 0 - for i, d in enumerate(dirs): - #print('==%s==' %d) - if d == gtkPathInRegistry or d == dllPathInRegistry\ - or d == dllPathShort: - gtkpth_idx = i - continue - for fname in testdlls: - f = os.path.join(d, fname) - if os.path.isfile( f ): - #print(' Found Erronous gtk DLL %s' % f) - if d not in other_paths: - other_paths.append(d) - if i < gtkpth_idx: # path appears BEFORE runtime path - log.info( ' ERROR: %s should not appear before runtime path' % d ) - explain_level = 2 - else: - log.info( ' FOUND: %s, Probably OK as appears AFTER runtime path' % d ) - if explain_level <= 1: - explain_level = 1 - if gtkpth_idx == 9999: - log.info( '\n ERROR: Runtime directory not on enviroment path' ) - log.info( " ** Runtime needs to be on path to load DLL's from\n" ) - if explain_level == 2: - log.info( explain_exposed ) - elif explain_level == 1: - log.info( explain_safe ) - if len(other_paths) == 0: - log.info( ' No other gtk installatons found\n' ) - -# ==== report what python thinks it's using ===== -MIN_PYTHON_VER = (2,5,1) -UNTESTED_PYTHON_VER = (3,0,0) - -MIN_GTK_VER = (2,10,11) -UNTESTED_GTK_VER = (2,16,7) - -MIN_PYGTK_VER = (2,10,6) -UNTESTED_PYGTK_VER = (2,12,2) - -MIN_GOBJECT_VER = (2,12,3) -UNTESTED_GOBJECT_VER = (2,14,3) - -MIN_CAIRO_VER = (1,2,6) -UNTESTED_CAIRO_VER = (1,4,13) - -def PrintFailedImport(appl, minVersion, result): - log.info( '--%s version %d.%d.%d or above.....\t %s' % (appl, minVersion ,result) ) - -def PrintVersionResult(appl, minVersion, actualVersion, untestedVersion): - minStr = '%d.%d.%d' % minVersion - actStr = '%d.%d.%d' % actualVersion - if minVersion <= actualVersion < untestedVersion: - result = '...OK' - elif actualVersion >= untestedVersion: - result = '...UNTESTED VERSION' - else: - result = '...FAILED' - log.info( '%s version %s or above.....\tfound %s %s' % (appl, minStr , actStr, result) ) - -def Import_pyGtkIntoPython(): - log.info( '\n==== Test import into python ====' ) - #py_str = 'found %d.%d.%d' % sys.version_info[:3] - PrintVersionResult(' Python ', MIN_PYTHON_VER, sys.version_info[:3], UNTESTED_PYTHON_VER) - - # Test the GTK version - try: - import gtk - - PrintVersionResult(' GTK+ ', MIN_GTK_VER, Gtk.gtk_version, UNTESTED_GTK_VER ) - - #test the pyGTK version (which is in the gtk namespace) - PrintVersionResult(' pyGTK ', MIN_PYGTK_VER, Gtk.pygtk_version, UNTESTED_PYGTK_VER ) - - except ImportError: - PrintFailedImport(' GTK+ ', MIN_GTK_VER, NOT_FOUND_STR) - PrintFailedImport(' pyGTK ', MIN_PYGTK_VER, 'Cannot test, ...GTK+ missing') - - - #test the gobject version - try: - import gobject - PrintVersionResult(' gobject', MIN_GOBJECT_VER, GObject.pygobject_version, UNTESTED_GOBJECT_VER) - - except ImportError: - PrintFailedImport(' gobject', MIN_GOBJECT_VER, NOT_FOUND_STR) - - - #test the cairo version - try: - import cairo - PrintVersionResult(' cairo ', MIN_CAIRO_VER, cairo.version_info, UNTESTED_CAIRO_VER ) - - except ImportError: - PrintFailedImport(' cairo ', MIN_CAIRO_VER, NOT_FOUND_STR) - - #test for glade - log.info( '\n==== See if libglade installed ====') - - try: - import Gtk.glade - log.info( ' Glade tesing import of libglade .......\tOK\n' ) - except ImportError as e: - log.info( ' Glade importError: %s\n' % e ) - -if __name__ == '__main__': - usage = '''Check for common problems in GTK/pyGTK installation. -Usage: - python %s [options] [gtkPath] - -Arguments: - gtkPath Path to your GTK installation directory (not the bin dir) - -Options: - None - ''' %(os.path.basename(__file__) ) - - gtkPath = None - gtkPathInRegistry = NOT_FOUND_STR - gtkVersionInRegistry = NOT_FOUND_STR - dllPathInRegistry = NOT_FOUND_STR - dllPathShort = 'NoShortPath' - scriptpath = os.path.dirname(sys.argv[0]) - try: - opts, args = getopt.getopt(sys.argv[1:], "", - []) - - for o, a in opts: - if o in ("-h", "--help"): - log.info( usage ) - sys.exit(0) - - if len(args) > 1: - raise getopt.GetoptError('\nERROR: Too many arguments') - for arg in args: - if os.path.isdir(arg): - gtkPath = arg - else: - raise getopt.GetoptError('\nERROR: Not a valid GTK path %s' % arg) - - except getopt.GetoptError as msg: - log.info( msg ) - log.info( '\n %s' % usage ) - sys.exit(2) - - import platform - winver = platform.win32_ver() - if len(winver) == 4: - log.info( '''\n==== platform.win32_ver() reports ==== - Operating System: %s - Version : %s - Service Pack : %s - OS type : %s''' % winver) - else: - os.info( winver ) - - if gtkPath: - gtkPathInRegistry = gtkPath - dllPathInRegistry = os.path.join(gtkPath, 'bin') - os.info( ' Using %s as GTK install path' % gtkPathInRegistry ) - os.info( ' Using %s as GTK dll path' % dllPathInRegistry ) - else: - CheckGtkInReg() - - WorkOutShortDosPath() - FindLibsWithCtypes() - CheckPathForOtherGtkInstalls() - Import_pyGtkIntoPython() - - CheckWithDependencyWalker() - diff --git a/windows/nonAIO/builder/gramps.png b/windows/nonAIO/builder/gramps.png deleted file mode 100644 index 09b81f69a..000000000 Binary files a/windows/nonAIO/builder/gramps.png and /dev/null differ diff --git a/windows/nonAIO/builder/gramps2.nsi b/windows/nonAIO/builder/gramps2.nsi deleted file mode 100644 index c5b294531..000000000 --- a/windows/nonAIO/builder/gramps2.nsi +++ /dev/null @@ -1,748 +0,0 @@ -# -# Gramps - a GTK+ based genealogy program -# -# Copyright (C) 2006-2008 Steve Hall -# Copyright (C) 2008 Stephen George -# -# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# $Id: $ -# -# Description: Nullsoft Installer (NSIS) file to build Windows installer: -# -# Requires: NSIS version 2.0 or later. -# Notes: -# o WARNING: if you make changes to this script, look out for $INSTDIR -# to be valid, because this line is very dangerous: RMDir /r $INSTDIR -# o WARNING: Except the uninstaller. That re-paths for some reason. -# -!define GRAMPS_VERSION $%GRAMPS_VER% -!define GRAMPS_BUILD_PATH "$%GRAMPS_BUILD_DIR%" -!define GRAMPS_OUT_PATH "$%GRAMPS_OUT_DIR%" - -!define MIN_PYTHON_VERSION "2.6.0" -!define MIN_GTK_VERSION "2.12.9" -!define MIN_PYGTK_VERSION "2.12.1" -!define MIN_GOBJECT_VERSION "2.12.3" -!define MIN_CAIRO_VERSION "1.2.6" - -; HM NIS Edit Wizard helper defines -!define PRODUCT_NAME "GRAMPS" -!define PRODUCT_VERSION ${GRAMPS_VERSION} -!define PRODUCT_PUBLISHER "The GRAMPS project" -!define PRODUCT_WEB_SITE "http://gramps-project.org" -!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" -!define PRODUCT_UNINST_ROOT_KEY "HKLM" - -!define DESKTOP_LINK "$DESKTOP\${PRODUCT_NAME} ${PRODUCT_VERSION}.lnk" - -# output file -Name ${PRODUCT_NAME} -OutFile "${GRAMPS_OUT_PATH}\gramps-${PRODUCT_VERSION}.exe" - -# self ensure we don't have a corrupted file -CRCCheck on -# don't allow installation into C:\ directory -AllowRootDirInstall false - -!include "WordFunc.nsh" -!include nsDialogs.nsh -!insertmacro StrFilter - -# adds an XP manifest -XPStyle on -# self ensure we don't have a corrupted file -CRCCheck on - -# splash, header graphics (same for both!) -!define MUI_HEADERIMAGE -#!define MUI_HEADERIMAGE_BITMAP "win.bmp" -#!define MUI_WELCOMEFINISHPAGE_BITMAP "nsis-splash.bmp" - - -; MUI 1.67 compatible ------ -!include "MUI2.nsh" - -; Request application privileges for Windows Vista -RequestExecutionLevel admin - -; MUI Settings -!define MUI_ABORTWARNING -!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico" -!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico" - -; Language Selection Dialog Settings -!define MUI_LANGDLL_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}" -!define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_UNINST_KEY}" -!define MUI_LANGDLL_REGISTRY_VALUENAME "NSIS:Language" - -Var PythonPath -Var PythonExe - -;------------ Pages -; Welcome page -!insertmacro MUI_PAGE_WELCOME - -PageEx directory - ;!insertmacro MUI_HEADER_TEXT "page title" " sub title" - DirVar $PythonPath - PageCallbacks skipPythonPathDialog "" processAfterPythonDialog - Caption ": Python installation directory" - ;SubCaption "This is the best I can be" - #DirText [text] [subtext] [browse_button_text] [browse_dlg_text] - DirText "Installer cannot find a python installation, python is needed for GRAMPS to run.$\n$\nIf python is already installed please select the location of python below, otherwise cancel the installation and install python before proceeding.$\n$\nObtain Python from http:\\www.python.org" "Select location of python" "" "Browse to location python is installed" -PageExEnd - ;Custom page - for dependancy checking -Page custom DependenciesPageFunction DependenciesPageLeave -; License page -!insertmacro MUI_PAGE_LICENSE "${GRAMPS_BUILD_PATH}\COPYING" -; Component Page -;!insertmacro MUI_PAGE_COMPONENTS -; Directory page -!insertmacro MUI_PAGE_DIRECTORY -; Instfiles page -!insertmacro MUI_PAGE_INSTFILES -; Finish page -!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\NEWS.TXT" -!insertmacro MUI_PAGE_FINISH - -; Uninstaller pages -!insertmacro MUI_UNPAGE_INSTFILES - -; Language files -!insertmacro MUI_LANGUAGE "English" -!insertmacro MUI_LANGUAGE "Greek" - -; MUI end ------ - - Function skipPythonPathDialog - ; Search for pythonw.exe on the path (returns the full path + exe) - SearchPath $3 pythonw.exe - IfFileExists $3 HavePython 0 - ; Handle the case where python is installed but not on the path - So check Registry keys - - ; reg key (Python version 2.7) - ReadRegStr $3 HKLM 'Software\Python\PythonCore\2.7\InstallPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - - ; reg key (Python version 2.6) - ReadRegStr $3 HKLM 'Software\Python\PythonCore\2.6\InstallPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - - ; reg key (Python version 2.5) - ReadRegStr $3 HKLM 'Software\Python\PythonCore\2.5\InstallPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - - ; reg key (Python version 2.4) - ReadRegStr $3 HKLM 'Software\Python\PythonCore\2.4\InstallPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython NoPython - - HavePython: - StrCpy $PythonExe $3 - Call TestDependancies - Abort - NoPython: ; show the dialog querying the path - FunctionEnd - -Function processAfterPythonDialog - StrCpy $PythonExe "$PythonPath\pythonw.exe" - IfFileExists $PythonExe GotPython 0 - MessageBox MB_OK "Sorry cannot find pythonw.exe at $PythonPath$\n$\nPlease re-enter a valid python path" - Abort - GotPython: - Call TestDependancies -FunctionEnd -; fileassoc.nsh -; File association helper macros -; Written by Saivert -; -; Features automatic backup system and UPDATEFILEASSOC macro for -; shell change notification. -; -; |> How to use <| -; To associate a file with an application so you can double-click it in explorer, use -; the APP_ASSOCIATE macro like this: -; -; Example: -; !insertmacro APP_ASSOCIATE \ -; "txt" \ -; "myapp.textfile" \ -; "myapp tiny description" \ -; "$INSTDIR\myapp.exe,0" \ -; "Open with myapp" \ -; "$INSTDIR\myapp.exe $\"%1$\"" -; -; Never insert the APP_ASSOCIATE macro multiple times, it is only ment -; to associate an application with a single file and using the -; the "open" verb as default. To add more verbs (actions) to a file -; use the APP_ASSOCIATE_ADDVERB macro. -; -; Example: -; !insertmacro APP_ASSOCIATE_ADDVERB "myapp.textfile" "edit" "Edit with myapp" \ -; "$INSTDIR\myapp.exe /edit $\"%1$\"" -; -; To have access to more options when registering the file association use the -; APP_ASSOCIATE_EX macro. Here you can specify the verb and what verb is to be the -; standard action (default verb). -; -; And finally: To remove the association from the registry use the APP_UNASSOCIATE -; macro. Here is another example just to wrap it up: -; !insertmacro APP_UNASSOCIATE "txt" "myapp.textfile" -; -; |> Note <| -; When defining your file class string always use the short form of your application title -; then a period (dot) and the type of file. This keeps the file class sort of unique. -; Examples: -; Winamp.Playlist -; NSIS.Script -; Photoshop.JPEGFile -; -; |> Tech info <| -; The registry key layout for a file association is: -; HKEY_CLASSES_ROOT -; = <"description"> -; shell -; = <"menu-item text"> -; command = <"command string"> -; - -!macro APP_ASSOCIATE EXT FILECLASS DESCRIPTION ICON COMMANDTEXT COMMAND - ; Backup the previously associated file class - ReadRegStr $R0 HKCR ".${EXT}" "" - WriteRegStr HKCR ".${EXT}" "${FILECLASS}_backup" "$R0" - - WriteRegStr HKCR ".${EXT}" "" "${FILECLASS}" - - WriteRegStr HKCR "${FILECLASS}" "" `${DESCRIPTION}` - WriteRegStr HKCR "${FILECLASS}\DefaultIcon" "" `${ICON}` - WriteRegStr HKCR "${FILECLASS}\shell" "" "open" - WriteRegStr HKCR "${FILECLASS}\shell\open" "" `${COMMANDTEXT}` - WriteRegStr HKCR "${FILECLASS}\shell\open\command" "" `${COMMAND}` -!macroend - -!macro APP_ASSOCIATE_EX EXT FILECLASS DESCRIPTION ICON VERB DEFAULTVERB SHELLNEW COMMANDTEXT COMMAND - ; Backup the previously associated file class - ReadRegStr $R0 HKCR ".${EXT}" "" - WriteRegStr HKCR ".${EXT}" "${FILECLASS}_backup" "$R0" - - WriteRegStr HKCR ".${EXT}" "" "${FILECLASS}" - StrCmp "${SHELLNEW}" "0" +2 - WriteRegStr HKCR ".${EXT}\ShellNew" "NullFile" "" - - WriteRegStr HKCR "${FILECLASS}" "" `${DESCRIPTION}` - WriteRegStr HKCR "${FILECLASS}\DefaultIcon" "" `${ICON}` - WriteRegStr HKCR "${FILECLASS}\shell" "" `${DEFAULTVERB}` - WriteRegStr HKCR "${FILECLASS}\shell\${VERB}" "" `${COMMANDTEXT}` - WriteRegStr HKCR "${FILECLASS}\shell\${VERB}\command" "" `${COMMAND}` -!macroend - -!macro APP_ASSOCIATE_ADDVERB FILECLASS VERB COMMANDTEXT COMMAND - WriteRegStr HKCR "${FILECLASS}\shell\${VERB}" "" `${COMMANDTEXT}` - WriteRegStr HKCR "${FILECLASS}\shell\${VERB}\command" "" `${COMMAND}` -!macroend - -!macro APP_ASSOCIATE_REMOVEVERB FILECLASS VERB - DeleteRegKey HKCR `${FILECLASS}\shell\${VERB}` -!macroend - - -!macro APP_UNASSOCIATE EXT FILECLASS - ; Backup the previously associated file class - ReadRegStr $R0 HKCR ".${EXT}" `${FILECLASS}_backup` - WriteRegStr HKCR ".${EXT}" "" "$R0" - - DeleteRegKey HKCR `${FILECLASS}` -!macroend - -!macro APP_ASSOCIATE_GETFILECLASS OUTPUT EXT - ReadRegStr ${OUTPUT} HKCR ".${EXT}" "" -!macroend - - -; !defines for use with SHChangeNotify -!ifdef SHCNE_ASSOCCHANGED -!undef SHCNE_ASSOCCHANGED -!endif -!define SHCNE_ASSOCCHANGED 0x08000000 -!ifdef SHCNF_FLUSH -!undef SHCNF_FLUSH -!endif -!define SHCNF_FLUSH 0x1000 - -!macro UPDATEFILEASSOC -; Using the system.dll plugin to call the SHChangeNotify Win32 API function so we -; can update the shell. - System::Call "shell32::SHChangeNotify(i,i,i,i) (${SHCNE_ASSOCCHANGED}, ${SHCNF_FLUSH}, 0, 0)" -!macroend - -;EOF - -Section "File Association" FileAssoc -SectionIn 1 3 -# depends on FileAssoc.nsh, by Saivert (http://nsis.sourceforge.net/FileAssoc) - - # .grdb - !insertmacro APP_ASSOCIATE \ - "grdb" \ - "application/x-gramps-database" \ - "GRAMPS database file" \ - "$INSTDIR\images\ped24.ico" \ - "Open with GRAMPS" \ - "$\"$3$\" $\"$INSTDIR\gramps.py$\" $\"%1$\"" - - # .gramps - !insertmacro APP_ASSOCIATE \ - "gramps" \ - "application/x-gramps-file" \ - "GRAMPS application file" \ - "$INSTDIR\images\ped24.ico" \ - "Open with GRAMPS" \ - "$\"$3$\" $\"$INSTDIR\gramps.py$\" $\"%1$\"" - - # .gpkg - !insertmacro APP_ASSOCIATE \ - "gpkg" \ - "application/x-gramps-package" \ - "GRAMPS package file" \ - "$INSTDIR\images\ped24.ico" \ - "Open with GRAMPS" \ - "$\"$3$\" $\"$INSTDIR\gramps.py$\" $\"%1$\"" - - # .ged - !insertmacro APP_ASSOCIATE \ - "ged" \ - "application/x-gramps-gedcom" \ - "GEnealogical Data COMmunication (GEDCOM) file" \ - "$INSTDIR\images\ped24.ico" \ - "Open with GRAMPS" \ - "$\"$3$\" $\"$INSTDIR\gramps.py$\" $\"%1$\"" - -SectionEnd - - - -#Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" -#OutFile ${GRAMPS_OUT_PATH}\gramps-${GRAMPS_VERSION}.exe -# default install path -InstallDir "$PROGRAMFILES\Gramps" -ShowInstDetails show -ShowUnInstDetails show - -Function .onInit - !insertmacro MUI_LANGDLL_DISPLAY - - SetOutPath $TEMP - - # default install directory ($INSTDIR) - StrCpy $INSTDIR $PROGRAMFILES\gramps - Call WarnSVNVersion - Call RemovePrevious ;Move to a page leave function - # set our installed directory to the same as last version? -FunctionEnd - -Var PythonVerText -Var GTKVerText -Var pyGTKVerText -Var GObjectVerText -Var CairoVerText - -!insertmacro WordFind2X - -Function TestDependancies - SetOutPath $TEMP - - File test_dependencies.py - - nsExec::ExecToStack '"$PythonExe" $TEMP\test_dependencies.py' - Pop $0 # return value/error/timeout - Pop $1 # printed text, up to ${NSIS_MAX_STRLEN} - ; delim1 delim2 << Grab the text between delim1 and delim2 - ${WordFind2X} $1 "python:" ";" "+1" $PythonVerText - ${WordFind2X} $1 "gtk++:" ";" "+1" $GTKVerText - ${WordFind2X} $1 "pygtk:" ";" "+1" $pyGTKVerText - ${WordFind2X} $1 "gobject:" ";" "+1" $GObjectVerText - ${WordFind2X} $1 "cairo:" ";" "+1" $CairoVerText - -; MessageBox MB_OK "python: $PythonVerText $\ngtk++: $GTKVerText $\npygtk: $pyGTKVerText$\ngobject: $GObjectVerText$\ncario: $CairoVerText" -FunctionEnd - -Function WriteGrampsLauncher - SetOutPath $TEMP - - File make_launcher.py - nsExec::ExecToStack '"$PythonExe" $TEMP\make_launcher.py' - Pop $0 # return value/error/timeout - Pop $1 # printed text, up to ${NSIS_MAX_STRLEN} -FunctionEnd - - -LangString PAGE_TITLE ${LANG_ENGLISH} "Summary of GRAMP's Dependencies" -LangString PAGE_SUBTITLE ${LANG_ENGLISH} "" -Var Dialog -Var Label - -Var PythonVerTextHnd -Var GTKVerTextHnd -Var pyGTKVerTextHnd -Var GObjectVerTextHnd -Var CairoVerTextHnd - -Var GTKDetailsBtn -Var pyGTKDetailsBtn -Var GObjectDetailsBtn -Var CairoDetailsBtn - -Var PythonText -Var GTKText -Var PyGTKText -Var GObjectText -Var CairoText - -!include LogicLib.nsh - -Function DependenciesPageFunction - !insertmacro MUI_HEADER_TEXT $(PAGE_TITLE) $(PAGE_SUBTITLE) - nsDialogs::Create /NOUNLOAD 1018 - Pop $Dialog - ${If} $Dialog == error - Abort - ${EndIf} - - SetOutPath $TEMP - - ;TODO: Handle case of non-compatible python versions? (i.e. <2.5.1, >= 3.0) - - ${If} $Dialog == error - Abort - ${EndIf} - ${NSD_CreateLabel} 0 0 100% 12u "GRAMPS relies on the software listed below which must be installed first." - Pop $Label - - ${NSD_CreateLabel} 10u 13u 45% 8u "Python version ${MIN_PYTHON_VERSION} or above............" - Pop $PythonText - - ${NSD_CreateLabel} 10u 23u 45% 8u "GTK Version ${MIN_GTK_VERSION} or above............." - Pop $GTKText - - ${NSD_CreateLabel} 10u 33u 45% 8u "pygtk version ${MIN_PYGTK_VERSION} or above............." - Pop $PyGTKText - - ${NSD_CreateLabel} 10u 43u 45% 8u "pygobject version ${MIN_GOBJECT_VERSION} or above........." - Pop $GObjectText - - ${NSD_CreateLabel} 10u 53u 45% 8u "pycairo version ${MIN_CAIRO_VERSION} or above............" - Pop $CairoText - - ; glade == do we have it?, do we need to test it? - - ${NSD_CreateLabel} 49% 13u 30% 8u $PythonVerText #"" - Pop $PythonVerTextHnd - ${NSD_CreateLabel} 49% 23u 30% 8u $GTKVerText #"" - Pop $GTKVerTextHnd - ${NSD_CreateLabel} 49% 33u 30% 8u $pyGTKVerText #"" - Pop $pyGTKVerTextHnd - ${NSD_CreateLabel} 49% 43u 30% 8u $GObjectVerText #"" - Pop $GObjectVerTextHnd - ${NSD_CreateLabel} 49% 53u 30% 8u $CairoVerText #"" - Pop $CairoVerTextHnd - - ; # set background color to white and text color to red - ; SetCtlColors $R0 FFFFFF FF0000 - ; Colors should be set in hexadecimal RGB format, like HTML but without the #. - ;For parameters that are treated as numbers, use decimal (the number) - ;or hexadecimal (with 0x prepended to it, i.e. 0x12345AB), or octal (numbers beginning with a 0 and no x). - ; SetCtlColors hwnd [/BRANDING] [text_color] [transparent|bg_color] - ;SetCtlColors $CairoText 0x008000 "${MUI_BGCOLOR}" #0x80FFFF #'0x808080' '0x8F8F80' - - ;To make the control transparent specify "transparent" as the background color value. You can also specify /BRANDING with or without text color and background color to make the control completely gray (or any other color you choose). This is used by the branding text control in the MUI. - - ;FindWindow $0 "#32770" "" $HWNDPARENT - ;GetDlgItem $0 $0 1006 - ;SetCtlColors $0 0xFF0000 0x00FF00 - ;Warning: setting the background color of check boxes to "transparent" may not function properly when using XPStlye on. The background may be completely black, instead of transparent, when using certain Windows themes. - - ;${VersionCompare} "[Version1]" "[Version2]" $var - ; "[Version1]" ; First version - ; "[Version2]" ; Second version - ; $var ; Result: - ; ; $var=0 Versions are equal - ; ; $var=1 Version1 is newer - ; ; $var=2 Version2 is newer - - ${StrFilter} $PythonVerText "1" "." "" $R3 - - ${VersionCompare} $R3 ${MIN_PYTHON_VERSION} $R5 - ;MessageBox MB_OK "R5 = $R5 $\nPython Ver=$PythonVerText $\nR3=$R3 $\nMIN=${MIN_PYTHON_VERSION}" - ${If} $R5 == 2 ; - ; Set color to indicate an error - SetCtlColors $PythonVerTextHnd 0xFF0000 "transparent"#"${MUI_BGCOLOR}" - ${Else} - SetCtlColors $PythonVerTextHnd 0x00CC00 "transparent"#"${MUI_BGCOLOR}" - ${EndIf} - - ; SetCtlColors hwnd [/BRANDING] [text_color] [transparent|bg_color] - ${StrFilter} $GTKVerText "1" "." "" $R3 - ${VersionCompare} $R3 ${MIN_GTK_VERSION} $R5 - ;MessageBox MB_OK "R5 = $R5 $\nGTK Ver=$1 $\nR3=$R3 $\nMIN=${MIN_GTK_VERSION}" - - ${If} $R5 == 2 ; - ; Set color to indicate an error - SetCtlColors $GTKVerTextHnd 0xFF0000 "transparent"#"${MUI_BGCOLOR}" - ${NSD_CreateButton} 80% 22u 12% 10u "Details" - Pop $GTKDetailsBtn - ;${NSD_OnClick} control_HWND function_address - ${NSD_OnClick} $GTKDetailsBtn GTKBtnCallback - ${Else} - SetCtlColors $GTKVerTextHnd 0x00CC00 "transparent"#"${MUI_BGCOLOR}" - ${EndIf} - - - ${StrFilter} $pyGTKVerText "1" "." "" $R3 - ${VersionCompare} $R3 ${MIN_PYGTK_VERSION} $R5 - ;MessageBox MB_OK "R5 = $R5 $\npyGTK Ver=$1 $\nR3=$R3 $\nMIN=${MIN_PYGTK_VERSION}" - ${If} $R5 == 2 ; - ; Set color to indicate an error - SetCtlColors $pyGTKVerTextHnd 0xFF0000 "transparent"#"${MUI_BGCOLOR}" - ${NSD_CreateButton} 80% 32u 12% 10u "Details" - Pop $pyGTKDetailsBtn - ;${NSD_OnClick} control_HWND function_address - ${NSD_OnClick} $pyGTKDetailsBtn pyGTKBtnCallback - ${Else} - SetCtlColors $pyGTKVerTextHnd 0x00CC00 "transparent"#"${MUI_BGCOLOR}" - ${EndIf} - - - ${StrFilter} $GObjectVerText "1" "." "" $R3 - ${VersionCompare} $R3 ${MIN_GOBJECT_VERSION} $R5 - ;MessageBox MB_OK "R5 = $R5 $\nGObjectVer Ver=$1 $\nR3=$R3 $\nMIN=${MIN_GOBJECT_VERSION}" - ${If} $R5 == 2 ; - ; Set color to indicate an error - SetCtlColors $GObjectVerTextHnd 0xFF0000 "transparent"#"${MUI_BGCOLOR}" - ${NSD_CreateButton} 80% 42u 12% 10u "Details" - Pop $GObjectDetailsBtn - ;${NSD_OnClick} control_HWND function_address - ${NSD_OnClick} $GObjectDetailsBtn GObjectBtnCallback - - ${Else} - SetCtlColors $GObjectVerTextHnd 0x00CC00 "transparent"#"${MUI_BGCOLOR}" - ${EndIf} - - ${StrFilter} $CairoVerText "1" "." "" $R3 - ${VersionCompare} $R3 ${MIN_CAIRO_VERSION} $R5 - ;MessageBox MB_OK "R5 = $R5 $\nCario Ver=$1 $\nR3=$R3 $\nMIN=${MIN_CAIRO_VERSION}" - ${If} $R5 == 2 ; - ; Set color to indicate an error - SetCtlColors $CairoVerTextHnd 0xFF0000 "transparent"#"${MUI_BGCOLOR}" - ${NSD_CreateButton} 80% 52u 12% 10u "Details" - Pop $CairoDetailsBtn - ;${NSD_OnClick} control_HWND function_address - ${NSD_OnClick} $CairoDetailsBtn CairoBtnCallback - ${Else} - SetCtlColors $CairoVerTextHnd 0x00CC00 "transparent"#"${MUI_BGCOLOR}" - ${EndIf} - - nsDialogs::Show - -FunctionEnd - -Function DependenciesPageLeave - ;MessageBox MB_OK "Leaving Dependancies Page" -FunctionEnd - -Section "MainSection" SEC01 - Call WarnDirExists - - SetOutPath "$INSTDIR" - SetOverwrite ifnewer -# File "${GRAMPS_BUILD_PATH}\gramps.py" - SetOverwrite try - #File /r ${GRAMPS_BUILD_PATH}\src\*.* - File /r "${GRAMPS_BUILD_PATH}\*.*" - WriteRegStr HKLM "SOFTWARE\${PRODUCT_NAME}" "" "$INSTDIR" - WriteRegStr HKLM "SOFTWARE\${PRODUCT_NAME}" "version" ${PRODUCT_VERSION} - Call WriteGrampsLauncher -SectionEnd - - - -Function GTKBtnCallback - Pop $1 - MessageBox MB_OK|MB_ICONEXCLAMATION "The GTK package needed for GRAMPS to run was not found.$\n Please install this package and run the installer again. $\n$\nGTK+ => ${MIN_GTK_VERSION} can be downloaded from http://gladewin32.sourceforge.net/" -FunctionEnd - -Function pyGTKBtnCallback - Pop $1 - MessageBox MB_OK|MB_ICONEXCLAMATION "The pyGTK package needed for GRAMPS to run was not found.$\n Please install this package and run the installer again. $\n$\npyGTK => ${MIN_PYGTK_VERSION} can be downloaded from http://www.pygtk.org/downloads.html" -FunctionEnd - -Function GObjectBtnCallback - Pop $1 - MessageBox MB_OK|MB_ICONEXCLAMATION "The pyObject package needed for GRAMPS to run was not found.$\n Please install this package and run the installer again. $\n$\npyObject => ${MIN_GOBJECT_VERSION} can be downloaded from http://www.pygtk.org/downloads.html" -FunctionEnd - -Function CairoBtnCallback - Pop $1 - MessageBox MB_OK|MB_ICONEXCLAMATION "The Cairo package needed for GRAMPS to run was not found.$\n Please install this package and run the installer again. $\n$\nCairo => ${MIN_CAIRO_VERSION} can be downloaded from http://www.pygtk.org/downloads.html" -FunctionEnd - -Function RemovePrevious - #check if gramps exists in registry - ClearErrors - Var /GLOBAL PreviousPath - ReadRegStr $PreviousPath HKLM "SOFTWARE\${PRODUCT_NAME}" "" - # do some tests to find an installed version - ifErrors NoPreviousVersion - #upgrade of a family tree from 3.1 to 3.2 needs to happen via export to a gramps-xml file. Other users (linux, Win XP, ...) - #have not indicated such problems, but doing a backup to gramps-xml before upgrade is _always_ the wisest action. - MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \ - "Backup family trees BEFORE upgrading GRAMPS.$\n$\n \ - To ensure you don't experience data loss make sure you $\n \ - backup your family trees using Gramps XML format $\n$\n \ - Click 'Cancel to abort installation or 'OK' to proceed." IDCANCEL Exit IDOK Proceed - Exit: - Abort - Proceed: - IfFileExists $PreviousPath\uninstall.exe 0 NoPreviousVersion #Check uninstall.exe from previous version exists on HD - Var /GLOBAL PreviousVersion - ReadRegStr $PreviousVersion HKLM "SOFTWARE\${PRODUCT_NAME}" "Version" - # query OK to delete old version - MessageBox MB_OKCANCEL|MB_ICONQUESTION|MB_DEFBUTTON2 \ - "${PRODUCT_NAME} $PreviousVersion is already installed$\n$\nClick 'OK' to uninstall previous version or 'Cancel' to install over the top of current installation" \ - IDCANCEL NoPreviousVersion - # uninstall old version - CopyFiles $PreviousPath\uninstall.exe $TEMP - ExecWait '"$TEMP\uninstall.exe" _?=$PreviousPath' $0 - StrCpy $INSTDIR $PreviousPath #set the previous path as the default install path <= worth while or not? - ;DetailPrint "uninstaller set error level $0" - NoPreviousVersion: -FunctionEnd - -Function WarnDirExists - # warn if dir already exists - IfFileExists $INSTDIR\*.* DirExists DirExistsOK - DirExists: - MessageBox MB_YESNO|MB_ICONQUESTION|MB_DEFBUTTON2 \ - "Install over existing installation?" \ - IDYES DirExistsOK - Quit - DirExistsOK: -FunctionEnd - -Function WarnSVNVersion - ;${StrFilter} "[string]" "[options]" "[symbols1]" "[symbols2]" $var - ;"[string]" ;[string] - ; input string - ; - ;"[options]" ;[+|-][1|2|3|12|23|31][eng|rus] - ; + : convert string to uppercase - ; - : convert string to lowercase - ; 1 : only Digits - ; 2 : only Letters - ; 3 : only Special - ; 12 : only Digits + Letters - ; 23 : only Letters + Special - ; 31 : only Special + Digits - ; eng : English symbols (default) - ; rus : Russian symbols - ; - ;"[symbols1]" ;[symbols1] - ; symbols include (not changeable) - ; - ;"[symbols2]" ;[symbols2] - ; symbols exclude - ; - ;$var ;output (result) - ${StrFilter} "${PRODUCT_VERSION}" "2" "" "" $R3 - ;MessageBox MB_OK "$R3 was found" - StrCmp $R3 "SVN" SVNVersion 0 - StrCmp $R3 "SVNM" SVNVersion 0 - StrCmp $R3 "beta" BetaVersion ContinueInstall - SVNVersion: - MessageBox MB_YESNO|MB_ICONEXCLAMATION|MB_DEFBUTTON2 \ - "${PRODUCT_NAME} ${PRODUCT_VERSION} is a development ($R3) version$\n$\nAre you sure you want to proceed with installation?" \ - IDYES ContinueInstall - Quit - BetaVersion: - MessageBox MB_YESNO|MB_ICONEXCLAMATION|MB_DEFBUTTON2 \ - "${PRODUCT_NAME} ${PRODUCT_VERSION} is a $R3 version$\n$\nAre you sure you want to proceed with installation?" \ - IDYES ContinueInstall - Quit - ContinueInstall: -FunctionEnd - -Section -AdditionalIcons - SetOutPath $INSTDIR - WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}" - CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}" - - IfFileExists '$INSTDIR\gramps_locale.cmd' 0 NoLocaleFile - # $3 should contain the path to python, .. then pass gramps.py as an argument - #CreateShortCut link.lnk target.file [parameters [icon.file [icon_index_number [start_options[keyboard_shortcut [description]]]]]] - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\${PRODUCT_NAME} (locale) ${PRODUCT_VERSION}.lnk" CMD "/C $\"$INSTDIR\gramps_locale.cmd$\"" "$INSTDIR\images\ped24.ico" "0" "" "" "GRAMPS" - NoLocaleFile: - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\${PRODUCT_NAME} ${PRODUCT_VERSION}.lnk" "$3" "$\"$INSTDIR\gramps.py$\"" "$INSTDIR\images\ped24.ico" "0" "" "" "GRAMPS" - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url" - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Uninstall.lnk" "$INSTDIR\uninstall.exe" -SectionEnd - -Section -Post - WriteUninstaller "$INSTDIR\uninstall.exe" - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninstall.exe" - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" -SectionEnd - - -Function un.onUninstSuccess - HideWindow - MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." -FunctionEnd - -Function un.onInit -!insertmacro MUI_UNGETLANGUAGE - MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" IDYES +2 - Abort -FunctionEnd - - -Function un.StartMenu - IfFileExists "$SMPROGRAMS\GRAMPS" 0 unStartMenuFine - RMDir /r "$SMPROGRAMS\GRAMPS\" - unStartMenuFine: -FunctionEnd - -Function un.Desktop - IfFileExists "${DESKTOP_LINK}" 0 unNoDesktop - Delete "${DESKTOP_LINK}" - unNoDesktop: -FunctionEnd - -Section Uninstall - Delete "$INSTDIR\${PRODUCT_NAME}.url" - Delete "$INSTDIR\uninstall.exe" - RMDir /r "$INSTDIR" - Call un.StartMenu - Call un.Desktop - DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" - - DeleteRegKey HKLM "SOFTWARE\${PRODUCT_NAME}" - SetAutoClose true -SectionEnd diff --git a/windows/nonAIO/builder/make_launcher.py b/windows/nonAIO/builder/make_launcher.py deleted file mode 100644 index 2241abd3e..000000000 --- a/windows/nonAIO/builder/make_launcher.py +++ /dev/null @@ -1,183 +0,0 @@ -# SetLanguage.py -# -# Gramps - a GTK+ based genealogy program -# -# Copyright (C) 2010 Stephen George -# -# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# $Id: $ -import locale -import _winreg -import sys -import os - -import logging -logging.basicConfig(level=logging.DEBUG, - format='%(asctime)s %(name)-10s %(levelname)-8s %(message)s', - datefmt='%H:%M', - filename= 'c:/launcher.log', #path.join(out_dir,'build.log'), - filemode='w') -#create a Handler for the console -console = logging.StreamHandler() -console.setLevel(logging.INFO) -#Set a simle format for console -formatter = logging.Formatter('%(levelname)-8s %(message)s') -console.setFormatter(formatter) -#add the console handler to the root handler -log = logging.getLogger('BuildApp') -log.addHandler(console) - - -langLookup = { - 'ar' : 'Arabic', - 'bg' : 'Bulgarian', - 'ca' : 'Catalan', - 'cs' : 'Czech', - 'da' : 'Danish ', - 'de' : 'German', - 'en' : 'English', - 'eo' : 'Esperanto', - 'es' : 'Spanish', - 'fi' : 'Finnish', - 'fr' : 'French', - 'ga' : 'Irish', - 'he' : 'Hebrew', - 'hr' : 'Croatian', - 'hu' : 'Hungarian', - 'it' : 'Italian', - 'ja' : 'Japanese', - 'lt' : 'Lithuanian', - 'mk' : 'Macedonian', - 'nb' : '', - 'nl' : 'Dutch', - 'nn' : '', - 'pl' : 'Polish', - 'pt_BR' : 'Portuguese (Brazil)', - 'ro' : 'Romanian', - 'ru' : 'Russian', - 'sk' : 'Slovak', - 'sl' : 'Slovenian', - 'sq' : 'Albanian', - 'sr' : 'Serbian', - 'sv' : 'Swedish', - 'tr' : 'Turkish', - 'uk' : 'Ukrainian', - 'vi' : 'Vietnamese', - 'zh_CN' : 'Chinese (PRC)', - } - -def GetGtkPath(): - log.debug('GetGtkPath()') - dllPathInRegistry = None - try: - with _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\GTK\\2.0') as key: - dllPathInRegistry = _winreg.QueryValueEx(key, 'DllPath')[0] - # check a few key files exist at this location - gtkfiles = ['libgdk-win32-2.0-0.dll', 'libglib-2.0-0.dll', 'libgobject-2.0-0.dll', 'libcairo-2.dll'] - for file in gtkfiles: - if not os.path.isfile(os.path.join(dllPathInRegistry, file)): - dllPathInRegistry = None # one of the files not present, so assume path is wrong - break - except WindowsError as e: - dllPathInRegistry = None - log.debug(' DLLPATH=%s'%dllPathInRegistry) - return dllPathInRegistry - -def GetGrampsPath(): - GrampsPathInRegistry = None - try: - with _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\GRAMPS') as key: - GrampsPathInRegistry = _winreg.QueryValue(key, '') - # check a few key files exist at this location - except WindowsError as e: - GrampsPathInRegistry = None - - log.debug(' GRAMPSPATH=%s'%GrampsPathInRegistry) - return GrampsPathInRegistry - -def GetLanguageFromLocale(): - lang = ' ' - try: - lang = os.environ["LANG"] - lang = lang.split('.')[0] - except: - # if LANG is not set - lang = locale.getlocale()[0] - if not lang: - # if lang is empty/None - lang = locale.getdefaultlocale()[0] - return lang - -def writeLauncher(language, langcode, runtimepath, grampspath): - lines = [] - lines.append('''@rem Setting the working language -@rem ============================ -@rem GRAMPS looks during the start-up-phase for an environment variable (called LANG) -@rem to switch to a special language. It's better to use a ".CMD" or ".BAT" file to -@rem control this environment variable instead a permanent setting in the windows registry, -@rem to have the possibility to go back to the GRAMPS standard language (English) in the -@rem case you want to report about a problem or a bug. -''') - lines.append('\n@rem Set GRAMPS environment settings to %s \n' % language) - lines.append('SET LANG=$LANG$ \nSET LANGUAGE=$LANG$\n'.replace("$LANG$", langcode) ) - - lines.append('''\n\n@rem Setting the configuration path -@rem ============================== -@rem During the boot process of GRAMPS there is a check for an environment variable -@rem called GRAMPSHOME. Without this environment variable GRAMPS uses the default -@rem windows path as the location to save all configuration files: -@rem \\\\\\gramps -@rem If required, uncomment GRAMPSHOME line and edit to suit your use. - ''') - lines.append('\n@rem set the path for GRAMPS configuration files') - lines.append('\n@rem set GRAMPSHOME=PATH_TO_CONFIG_FILES') - - lines.append('''\n\n@rem Put GTK runtime on PATH -@rem ========================= -@rem Ensure GTK runtime on path first, so right GTK DLL's used. -''') - if runtimepath: - lines.append('\n@rem Put your gtk runtime first on path') - path = '\npath="%s";%%PATH%%' % runtimepath - else: - lines.append('\n@rem Uncommnet following line, and edit path to your GTK runtime') - path = "\n@rem path=PATH_TO_YOUR_GTK_RUNTIME;%%PATH%%\n" - lines.append(path) - lines.append('''\n\n@rem Start GRAMPS application -@rem ========================= -@rem Start GRAMPS with pythonw.exe (Python interpreter that runs without a command line console) -''') - lines.append('\n@rem start Gramps') - lines.append('\n"%s" "%s"\n' % (os.path.join(sys.prefix, 'pythonw.exe') , os.path.join(grampspath, 'gramps.py' ) )) - fout = open( os.path.join(grampspath, 'gramps_locale.cmd'), 'w') - fout.writelines(lines) - fout.close() - for line in lines: - print(line) - -gtkpath = GetGtkPath() -grampspath = GetGrampsPath() -lang = GetLanguageFromLocale() -if lang: - try: - lang_text = langLookup[lang.split('_', 1)[0]] - except KeyError as e: - try: - lang_text = langLookup[lang] - except KeyError as e: - lang_text = "Unknown" - - writeLauncher(lang_text, "%s.utf-8"%lang, gtkpath, grampspath) diff --git a/windows/nonAIO/builder/test_dependencies.py b/windows/nonAIO/builder/test_dependencies.py deleted file mode 100644 index b9f59e078..000000000 --- a/windows/nonAIO/builder/test_dependencies.py +++ /dev/null @@ -1,66 +0,0 @@ -# -# Gramps - a GTK+ based genealogy program -# -# Copyright (C) 2009 Stephen George -# -# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# $Id: $ - -import sys - -py_str = 'found %d.%d.%d' % sys.version_info[:3] - -try: - import gtk - try: - gtkver_str = 'found %d.%d.%d' % Gtk.gtk_version - except : # any failure to 'get' the version - gtkver_str = 'unknown version' - try: - pygtkver_str = 'found %d.%d.%d' % Gtk.pygtk_version - except :# any failure to 'get' the version - pygtkver_str = 'unknown version' -except ImportError: - gtkver_str = 'not found' - pygtkver_str = 'not found' -#exept TypeError: To handle back formatting on version split - -try: - import gobject - try: - gobjectver_str = 'found %d.%d.%d' % GObject.pygobject_version - except :# any failure to 'get' the version - gobjectver_str = 'unknown version' - -except ImportError: - gobjectver_str = 'not found' - - -try: - import cairo - try: - cairover_str = 'found %d.%d.%d' % cairo.version_info - except :# any failure to 'get' the version - cairover_str = 'unknown version' - -except ImportError: - cairover_str = 'not found' - -print('python:%s;'%py_str) -print('gtk++:%s;'%gtkver_str) -print('pygtk:%s;'%pygtkver_str) -print('gobject:%s;'%gobjectver_str) -print('cairo:%s;'%cairover_str) diff --git a/windows/nonAIO/check_gtk_install.py b/windows/nonAIO/check_gtk_install.py deleted file mode 100644 index f69772294..000000000 --- a/windows/nonAIO/check_gtk_install.py +++ /dev/null @@ -1,370 +0,0 @@ -# -# Gramps - a GTK+ based genealogy program -# -# Copyright (C) 2010 Stephen George -# -# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# $Id: $ -import sys -import os -import _winreg -from ctypes.util import find_library -import getopt -import string - -NOT_FOUND_STR ='Not Found' -#small selection of DLL's to test -testdlls = ['libgdk-win32-2.0-0.dll', 'libglib-2.0-0.dll', 'libgobject-2.0-0.dll', 'libcairo-2.dll', ] - -explain_exposed = ''' *********************************************************** - * It seems that other installations are exposing GTK DLL's - * to the operating system as they are in the environment - * path variable BEFORE the runtime directory. - * You should reorder the path variable to put your GTK - * runtime path before these other installations on the path''' - -explain_safe = ''' *************************************************************** - * While there are other installations of GTK DLL's on the path, - * it should be safe as they are on the path AFTER the runtime - * directory. ''' - -def RunExeCommand( app, args ): - cmd = app + ' ' + args - #print("Running: ", cmd) - stdin, stdout, stderr = os.popen3( cmd ) - output = string.strip(stdout.read()) - #print(output) - err = stderr.read() - if err: - print(err) - return output - -def CheckGtkInReg(): - global gtkPathInRegistry, gtkVersionInRegistry, dllPathInRegistry, dllPathShort - print('\n==== Checking Registry for GTK =====') - try: - with _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\GTK\\2.0') as key: - gtkVersionInRegistry = _winreg.QueryValueEx(key, 'Version')[0] - gtkPathInRegistry = _winreg.QueryValueEx(key, 'Path')[0] - dllPathInRegistry = _winreg.QueryValueEx(key, 'DllPath')[0] - print(' Version :', gtkVersionInRegistry) - print(' Path :', gtkPathInRegistry) - print(' DllPath :', dllPathInRegistry) - - except WindowsError as e: - print('\n GTK registry key not found in registry') - print(''' ******************************************************************** - * This might not be an error, but means I don't know the directory to - * your preferred GTK installation. - * - try passing in your GTK installation path.\n''') - print('-' * 60) - print(usage) - sys.exit(0) - -def WorkOutShortDosPath(): - global dllPathShort - print('\n==== Use win32Api to query short path name for GTK =====') - try: - import win32api - dllPathShort = win32api.GetShortPathName(dllPathInRegistry) - print(' DllPath8.3:', dllPathShort) - except ImportError: - print(' **Cant query short path name, Win32Api not installed') - print(' install from http://python.net/crew/mhammond/win32/') - print(' if you want this function to work') - -def FindLibsWithCtypes(): - # use ctypes to check where windows finds it's DLL's - print('\n==== Use ctypes to find dlls ====') - other_paths = [] - for dll in testdlls: - dllpathvalid = False - cpath = find_library(dll) - if cpath: - #print(cpath) - if cpath == os.path.join(dllPathInRegistry, dll) \ - or cpath == os.path.join(dllPathShort, dll): - dllpathvalid = True - - if not dllpathvalid: - pp = os.path.dirname(cpath) - if pp not in other_paths: - other_paths.append(pp) - else: - print(" ERROR:... ctypes failed to find %s" % dll) - if other_paths: - for pth in other_paths: - print(" ERROR: ctypes loaded some gtk dll's from %s" % pth) - else: - print(" OK ... ctypes found dll's in %s" % os.path.dirname(cpath)) - -def ScanDependencyFileForErrors(fname): - fin = open(fname, 'r') - lines = fin.readlines() - fin.close() - sysroot = os.environ["SystemRoot"] - capture = False - runtimedlls = {} - for line in lines: - if line.startswith(" Module"): # work out were paths end - pthend_idx = line.find("File Time Stamp") - acceptablePaths = [ dllPathShort.lower(), - dllPathInRegistry.lower(), - os.path.join(sysroot, 'system32').lower() - ] - if line.startswith('----- ------------'): - capture = True - if capture and line.startswith('['): - filename = line[5:pthend_idx].strip() - dirname = os.path.dirname(filename).strip() - parts = line[pthend_idx:].split() - OK = False - if dirname.startswith(os.path.join(sysroot, 'winsxs').lower()) \ - or dirname.startswith(os.path.join( - sys.prefix, r'lib\site-packages\gtk-2.0').lower()): - OK = True - - for pth in acceptablePaths: - if dirname == pth.lower(): - OK = True - - if 'MSVCR90.DLL' in filename: - if parts[0] == 'Error': - runtimedlls[filename] = "Error dll not found" - else: - runtimedlls[filename] = parts[16] - - if OK == False: - if parts[0] == 'Error': - print(" %s \tError dll not found" %( filename)) - else: - print(" ERROR: %s \tVersion %s" %( filename, parts[16])) - for rtdll in runtimedlls: - if runtimedlls[rtdll].startswith("Error"): - print('\n ERROR: MS runtime %s not found'%rtdll) - else: - print('\n MS runtime Version %s loaded from' % runtimedlls[rtdll]) - print(" %s" %rtdll) - print() - -def CheckWithDependencyWalker(): - print('\n==== Checking with Dependency Walker ====') - print(' Please be patient takes some time') - exe = os.path.join(scriptpath, 'depends.exe') - fout = os.path.join(scriptpath, 'depres.txt') - f2check = [ - os.path.join(sys.prefix, 'Lib/site-packages/gtk-2.0/gtk/_Gtk.pyd' ), - os.path.join(sys.prefix, 'Lib/site-packages/gtk-2.0/gobject/_GObject.pyd' ), - os.path.join(sys.prefix, 'Lib/site-packages/gtk-2.0/pangocairo.pyd' ), - ] - if os.path.isfile( exe ): - for ftest in f2check: - if os.path.isfile( ftest ): - #delete the output file before running command - try: - os.remove(fout) - except WindowsError as e: - pass - print(' Testing file %s' % ftest) - out = RunExeCommand(exe, '/c /f1 /ot "%s" "%s"' % (fout, ftest) ) - if os.path.isfile(fout): - ScanDependencyFileForErrors(fout) - else: - print(" ERROR: file %d does not exist", ftest) - else: - print(' Cannot check with dependency walker, not installed in local directory') - print(' get dependency walker from http://www.dependencywalker.com/') - print(' and unzip into this directory for it to work.') - -def CheckPathForOtherGtkInstalls(): - print('\n====Checking environment path for other gtk installations====') - ePath = os.environ['path'] - dirs = ePath.split(';') - gtkpth_idx = 9999 - other_paths = [] - explain_level = 0 - for i, d in enumerate(dirs): - #print('==%s==' %d) - if d == gtkPathInRegistry or d == dllPathInRegistry\ - or d == dllPathShort: - gtkpth_idx = i - continue - for fname in testdlls: - f = os.path.join(d, fname) - if os.path.isfile( f ): - #print(' Found Erronous gtk DLL %s' % f) - if d not in other_paths: - other_paths.append(d) - if i < gtkpth_idx: # path appears BEFORE runtime path - print(' ERROR: %s should not appear before runtime path' % d) - explain_level = 2 - else: - print(' FOUND: %s, Probably OK as appears AFTER runtime path' % d) - if explain_level <= 1: - explain_level = 1 - if gtkpth_idx == 9999: - print('\n ERROR: Runtime directory not on enviroment path') - print(" ** Runtime needs to be on path to load DLL's from\n") - if explain_level == 2: - print(explain_exposed) - elif explain_level == 1: - print(explain_safe) - if len(other_paths) == 0: - print(' No other gtk installatons found\n') - -# ==== report what python thinks it's using ===== -MIN_PYTHON_VER = (2,5,1) -UNTESTED_PYTHON_VER = (3,0,0) - -MIN_GTK_VER = (2,10,11) -UNTESTED_GTK_VER = (2,16,7) - -MIN_PYGTK_VER = (2,10,6) -UNTESTED_PYGTK_VER = (2,12,2) - -MIN_GOBJECT_VER = (2,12,3) -UNTESTED_GOBJECT_VER = (2,14,3) - -MIN_CAIRO_VER = (1,2,6) -UNTESTED_CAIRO_VER = (1,4,13) - -def PrintFailedImport(appl, minVersion, result): - print(appl,) - print('version %d.%d.%d or above.....\t' % minVersion ,) - print(result) - -def PrintVersionResult(appl, minVersion, actualVersion, untestedVersion): - print(appl,) - print('version %d.%d.%d or above.....\t' % minVersion ,) - print('found %d.%d.%d' % actualVersion ,) - if minVersion <= actualVersion < untestedVersion: - print('...OK') - elif actualVersion >= untestedVersion: - print('...UNTESTED VERSION') - else: - print('...FAILED') - -def Import_pyGtkIntoPython(): - print('\n==== Test import into python ====') - #py_str = 'found %d.%d.%d' % sys.version_info[:3] - PrintVersionResult(' Python ', MIN_PYTHON_VER, sys.version_info[:3], UNTESTED_PYTHON_VER) - - # Test the GTK version - try: - import gtk - - PrintVersionResult(' GTK+ ', MIN_GTK_VER, Gtk.gtk_version, UNTESTED_GTK_VER ) - - #test the pyGTK version (which is in the gtk namespace) - PrintVersionResult(' pyGTK ', MIN_PYGTK_VER, Gtk.pygtk_version, UNTESTED_PYGTK_VER ) - - except ImportError: - PrintFailedImport(' GTK+ ', MIN_GTK_VER, NOT_FOUND_STR) - PrintFailedImport(' pyGTK ', MIN_PYGTK_VER, 'Cannot test, ...GTK+ missing') - - - #test the gobject version - try: - import gobject - PrintVersionResult(' gobject', MIN_GOBJECT_VER, GObject.pygobject_version, UNTESTED_GOBJECT_VER) - - except ImportError: - PrintFailedImport(' gobject', MIN_GOBJECT_VER, NOT_FOUND_STR) - - - #test the cairo version - try: - import cairo - PrintVersionResult(' cairo ', MIN_CAIRO_VER, cairo.version_info, UNTESTED_CAIRO_VER ) - - except ImportError: - PrintFailedImport(' cairo ', MIN_CAIRO_VER, NOT_FOUND_STR) - - #test for glade - print('\n==== See if libglade installed ====') - - try: - import Gtk.glade - print(' Glade tesing import of libglade .......\tOK\n') - except ImportError as e: - print(' Glade importError: %s\n' % e) - -if __name__ == '__main__': - usage = '''Check for common problems in GTK/pyGTK installation. -Usage: - python %s [options] [gtkPath] - -Arguments: - gtkPath Path to your GTK installation directory (not the bin dir) - -Options: - None - ''' %(os.path.basename(__file__) ) - - gtkPath = None - gtkPathInRegistry = NOT_FOUND_STR - gtkVersionInRegistry = NOT_FOUND_STR - dllPathInRegistry = NOT_FOUND_STR - dllPathShort = 'NoShortPath' - scriptpath = os.path.dirname(sys.argv[0]) - try: - opts, args = getopt.getopt(sys.argv[1:], "", - []) - - for o, a in opts: - if o in ("-h", "--help"): - print(usage) - sys.exit(0) - - if len(args) > 1: - raise getopt.GetoptError('\nERROR: Too many arguments') - for arg in args: - if os.path.isdir(arg): - gtkPath = arg - else: - raise getopt.GetoptError('\nERROR: Not a valid GTK path %s' % arg) - - except getopt.GetoptError as msg: - print(msg) - print('\n %s' % usage) - sys.exit(2) - - import platform - winver = platform.win32_ver() - if len(winver) == 4: - print('''\n==== platform.win32_ver() reports ==== - Operating System: %s - Version : %s - Service Pack : %s - OS type : %s''' % winver) - else: - print(winver) - - if gtkPath: - gtkPathInRegistry = gtkPath - dllPathInRegistry = os.path.join(gtkPath, 'bin') - print(' Using %s as GTK install path' % gtkPathInRegistry) - print(' Using %s as GTK dll path' % dllPathInRegistry) - else: - CheckGtkInReg() - - WorkOutShortDosPath() - FindLibsWithCtypes() - CheckPathForOtherGtkInstalls() - Import_pyGtkIntoPython() - - CheckWithDependencyWalker() - diff --git a/windows/nonAIO/nsis/README.txt b/windows/nonAIO/nsis/README.txt deleted file mode 100644 index a9469cf1b..000000000 --- a/windows/nonAIO/nsis/README.txt +++ /dev/null @@ -1,5 +0,0 @@ - -** The files in this folder ([SVNRoot]\windows\nsis) are deprecated. ** - -They remain here for reference only and will be removed at a later date. - diff --git a/windows/nonAIO/nsis/gcheck.py b/windows/nonAIO/nsis/gcheck.py deleted file mode 100644 index 8d9a4f505..000000000 --- a/windows/nonAIO/nsis/gcheck.py +++ /dev/null @@ -1,49 +0,0 @@ -# -# Gramps - a GTK+/GNOME based genealogy program -# -# Copyright (C) 2008 Steve Hall -# Copyright (C) 2008 Stephen George -# -# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -import sys - -fn = sys.argv[1] -f = open(fn,"w") - -f.write('[tests]\n') - -try: - from gi.repository import Gtk - f.write('gtk=yes\n') - f.write('gtkver=%d.%d.%d\n' % Gtk.gtk_version) - f.write('pygtk=yes\n') - f.write('pygtkver=%d.%d.%d\n' % Gtk.pygtk_version) -except ImportError: - f.write('gtk=no\n') - f.write('gtkver=no\n') - f.write('pygtk=no\n') - f.write('pygtkver=no\n') - -try: - import cairo - f.write('pycairo=yes\n') - #f.write('pycairover=%s\n' % cairo.version_info) - f.write('pycairover=%s\n' % str(cairo.version_info) ) -except ImportError: - f.write('pycairo=no\n') - f.write('pycairover=no\n') -f.close() - diff --git a/windows/nonAIO/nsis/gramps-build.bat b/windows/nonAIO/nsis/gramps-build.bat deleted file mode 100644 index f4ab03bed..000000000 --- a/windows/nonAIO/nsis/gramps-build.bat +++ /dev/null @@ -1,393 +0,0 @@ -@echo off -rem -rem Filename: gramps-build.bat -rem Author: Steve Hall [ digitect dancingpaper com ] -rem Date: (See timestamp in :CHOOSE) -rem -rem Documentation -rem License {{{1 -rem -------- -rem This program is free software; you can redistribute it and/or -rem modify it under the terms of the GNU General Public License as -rem published by the Free Software Foundation; either version 2 of the -rem License, or (at your option) any later version. -rem [ http://www.gnu.org/licenses/gpl.html ] -rem -rem This program is distributed in the hope that it will be useful, -rem but WITHOUT ANY WARRANTY; without even the implied warranty of -rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -rem General Public License for more details. -rem -rem You should have received a copy of the GNU General Public License -rem along with this program; if not, write to the Free Software -rem Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -rem 02111-1307, USA. -rem - -rem Usage {{{1 -rem ------ -rem This script automates the build process and creation of an -rem installer as much as possible, downloading sources and making -rem assumptions where necessary. To use it, the following are -rem required: -rem -rem o Windows NT/2K/XP (we no longer support 95/98/ME) -rem -rem o These GNU tools on path: -rem - gzip/gunzip -rem - tar (GNU version >= 1.13.10) -rem - sed -rem - wget -rem -rem o The Nullsoft Installer. -rem -rem o Adjust the variables in :ENVIRONMENT (below) to fit your -rem preferences and installation conditions. -rem - -rem 1}}} -rem Initialization -rem Version and Personal Environment (*** FIX ME!! ***) {{{1 -echo ----------------------------------------------------------------- -echo Version and Personal environment... -echo. - -rem ***************************************************** -rem * MAKE ALL ADJUSTMENTS IN THIS SECTION! * - -rem version (also used for location - set VERSION=3 - set VERSIONSUB=0 - set VERSIONPT=3 - set VERSIONBUILD=1 - -rem path to Nullsoft Installer (NSIS) - set NSIS=C:\PROGRA~1\NSIS -rem path to Nullsoft customized files - set CUSTOM=C:\DOCUME~1\halls\_seh\devel\gramps - -rem path to Python - if "%PYTHONPATH%"=="" echo Manually setting $PYTHONPATH... - if "%PYTHONPATH%"=="" set PYTHONPATH=C:\Python25 - -rem * END OF ADJUSTMENTS SECTION * -rem ****************************************************** - -rem Initial Environment {{{1 -echo ----------------------------------------------------------------- -echo Initial environment... -echo. - -rem force Win NT/2K/XP - if not "%OS%"=="Windows_NT" echo Windows NT/2K/XP required, unable to continue. - if not "%OS%"=="Windows_NT" goto QUIT - -rem program name - set PROG=gramps -rem save system PATH - set PATHORIG=%PATH% -rem set build path (location of this file and tarball) - set BUILDPATH=%CD% -rem cat for general filename - set VERSIONNAME=%PROG%-%VERSION%.%VERSIONSUB%.%VERSIONPT% - -rem Verify {{{1 -echo ----------------------------------------------------------------- -echo Verifying environment and utilities available... -echo. - -echo %%BUILDPATH%% : %BUILDPATH% -echo %%VERSIONNAME%% : %VERSIONNAME% -echo %%NSIS%% : %NSIS% -echo %%CUSTOM%% : %CUSTOM% - -rem date - for /F "TOKENS=1* DELIMS= " %%A in ('date/t') do set MYDAYNAME=%%A - for /F "TOKENS=2* DELIMS= " %%A in ('date/t') do set MYMDY=%%A - for /f "TOKENS=3* DELIMS=/" %%A in ('echo %MYMDY%') do set MYYEAR=%%A - for /f "TOKENS=1* DELIMS=/" %%A in ('echo %MYMDY%') do set MYMONTH=%%A - for /f "TOKENS=2* DELIMS=/" %%A in ('echo %MYMDY%') do set MYDAY=%%A -rem time - for /F "TOKENS=1* DELIMS=:" %%A in ('time/t') do set MYHOUR=%%A - for /F "TOKENS=2* DELIMS=: " %%A in ('time/t') do set MYMINUTE=%%A -echo Date : %MYYEAR%-%MYMONTH%-%MYDAY% -echo Time : %MYHOUR%:%MYMINUTE% -echo Build version : %VERSIONBUILD% -echo. - - set TRY=gzip.exe - for %%A in (%TRY%) do set YES=%%~$PATH:A - if "%YES%"=="" goto UTILHALT -echo Found %TRY%... - - set TRY=gunzip.exe - for %%A in (%TRY%) do set YES=%%~$PATH:A - if "%YES%"=="" goto UTILHALT -echo Found %TRY%... - - set TRY=sed.exe - for %%A in (%TRY%) do set YES=%%~$PATH:A - if "%YES%"=="" goto UTILHALT -echo Found %TRY%... - - set TRY=tar.exe - for %%A in (%TRY%) do set YES=%%~$PATH:A - if "%YES%"=="" goto UTILHALT -echo Found %TRY%... - - set TRY=wget.exe - for %%A in (%TRY%) do set YES=%%~$PATH:A - if "%YES%"=="" goto UTILHALT -echo Found %TRY%... - -echo. - set /P CH=Continue? [Y/N] - if /I "%CH%"=="Y" goto CHOOSE - - :UTILHALT - if "%YES%"=="" echo Utility %TRY% not found on PATH, unable to continue. -echo. -echo Quitting... -echo. - goto QUIT - -rem }}}1 -rem Procedures -rem CHOOSE {{{1 -:CHOOSE - cls -echo. -echo ______________________________________________________________________________ -echo Updated: 2007-06-18 07:09:16-0400 -echo. -echo Please select a choice: -echo. -echo [1] Clean build location -echo [2] Extract source tarballs -echo [3] Build source -echo [4] Nullsoft Installer -echo. -echo [R]emove existing installation -echo. -echo [A]uto -echo [Q]uit -echo. -echo ______________________________________________________________________________ -echo. - - :WinNT - set /P CH=Please enter choice above... - if /I "%CH%"=="Q" goto QUIT - if /I "%CH%"=="A" goto AUTO - if /I "%CH%"=="R" goto REMOVE - if /I "%CH%"=="4" goto NSIS - if /I "%CH%"=="3" goto BUILD - if /I "%CH%"=="2" goto SOURCE - if /I "%CH%"=="1" goto CLEAN - goto WinNT - -rem AUTO {{{1 -:AUTO -echo ----------------------------------------------------------------- -echo Setting Auto-Run... -echo. - - set RETURN=no - -rem CLEAN {{{1 -:CLEAN -echo ----------------------------------------------------------------- -echo Cleaning up build location (removing all directories and files) -echo. - - if not exist %BUILDPATH%\%VERSIONNAME% echo (Nothing to clean.) - if exist %BUILDPATH%\%VERSIONNAME% rmdir /s /q %BUILDPATH%\%VERSIONNAME% - -if not "%RETURN%"=="no" echo. -if not "%RETURN%"=="no" echo Build location cleaned. (Ctrl+C to quit) -if not "%RETURN%"=="no" pause -if not "%RETURN%"=="no" goto CHOOSE - -rem SOURCE {{{1 -:SOURCE -echo ----------------------------------------------------------------- -echo Downloading and extracting source tarballs... -echo. - -rem NOTE: tar -xzf does not always work - - :SOURCES -echo %VERSIONNAME%.tar.gz... - if exist "%VERSIONNAME%.tar" goto TARBALL - if not exist "%VERSIONNAME%.tar.gz" echo. - if not exist "%VERSIONNAME%.tar.gz" echo Tarball not found, downloading... - if not exist "%VERSIONNAME%.tar.gz" echo. - if not exist "%VERSIONNAME%.tar.gz" wget -c http://superb-east.dl.sourceforge.net/sourceforge/gramps/%VERSIONNAME%.tar.gz - if not exist "%VERSIONNAME%.tar.gz" echo. - if not exist "%VERSIONNAME%.tar.gz" echo Download failed, unable to continue. - if not exist "%VERSIONNAME%.tar.gz" echo. - if not exist "%VERSIONNAME%.tar.gz" goto CHOOSE - if exist "%VERSIONNAME%.tar.gz" gunzip "%VERSIONNAME%.tar.gz" -echo tarball unzipped. - :TARBALL - if not exist "%VERSIONNAME%.tar" echo. - if not exist "%VERSIONNAME%.tar" echo Unable to continue, no tarball found. - if not exist "%VERSIONNAME%.tar" echo. - if not exist "%VERSIONNAME%.tar" goto CHOOSE -echo extracting... - tar -xvf %VERSIONNAME%.tar - -if not "%RETURN%"=="no" echo. -if not "%RETURN%"=="no" echo Source tarballs unpacked. (Ctrl+C to quit) -if not "%RETURN%"=="no" pause -if not "%RETURN%"=="no" goto CHOOSE - -rem BUILD {{{1 -:BUILD -echo ----------------------------------------------------------------- -echo Building... -echo. - -rem TODO: This should happen on the user's machine, since the process -rem apparently embeds a number of paths into the result. - -echo. -echo Translations... -echo. - -rem TODO: Brian's script doesn't work for me... -rem cd "%BUILDPATH%\%VERSIONNAME%" -rem if exist "%CUSTOM%\grampsSetup.py" copy /Y "%CUSTOM%\grampsSetup.py" "%BUILDPATH%\%VERSIONNAME%" -rem if exist "%CUSTOM%\grampsSetup.py" echo Setting up language files (this could take a while)... -rem rem Use Brian's grampsSetup.py utility... -rem rem switches: -rem rem -r :: release -rem rem -c :: compile -rem rem -t :: set up the language files -rem rem Note: we use only "-t", we don't want to compile -rem if exist "%CUSTOM%\grampsSetup.py" python grampsSetup.py -t - -echo. -echo Setting up language files... -echo. - cd "%BUILDPATH%\%VERSIONNAME%\po" -rem create the directories - for %%A in (*.po) do if not exist lang\%%~nA\LC_MESSAGES mkdir lang\%%~nA\LC_MESSAGES -rem convert .po to gramps.mo (in directories) - for %%A in (*.po) do %PYTHONPATH%\python %PYTHONPATH%\Tools\i18n\msgfmt.py -o lang\%%~nA\LC_MESSAGES\gramps.mo %%A & echo processing language %%~nA... - -echo. -echo Attempting to update build level in const.py to "%VERSIONBUILD%"... -echo. - cd "%BUILDPATH%\%VERSIONNAME%\src" - sed -i -e "s/^\(version \s\+= \"%VERSION%\.%VERSIONSUB%\.%VERSIONPT%-\).\+\"/\1%VERSIONBUILD%\"/g" const.py - rem ren sedDOSSUX const.py - -if not "%RETURN%"=="no" echo. -if not "%RETURN%"=="no" echo Did we enjoy building? -if not "%RETURN%"=="no" pause -if not "%RETURN%"=="no" goto CHOOSE - -rem NSIS {{{1 -:NSIS -echo ----------------------------------------------------------------- -echo Nullsoft Installer creation -echo. - -if exist %NSIS%\CON goto NSISFOUND - echo. - echo NSIS path not found. Unable to continue... - pause - goto CHOOSE - :NSISFOUND - -rem echo copying customized NSIS files... -rem if not exist "%BUILDPATH%\%VERSIONNAME%\nsis" mkdir "%BUILDPATH%\%VERSIONNAME%\nsis" -rem copy /Y "%NSIS%\Contrib\Graphics\Icons\classic-install.ico" "%BUILDPATH%\%VERSIONNAME%\nsis\classic-install.ico" -rem copy /Y "%NSIS%\Contrib\Graphics\Icons\classic-uninstall.ico" "%BUILDPATH%\%VERSIONNAME%\nsis\classic-uninstall.ico" -rem copy /Y "%NSIS%\Contrib\Graphics\Header\win.bmp" "%BUILDPATH%\%VERSIONNAME%\nsis\win.bmp" -rem if exist "%CUSTOM%\nsis-splash.bmp" copy /Y "%CUSTOM%\nsis-splash.bmp" "%BUILDPATH%\%VERSIONNAME%\nsis\nsis-splash.bmp" -rem if exist "%CUSTOM%\nsis-checkboxes.bmp" copy /Y "%CUSTOM%\nsis-checkboxes.bmp" "%BUILDPATH%\%VERSIONNAME%\nsis\nsis-checkboxes.bmp" - -rem TODO: -echo copying temporary, should end up in next release (?) - if not exist "%BUILDPATH%\%VERSIONNAME%\nsis\CON" mkdir "%BUILDPATH%\%VERSIONNAME%\nsis" - if exist "%CUSTOM%\gramps.nsi" copy /Y "%CUSTOM%\gramps.nsi" /Y "%BUILDPATH%\%VERSIONNAME%\nsis\gramps.nsi" - if exist "%CUSTOM%\ped24.ico" copy /Y "%CUSTOM%\ped24.ico" /Y "%BUILDPATH%\%VERSIONNAME%\src\images\ped24.ico" - if exist "%CUSTOM%\gcheck.py" copy /Y "%CUSTOM%\gcheck.py" /Y "%BUILDPATH%\%VERSIONNAME%\nsis\gcheck.py" - -echo building installer... - cd "%BUILDPATH%\%VERSIONNAME%\nsis" - %NSIS%\makensis gramps.nsi - -rem Open Windows Explorer to this directory - explorer /e,"%BUILDPATH%\%VERSIONNAME%\nsis" - -echo. -echo Pausing... did we enjoy building the Nullsoft installer? (Ctrl+C to quit) - pause - goto CHOOSE - -rem REMOVE {{{1 -:REMOVE -rem this is NOT automatic -if "%RETURN%"=="no" goto CHOOSE - -echo ----------------------------------------------------------------- -echo Removing existing installation -echo. - -echo removing "%ProgramFiles%\gramps" - if exist "%ProgramFiles%\gramps" rmdir /s /q "%ProgramFiles%\gramps" -echo removing "%USERPROFILE%\Start Menu\Programs\GRAMPS" - if exist "%USERPROFILE%\Start Menu\Programs\GRAMPS" rmdir /s /q "%USERPROFILE%\Start Menu\Programs\GRAMPS" -echo removing "%TEMP%\gramps-install.ini" - if exist "%TEMP%\gramps-install.ini" del "%TEMP%\gramps-install.ini" -echo removing "%TEMP%\gcheck.py" - if exist "%TEMP%\gcheck.py" del "%TEMP%\gcheck.py" - -if not "%RETURN%"=="no" echo. -if not "%RETURN%"=="no" echo Pausing... did we enjoy removing existing installation? (Ctrl+C to quit) -if not "%RETURN%"=="no" pause -if not "%RETURN%"=="no" goto CHOOSE - -rem QUIT {{{1 -:QUIT -echo. -echo Finished. -echo. - - cd "%BUILDPATH%" - -rem clear variables - set ARCHIVEDRIVE= - set BUILDDRIVE= - set BUILDPATH= - set BUILDTYPE= - set VERSION= - set VERSIONNAME= - set VERSIONSUB= - set CH= - set FNAME= - set GCC= - set LICENSEFILE= - set MYDAY= - set MYMONTH= - set MYYEAR= - set MYDAYNAME= - set MDY= - set NSIS= - set CUSTOM= -rem set PATHORIG= - set RETURN= - set TRY= - set YES= - -rem reset path if backup exists -rem if "%PATHORIG%"=="" goto END - set PATH=%PATHORIG% - set PATHORIG= - -rem 1}}} -:END -rem vim:foldmethod=marker diff --git a/windows/nonAIO/nsis/gramps.nsi b/windows/nonAIO/nsis/gramps.nsi deleted file mode 100644 index 662cc8cb4..000000000 --- a/windows/nonAIO/nsis/gramps.nsi +++ /dev/null @@ -1,775 +0,0 @@ -# -# Gramps - a GTK+ based genealogy program -# -# Copyright (C) 2006-2008 Steve Hall -# Copyright (C) 2008 Stephen George -# -# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# -# Description: Nullsoft Installer (NSIS) file to build Windows installer: -# -# Requires: NSIS version 2.0 or later. -# Notes: -# o WARNING: if you make changes to this script, look out for $INSTDIR -# to be valid, because this line is very dangerous: RMDir /r $INSTDIR -# o WARNING: Except the uninstaller. That re-paths for some reason. -# - -# ToDo {{{1 -# -# o More refined dependency checking (versioning) -# o Add .gramps and .gpkg as extensions -# * => Need separate icons for them? -# -# 1}}} -# Installer Attributes -# 0. Base Settings {{{1 - -# version numbers -!define GRAMPS_VER_MAJOR $%VERSION% -!define GRAMPS_VER_MINOR $%VERSIONSUB% -!define GRAMPS_VER_POINT $%VERSIONPT% -!define GRAMPS_VER_BUILD $%VERSIONBUILD% - -; HM NIS Edit Wizard helper defines -!define PRODUCT_NAME "GRAMPS" -!define PRODUCT_VERSION ${GRAMPS_VER_MAJOR}.${GRAMPS_VER_MINOR}.${GRAMPS_VER_POINT}-${GRAMPS_VER_BUILD} -!define PRODUCT_PUBLISHER "The GRAMPS project" -!define PRODUCT_WEB_SITE "http://gramps-project.org" -!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" -!define PRODUCT_UNINST_ROOT_KEY "HKLM" - -!define DESKTOP_LINK "$DESKTOP\${PRODUCT_NAME} ${PRODUCT_VERSION}.lnk" - -# adds Native Language Support -!define HAVE_NLS - -# output file -Name ${PRODUCT_NAME} -OutFile gramps-${PRODUCT_VERSION}.exe - -# self ensure we don't have a corrupted file -CRCCheck on - -# compression -SetCompress auto -# zlib good, bzip2 better, lzma best (and slowest, whew.) -SetCompressor lzma -# reference existing store if possible -SetDatablockOptimize on -# UPX -# comment next line if you don't have UPX (http://upx.sourceforge.net) -!packhdr temp.dat "upx --best --compress-icons=0 temp.dat" - -SetOverwrite try - -# don't allow installation into C:\ directory -AllowRootDirInstall false - -# install details color scheme -InstallColors /windows -# background -BGGradient off - -# adds an XP manifest -XPStyle on - -# default install path -InstallDir $PROGRAMFILES\gramps - -# Remember install folder -InstallDirRegKey HKCU "Software\${PRODUCT_NAME}" "" - -# Remember the installer language -!define MUI_LANGDLL_REGISTRY_ROOT "HKCU" -!define MUI_LANGDLL_REGISTRY_KEY "Software\${PRODUCT_NAME}" -!define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language" - -# types of installs we can perform -InstType Typical -InstType Minimal -InstType Full - -SilentInstall normal - -# 1. Header file (Begin Modern User Interface) {{{1 -!include "MUI.nsh" - -# 2. Interface Configuration {{{1 - -# installer/uninstaller icons (these must match in size!) -#!define MUI_ICON "classic-install.ico" -#!define MUI_UNICON "classic-uninstall.ico" - -# splash, header graphics (same for both!) -!define MUI_HEADERIMAGE -#!define MUI_HEADERIMAGE_BITMAP "win.bmp" -#!define MUI_WELCOMEFINISHPAGE_BITMAP "nsis-splash.bmp" - -!define MUI_LICENSEPAGE_BUTTON $(^AgreeBtn) -!define MUI_LICENSEPAGE_RADIOBUTTONS -!define MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT $(^AcceptBtn) -!define MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE $(^DontAcceptBtn) - -#!define MUI_COMPONENTSPAGE_CHECKBITMAP "nsis-checkboxes.bmp" -# use small description box below components (not adjacent) -!define MUI_COMPONENTSPAGE_SMALLDESC - -!define MUI_DIRECTORYPAGE_TEXT_TOP $(^DirText) -!define MUI_DIRECTORYPAGE_TEXT_DESTINATION $(^DirBrowseText) -!define MUI_DIRECTORYPAGE_VERIFYONLEAVE - -!define MUI_FINISHPAGE_RUN "$3" -!define MUI_FINISHPAGE_RUN_PARAMETERS "$\"$INSTDIR\gramps.py$\"" - -!define MUI_ABORTWARNING - -# 3. Pages {{{1 - -!insertmacro MUI_PAGE_WELCOME - -!insertmacro MUI_PAGE_LICENSE "..\COPYING" - -!insertmacro MUI_PAGE_COMPONENTS -!insertmacro MUI_PAGE_DIRECTORY -!insertmacro MUI_PAGE_INSTFILES -!insertmacro MUI_PAGE_FINISH - - -# Uninstaller - -!insertmacro MUI_UNPAGE_CONFIRM -!insertmacro MUI_UNPAGE_INSTFILES - -# 4. Custom functions {{{1 - -# 5. Language files {{{1 -# Languages -# TODO: These are pretty badly broken at the moment. -# Note: This appears to be due to building on Win95 which does not -# support Unicode: -# (http://nsis.sf.net/archive/nsisweb.php?page=247&instances=0,235) -# -# So what happens if we use only ASCII? -# -#!insertmacro MUI_LANGUAGE "Arabic" -#!insertmacro MUI_LANGUAGE "Bulgarian" -#!insertmacro MUI_LANGUAGE "Catalan" -#!insertmacro MUI_LANGUAGE "Croatian" -#!insertmacro MUI_LANGUAGE "Czech" -#!insertmacro MUI_LANGUAGE "Default" -#!insertmacro MUI_LANGUAGE "Estonian" -#!insertmacro MUI_LANGUAGE "Farsi" -#!insertmacro MUI_LANGUAGE "Finnish" -#!insertmacro MUI_LANGUAGE "Greek" -#!insertmacro MUI_LANGUAGE "Hebrew" -#!insertmacro MUI_LANGUAGE "Hungarian" -#!insertmacro MUI_LANGUAGE "Indonesian" -#!insertmacro MUI_LANGUAGE "Japanese" -#!insertmacro MUI_LANGUAGE "Korean" -#!insertmacro MUI_LANGUAGE "Latvian" -#!insertmacro MUI_LANGUAGE "Lithuanian" -#!insertmacro MUI_LANGUAGE "Macedonian" -#!insertmacro MUI_LANGUAGE "Norwegian" -#!insertmacro MUI_LANGUAGE "Polish" -#!insertmacro MUI_LANGUAGE "Romanian" -#!insertmacro MUI_LANGUAGE "Russian" -#!insertmacro MUI_LANGUAGE "Serbian" -#!insertmacro MUI_LANGUAGE "SerbianLatin" -#!insertmacro MUI_LANGUAGE "SimpChinese" -#!insertmacro MUI_LANGUAGE "Slovak" -#!insertmacro MUI_LANGUAGE "Slovenian" -#!insertmacro MUI_LANGUAGE "Swedish" -#!insertmacro MUI_LANGUAGE "Thai" -#!insertmacro MUI_LANGUAGE "TradChinese" -#!insertmacro MUI_LANGUAGE "Turkish" -#!insertmacro MUI_LANGUAGE "Ukrainian" - -!insertmacro MUI_LANGUAGE "Danish" -!insertmacro MUI_LANGUAGE "Dutch" -!insertmacro MUI_LANGUAGE "English" -!insertmacro MUI_LANGUAGE "French" -!insertmacro MUI_LANGUAGE "German" -!insertmacro MUI_LANGUAGE "Italian" -!insertmacro MUI_LANGUAGE "Portuguese" -!insertmacro MUI_LANGUAGE "PortugueseBR" -!insertmacro MUI_LANGUAGE "Spanish" - -# 6. Reserve Files {{{1 - -# 1}}} -# 7a. Sections -# Program Files {{{1 -###################################################################### - -Section "Program files (required)" Main -SectionIn 1 2 3 RO - - Call WarnDirExists - - SetOutPath $INSTDIR - File /r ..\src\*.* - File ..\COPYING - File ..\NEWS - File ..\FAQ - File ..\AUTHORS - #File /r ..\nsis\gramps.ico - WriteRegStr HKLM "SOFTWARE\${PRODUCT_NAME}" "" "$INSTDIR" - WriteRegStr HKLM "SOFTWARE\${PRODUCT_NAME}" "version" ${PRODUCT_VERSION} - -SectionEnd - -# Menus and shortcuts {{{1 - -SubSection "Menus and shortcuts" MenusAndIcons - -Section "Add GRAMPS to the Start Menu" MenuStart -SectionIn 1 3 - # determines "Start In" location for shortcuts - SetOutPath $INSTDIR - - StrCpy $0 "GRAMPS" - - IfFileExists "$SMPROGRAMS\$0" 0 skipStartMenuRemove - RMDir /r "$SMPROGRAMS\$0\" - skipStartMenuRemove: - - CreateDirectory "$SMPROGRAMS\$0\" - CreateShortCut "$SMPROGRAMS\$0\GRAMPS ${PRODUCT_VERSION}.lnk" "$3" "$\"$INSTDIR\gramps.py$\"" "$INSTDIR\images\ped24.ico" "0" "" "" "GRAMPS" - WriteINIStr "$SMPROGRAMS\$0\GRAMPS Website.url" "InternetShortcut" "URL" "http://www.gramps-project.org/" - CreateShortCut "$SMPROGRAMS\$0\Uninstall GRAMPS.lnk" "$\"$INSTDIR\uninstall.exe$\"" "" "" "0" "" "" "Uninstall GRAMPS" - -SectionEnd - -Section "Add Desktop icon" Desktop -#SectionIn 1 3 -# determines "Start In" location for shortcuts -SetOutPath $INSTDIR -CreateShortCut "${DESKTOP_LINK}" "$3" "$\"$INSTDIR\gramps.py$\"" "$INSTDIR\images\ped24.ico" "0" "" "" "GRAMPS" -SectionEnd - -SubSectionEnd - -# Language Files {{{1 - -Section "Language Files" LangFiles -# off by default -#SectionIn 1 3 - - #CreateDirectory $INSTDIR\lang - SetOutPath $INSTDIR - File /r ..\po\*.mo - - #MessageBox MB_OK "Setting up languages..." - # setup - ; switches: - ; -c - ; -t :: setup the language files - ; -r - ; - ; pythonw grampsSetup.py -c -t - #Exec '"$3" $\"$INSTDIR\grampsSetup.py -c -t -r$\"' - -SectionEnd - -# File Association {{{1 - -# FileAssoc.nsh macro {{{2 -; -; FileAssoc.nsh (http://nsis.sourceforge.net/FileAssoc) -; File association helper macros -; Written by Saivert -; -; Features automatic backup system and UPDATEFILEASSOC macro for -; shell change notification. -; -; |> How to use <| -; To associate a file with an application so you can double-click it in explorer, use -; the APP_ASSOCIATE macro like this: -; -; Example: -; !insertmacro APP_ASSOCIATE \ -; "txt" \ -; "myapp.textfile" \ -; "myapp tiny description" \ -; "$INSTDIR\myapp.exe,0" \ -; "Open with myapp" \ -; "$INSTDIR\myapp.exe $\"%1$\"" -; -; Never insert the APP_ASSOCIATE macro multiple times, it is only ment -; to associate an application with a single file and using the -; the "open" verb as default. To add more verbs (actions) to a file -; use the APP_ASSOCIATE_ADDVERB macro. -; -; Example: -; !insertmacro APP_ASSOCIATE_ADDVERB "myapp.textfile" "edit" "Edit with myapp" \ -; "$INSTDIR\myapp.exe /edit $\"%1$\"" -; -; To have access to more options when registering the file association use the -; APP_ASSOCIATE_EX macro. Here you can specify the verb and what verb is to be the -; standard action (default verb). -; -; And finally: To remove the association from the registry use the APP_UNASSOCIATE -; macro. Here is another example just to wrap it up: -; !insertmacro APP_UNASSOCIATE "txt" "myapp.textfile" -; -; |> Note <| -; When defining your file class string always use the short form of your application title -; then a period (dot) and the type of file. This keeps the file class sort of unique. -; Examples: -; Winamp.Playlist -; NSIS.Script -; Photoshop.JPEGFile -; -; |> Tech info <| -; The registry key layout for a file association is: -; HKEY_CLASSES_ROOT -; = <"description"> -; shell -; = <"menu-item text"> -; command = <"command string"> -; - -!macro APP_ASSOCIATE EXT FILECLASS DESCRIPTION ICON COMMANDTEXT COMMAND - ; Backup the previously associated file class - ReadRegStr $R0 HKCR ".${EXT}" "" - WriteRegStr HKCR ".${EXT}" "${FILECLASS}_backup" "$R0" - - WriteRegStr HKCR ".${EXT}" "" "${FILECLASS}" - WriteRegStr HKCR "${FILECLASS}" "" `${DESCRIPTION}` - WriteRegStr HKCR "${FILECLASS}\DefaultIcon" "" `${ICON}` - WriteRegStr HKCR "${FILECLASS}\shell" "" "open" - WriteRegStr HKCR "${FILECLASS}\shell\open" "" `${COMMANDTEXT}` - WriteRegStr HKCR "${FILECLASS}\shell\open\command" "" `${COMMAND}` -!macroend - -!macro APP_ASSOCIATE_EX EXT FILECLASS DESCRIPTION ICON VERB DEFAULTVERB SHELLNEW COMMANDTEXT COMMAND - ; Backup the previously associated file class - ReadRegStr $R0 HKCR ".${EXT}" "" - WriteRegStr HKCR ".${EXT}" "${FILECLASS}_backup" "$R0" - - WriteRegStr HKCR ".${EXT}" "" "${FILECLASS}" - StrCmp "${SHELLNEW}" "0" +2 - WriteRegStr HKCR ".${EXT}\ShellNew" "NullFile" "" - - WriteRegStr HKCR "${FILECLASS}" "" `${DESCRIPTION}` - WriteRegStr HKCR "${FILECLASS}\DefaultIcon" "" `${ICON}` - WriteRegStr HKCR "${FILECLASS}\shell" "" `${DEFAULTVERB}` - WriteRegStr HKCR "${FILECLASS}\shell\${VERB}" "" `${COMMANDTEXT}` - WriteRegStr HKCR "${FILECLASS}\shell\${VERB}\command" "" `${COMMAND}` -!macroend - -!macro APP_ASSOCIATE_ADDVERB FILECLASS VERB COMMANDTEXT COMMAND - WriteRegStr HKCR "${FILECLASS}\shell\${VERB}" "" `${COMMANDTEXT}` - WriteRegStr HKCR "${FILECLASS}\shell\${VERB}\command" "" `${COMMAND}` -!macroend - -!macro APP_ASSOCIATE_REMOVEVERB FILECLASS VERB - DeleteRegKey HKCR `${FILECLASS}\shell\${VERB}` -!macroend - - -!macro APP_UNASSOCIATE EXT FILECLASS - ; Backup the previously associated file class - ReadRegStr $R0 HKCR ".${EXT}" `${FILECLASS}_backup` - WriteRegStr HKCR ".${EXT}" "" "$R0" - - DeleteRegKey HKCR `${FILECLASS}` -!macroend - -!macro APP_ASSOCIATE_GETFILECLASS OUTPUT EXT - ReadRegStr ${OUTPUT} HKCR ".${EXT}" "" -!macroend - - -; !defines for use with SHChangeNotify -!ifdef SHCNE_ASSOCCHANGED -!undef SHCNE_ASSOCCHANGED -!endif -!define SHCNE_ASSOCCHANGED 0x08000000 -!ifdef SHCNF_FLUSH -!undef SHCNF_FLUSH -!endif -!define SHCNF_FLUSH 0x1000 - -!macro UPDATEFILEASSOC -; Using the system.dll plugin to call the SHChangeNotify Win32 API function so we -; can update the shell. - System::Call "shell32::SHChangeNotify(i,i,i,i) (${SHCNE_ASSOCCHANGED}, ${SHCNF_FLUSH}, 0, 0)" -!macroend - -;EOF - -# 2}}} - -Section "File Association" FileAssoc -SectionIn 1 3 -# depends on FileAssoc.nsh, by Saivert (http://nsis.sourceforge.net/FileAssoc) - - # .grdb - !insertmacro APP_ASSOCIATE \ - "grdb" \ - "application/x-gramps-database" \ - "GRAMPS database file" \ - "$INSTDIR\images\ped24.ico" \ - "Open with GRAMPS" \ - "$\"$3$\" $\"$INSTDIR\gramps.py$\" $\"%1$\"" - - # .gramps - !insertmacro APP_ASSOCIATE \ - "gramps" \ - "application/x-gramps-file" \ - "GRAMPS application file" \ - "$INSTDIR\images\ped24.ico" \ - "Open with GRAMPS" \ - "$\"$3$\" $\"$INSTDIR\gramps.py$\" $\"%1$\"" - - # .gpkg - !insertmacro APP_ASSOCIATE \ - "gpkg" \ - "application/x-gramps-package" \ - "GRAMPS package file" \ - "$INSTDIR\images\ped24.ico" \ - "Open with GRAMPS" \ - "$\"$3$\" $\"$INSTDIR\gramps.py$\" $\"%1$\"" - - # .ged - !insertmacro APP_ASSOCIATE \ - "ged" \ - "application/x-gramps-gedcom" \ - "GEnealogical Data COMmunication (GEDCOM) file" \ - "$INSTDIR\images\ped24.ico" \ - "Open with GRAMPS" \ - "$\"$3$\" $\"$INSTDIR\gramps.py$\" $\"%1$\"" - -SectionEnd - -# Uninstall {{{1 -###################################################################### - -Section Uninstall - - # ask first - MessageBox MB_YESNO|MB_ICONQUESTION|MB_DEFBUTTON2 \ - "Completely remove installation? $\n\ - (Delete folder $INSTDIR ) " \ - IDNO unQuit IDYES unContinue - - unQuit: - Abort - - unContinue: - ClearErrors - RMDir /r $INSTDIR - Call un.StartMenu - Call un.Desktop - DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" - - DeleteRegKey HKLM "SOFTWARE\${PRODUCT_NAME}" - - unEnd: - -SectionEnd - -# 1}}} -# 7b. Functions -# Installer {{{1 -##################################################################### - -Function .onInit - -#MessageBox MB_OK "Testing dependencies..." - - ; look for pythonw.exe - ; NOTE: This is set to $3 if it exists. - - ; on path - SearchPath $3 pythonw.exe -#MessageBox MB_OK "DEBUG: Testing pythonw.exe on path...$\n$\nFound: $\"$3$\"" - IfFileExists $3 HavePython 0 - - ; registry keys (these are confirmed possibilities) - ; reg key - ReadRegStr $3 HKLM 'SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\python.exe' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key (updated on 2.5 upgrade) - ReadRegStr $3 HKCR 'Python.File\shell\open\command' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key (updated on 2.5 upgrade) - ReadRegStr $3 HKCU 'Software\Classes\Python.File\shell\open\command' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key - ReadRegStr $3 HKCU 'Software\Microsoft\Windows\Current version\App Paths\Python.exe' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key - ReadRegStr $3 HKCU 'Software\Microsoft\Windows\ShellNoRoam\MUICache (data:python)' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key (Python version 2.5) - ReadRegStr $3 HKCU 'Software\Python\PythonCore\2.5\InstallPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key (Python version 2.4) - ReadRegStr $3 HKCU 'Software\Python\PythonCore\2.4\InstallPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - # these hold compound paths - #; reg key (Python version 2.5) - #ReadRegStr $3 HKCU 'Software\Python\PythonCore\2.5\PythonPath' "" - #StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - #IfFileExists $3 HavePython 0 - #; reg key (Python version 2.4) - #ReadRegStr $3 HKCU 'Software\Python\PythonCore\2.4\PythonPath' "" - #StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - #IfFileExists $3 HavePython 0 - - ; Keys not prone to be properly updated on upgrades - ; reg key - ReadRegStr $3 HKCR 'Applications\python.exe\shell\open\command' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key (not updated on 2.5 upgrade) - ReadRegStr $3 HKLM 'SOFTWARE\Python\PythonCore\2.5\PythonPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key - ReadRegStr $3 HKLM 'SOFTWARE\Python\PythonCore\2.4\PythonPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key - ReadRegStr $3 HKLM 'SOFTWARE\Python\PythonCore\2.5' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key - ReadRegStr $3 HKLM 'SOFTWARE\Python\PythonCore\2.4' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key - ReadRegStr $3 HKLM 'SOFTWARE\Python\PythonCore\2.5\InstallPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - ; reg key - ReadRegStr $3 HKLM 'SOFTWARE\Python\PythonCore\2.4\InstallPath' "" - StrCpy $3 "$3pythonw.exe" ; append "pythonw.exe" - IfFileExists $3 HavePython 0 - - - ; TODO: request path from user/browse (can NSIS do this?) - #MessageBox MB_OK "GRAMPS requires Python to be installed, please see:$\n \ - # $\n \ - # http://gramps-project.org/windows/ $\n \ - # $\n \ - # for installation help. Unable to continue installation." - #Abort - MessageBox MB_OK "Python not found." - StrCpy $4 "flag" - HavePython: - - - ; extract gcheck - SetOutPath $TEMP - - File gcheck.py - ; set INI output location ($1) - StrCpy $1 "$TEMP\gramps-install.ini" - - ; run gcheck - ExecWait '"$3" $TEMP\gcheck.py $1' - - ; verify INI created - IfFileExists $1 YesINI 0 - #MessageBox MB_OK "Dependency test INI creation failed, unable to continue." - #Abort - MessageBox MB_OK "Dependency test INI creation failed." - StrCpy $4 "flag" - YesINI: - - ; verify environment test results - ; GTK+ and pygtk - ReadINIStr $0 $1 tests gtk - StrCmp $0 "yes" HaveGTK 0 - - ; TODO: if no, perhaps just have GTK+ installed, check registry - ; reg key - ReadRegStr $3 HKCU 'Environment\GTK_BASEPATH' "" - IfFileExists $3\*.* NoHavePyGTK 0 - ; reg key - ReadRegStr $3 HKCU 'Software\GTK\2.0\Path' "" - IfFileExists $3\*.* NoHavePyGTK 0 - ; reg key - ReadRegStr $3 HKLM 'Software\GTK\2.0\Path' "" - IfFileExists $3\*.* NoHavePyGTK 0 - ; reg key - ReadRegStr $3 HKLM 'Software\GTK\2.0\DllPath' "" - IfFileExists $3\*.* NoHavePyGTK 0 - - ; if we make it this far, we don't have GTK+ - #MessageBox MB_OK "GRAMPS requires GTK+ and PyGTK to be installed, please see:$\n \ - # $\n \ - # http://gramps-project.org/windows/ $\n \ - # $\n \ - # for installation help. Unable to continue installation." - #Abort - MessageBox MB_OK "GTK+ and PyGTK not found." - StrCpy $4 "flag" - - NoHavePyGTK: - #MessageBox MB_OK "PyGTK import failed (GTK+ found on system), please see:$\n \ - # $\n \ - # http://gramps-project.org/windows/ $\n \ - # $\n \ - # for installation help. Unable to continue installation." - #Abort - MessageBox MB_OK "PyGTK not found." - StrCpy $4 "flag" - - HaveGTK: - - # NOTE: we can not detect just pygtk via gcheck.py - - ; glade - ReadINIStr $0 $1 tests glade - StrCmp $0 "yes" Haveglade 0 - #MessageBox MB_OK "glade not installed, unable to continue." - #Abort - MessageBox MB_OK "Glade not found." - StrCpy $4 "flag" - Haveglade: - ; pycairo - ReadINIStr $0 $1 tests pycairo - StrCmp $0 "yes" Havepycairo 0 - #MessageBox MB_OK "pycairo not installed, unable to continue." - #Abort - MessageBox MB_OK "pycairo not found." - StrCpy $4 "flag" - Havepycairo: - - #!insertmacro MUI_LANGDLL_DISPLAY - - StrCmp $4 "flag" +1 DependantsOK - MessageBox MB_OK "At least one dependency was not found, unable to continue." - Abort - - DependantsOK: - - Call RemovePrevious - - # default install directory ($INSTDIR) - StrCpy $INSTDIR $PROGRAMFILES\gramps - -FunctionEnd - -Function .onInstSuccess - - # write uninstaller - WriteUninstaller $INSTDIR\uninstall.exe - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninstall.exe" - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" - WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" -#Does not display icon on win2000? WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\images\ped24.ico" -FunctionEnd - -Function .onInstFailed - MessageBox MB_OK|MB_ICONEXCLAMATION "Installation failed." -FunctionEnd - -Function RemovePrevious - #check if gramps exists in registry - ClearErrors - Var /GLOBAL PreviousPath - ReadRegStr $PreviousPath HKLM "SOFTWARE\${PRODUCT_NAME}" "" - # do some tests to find an installed version - ifErrors NoPreviousVersion - IfFileExists $PreviousPath\uninstall.exe 0 NoPreviousVersion #Check uninstall.exe from previous version exists on HD - Var /GLOBAL PreviousVersion - ReadRegStr $PreviousVersion HKLM "SOFTWARE\${PRODUCT_NAME}" "Version" - # query OK to delete old version - MessageBox MB_OKCANCEL|MB_ICONQUESTION|MB_DEFBUTTON2 \ - "${PRODUCT_NAME} $PreviousVersion is already installed$\n$\nClick 'OK' to uninstall previous version or 'Cancel' to continue anyway" \ - IDCANCEL NoPreviousVersion - # uninstall old version - CopyFiles $PreviousPath\uninstall.exe $TEMP - ExecWait '"$TEMP\uninstall.exe" _?=$PreviousPath' $0 - StrCpy $INSTDIR $PreviousPath #set the previous path as the default install path <= worth while or not? - ;DetailPrint "uninstaller set error level $0" - NoPreviousVersion: -FunctionEnd - -Function WarnDirExists - # warn if dir already exists - IfFileExists $INSTDIR\*.* DirExists DirExistsOK - DirExists: - MessageBox MB_YESNO|MB_ICONQUESTION|MB_DEFBUTTON2 \ - "Install over existing installation?" \ - IDYES DirExistsOK - Quit - DirExistsOK: -FunctionEnd - -# Uninstaller {{{1 -##################################################################### - -Function un.onUnInstSuccess - -FunctionEnd - -Function un.StartMenu - - IfFileExists "$SMPROGRAMS\GRAMPS" 0 unStartMenuFine - RMDir /r "$SMPROGRAMS\GRAMPS\" - unStartMenuFine: - -FunctionEnd - -Function un.Desktop - - IfFileExists "${DESKTOP_LINK}" 0 unNoDesktop - Delete "${DESKTOP_LINK}" - unNoDesktop: - -FunctionEnd - -# 1}}} -# 8. Section Descriptions {{{1 -###################################################################### -# (must be last) - - LangString DESC_Main ${LANG_ENGLISH} "Main program files (required)." - LangString DESC_MenusAndIcons ${LANG_ENGLISH} "General Desktop and Start Menu shortcut options." - LangString DESC_Desktop ${LANG_ENGLISH} "Add icon to the Desktop." - LangString DESC_MenuStart ${LANG_ENGLISH} "Add icons to the Start Menu." - LangString DESC_LangFiles ${LANG_ENGLISH} "Set up non-English languages." - LangString DESC_FileAssoc ${LANG_ENGLISH} "Associate GRAMPS with .grdb, .gramps, .gpkg, and .ged files." - -!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN - - !insertmacro MUI_DESCRIPTION_TEXT ${Main} $(DESC_Main) - !insertmacro MUI_DESCRIPTION_TEXT ${MenusAndIcons} $(DESC_MenusAndIcons) - !insertmacro MUI_DESCRIPTION_TEXT ${Desktop} $(DESC_Desktop) - !insertmacro MUI_DESCRIPTION_TEXT ${MenuStart} $(DESC_MenuStart) - !insertmacro MUI_DESCRIPTION_TEXT ${LangFiles} $(DESC_LangFiles) - !insertmacro MUI_DESCRIPTION_TEXT ${FileAssoc} $(DESC_FileAssoc) - -!insertmacro MUI_FUNCTION_DESCRIPTION_END - -# 1}}} -# vim:foldmethod=marker:noexpandtab diff --git a/windows/nonAIO/nsis/ped24.ico b/windows/nonAIO/nsis/ped24.ico deleted file mode 100644 index 80b1cd949..000000000 Binary files a/windows/nonAIO/nsis/ped24.ico and /dev/null differ