From 5f87bdbcb2e37030584e2579b04bb1a8418b0fee Mon Sep 17 00:00:00 2001 From: Witold Filipczyk Date: Sat, 5 Sep 2020 22:02:16 +0200 Subject: [PATCH] [meson] meson build scripts. Not finished yet, but I added to motivate myself and others. The goal is to get a few seconds faster builds. autotools still will be available. --- config2.h.in | 967 ++++++++++++++++++++++++ git-dirty.sh | 9 + meson.build | 751 ++++++++++++++++++ meson_options.txt | 63 ++ src/bfu/meson.build | 5 + src/bookmarks/backend/meson.build | 5 + src/bookmarks/meson.build | 2 + src/cache/meson.build | 1 + src/config/meson.build | 1 + src/cookies/dialogs.c | 3 + src/cookies/meson.build | 23 + src/dialogs/meson.build | 4 + src/document/css/meson.build | 1 + src/document/dom/meson.build | 1 + src/document/html/meson.build | 3 + src/document/html/parser/meson.build | 1 + src/document/libdom/meson.build | 2 + src/document/meson.build | 12 + src/document/plain/meson.build | 1 + src/dom/css/meson.build | 1 + src/dom/meson.build | 5 + src/dom/sgml/docbook/meson.build | 1 + src/dom/sgml/html/meson.build | 1 + src/dom/sgml/meson.build | 5 + src/dom/sgml/rss/meson.build | 1 + src/dom/sgml/xbel/meson.build | 1 + src/ecmascript/meson.build | 19 + src/ecmascript/spidermonkey/meson.build | 6 + src/encoding/bzip2.c | 4 +- src/encoding/deflate.c | 2 - src/encoding/meson.build | 17 + src/encoding/zstd.c | 2 - src/formhist/meson.build | 1 + src/globhist/meson.build | 1 + src/intl/gettext/meson.build | 82 ++ src/intl/meson.build | 8 + src/main/meson.build | 4 + src/meson.build | 91 +++ src/mime/backend/meson.build | 22 + src/mime/meson.build | 2 + src/network/meson.build | 4 + src/network/ssl/meson.build | 4 + src/osdep/beos/meson.build | 1 + src/osdep/meson.build | 19 + src/osdep/os2/meson.build | 1 + src/osdep/riscos/meson.build | 1 + src/osdep/unix/meson.build | 1 + src/osdep/win32/meson.build | 1 + src/protocol/auth/meson.build | 3 + src/protocol/bittorrent/meson.build | 4 + src/protocol/file/meson.build | 4 + src/protocol/finger/meson.build | 1 + src/protocol/fsp/meson.build | 1 + src/protocol/ftp/meson.build | 8 + src/protocol/gopher/meson.build | 1 + src/protocol/http/meson.build | 4 + src/protocol/meson.build | 32 + src/protocol/nntp/meson.build | 1 + src/protocol/rewrite/meson.build | 1 + src/protocol/smb/meson.build | 1 + src/scripting/guile/meson.build | 2 + src/scripting/lua/meson.build | 2 + src/scripting/meson.build | 19 + src/scripting/perl/meson.build | 3 + src/scripting/python/meson.build | 3 + src/scripting/ruby/meson.build | 2 + src/scripting/smjs/meson.build | 5 + src/session/meson.build | 1 + src/terminal/meson.build | 7 + src/util/meson.build | 25 + src/viewer/dump/meson.build | 1 + src/viewer/meson.build | 3 + src/viewer/text/meson.build | 7 + 73 files changed, 2298 insertions(+), 6 deletions(-) create mode 100644 config2.h.in create mode 100755 git-dirty.sh create mode 100644 meson.build create mode 100644 meson_options.txt create mode 100644 src/bfu/meson.build create mode 100644 src/bookmarks/backend/meson.build create mode 100644 src/bookmarks/meson.build create mode 100644 src/cache/meson.build create mode 100644 src/config/meson.build create mode 100644 src/cookies/meson.build create mode 100644 src/dialogs/meson.build create mode 100644 src/document/css/meson.build create mode 100644 src/document/dom/meson.build create mode 100644 src/document/html/meson.build create mode 100644 src/document/html/parser/meson.build create mode 100644 src/document/libdom/meson.build create mode 100644 src/document/meson.build create mode 100644 src/document/plain/meson.build create mode 100644 src/dom/css/meson.build create mode 100644 src/dom/meson.build create mode 100644 src/dom/sgml/docbook/meson.build create mode 100644 src/dom/sgml/html/meson.build create mode 100644 src/dom/sgml/meson.build create mode 100644 src/dom/sgml/rss/meson.build create mode 100644 src/dom/sgml/xbel/meson.build create mode 100644 src/ecmascript/meson.build create mode 100644 src/ecmascript/spidermonkey/meson.build create mode 100644 src/encoding/meson.build create mode 100644 src/formhist/meson.build create mode 100644 src/globhist/meson.build create mode 100644 src/intl/gettext/meson.build create mode 100644 src/intl/meson.build create mode 100644 src/main/meson.build create mode 100644 src/meson.build create mode 100644 src/mime/backend/meson.build create mode 100644 src/mime/meson.build create mode 100644 src/network/meson.build create mode 100644 src/network/ssl/meson.build create mode 100644 src/osdep/beos/meson.build create mode 100644 src/osdep/meson.build create mode 100644 src/osdep/os2/meson.build create mode 100644 src/osdep/riscos/meson.build create mode 100644 src/osdep/unix/meson.build create mode 100644 src/osdep/win32/meson.build create mode 100644 src/protocol/auth/meson.build create mode 100644 src/protocol/bittorrent/meson.build create mode 100644 src/protocol/file/meson.build create mode 100644 src/protocol/finger/meson.build create mode 100644 src/protocol/fsp/meson.build create mode 100644 src/protocol/ftp/meson.build create mode 100644 src/protocol/gopher/meson.build create mode 100644 src/protocol/http/meson.build create mode 100644 src/protocol/meson.build create mode 100644 src/protocol/nntp/meson.build create mode 100644 src/protocol/rewrite/meson.build create mode 100644 src/protocol/smb/meson.build create mode 100644 src/scripting/guile/meson.build create mode 100644 src/scripting/lua/meson.build create mode 100644 src/scripting/meson.build create mode 100644 src/scripting/perl/meson.build create mode 100644 src/scripting/python/meson.build create mode 100644 src/scripting/ruby/meson.build create mode 100644 src/scripting/smjs/meson.build create mode 100644 src/session/meson.build create mode 100644 src/terminal/meson.build create mode 100644 src/util/meson.build create mode 100644 src/viewer/dump/meson.build create mode 100644 src/viewer/meson.build create mode 100644 src/viewer/text/meson.build diff --git a/config2.h.in b/config2.h.in new file mode 100644 index 00000000..5327988d --- /dev/null +++ b/config2.h.in @@ -0,0 +1,967 @@ +/* Directory containing default config */ +#define CONFDIR "@CONFDIR@" + +/* Define if you want: 256 colors support */ +#mesondefine CONFIG_256_COLORS + +/* Define if you want: 88 colors support */ +#mesondefine CONFIG_88_COLORS + +/* Define if you want: API Documentation support */ +#mesondefine CONFIG_APIDOCS + +/* Define if you want: AsciiDoc support */ +#mesondefine CONFIG_ASCIIDOC + +/* Define if you want: Backtrace support */ +#mesondefine CONFIG_BACKTRACE + +/* Define if you want: BitTorrent protocol support */ +#mesondefine CONFIG_BITTORRENT + +/* Define if you want: Bookmarks support */ +#mesondefine CONFIG_BOOKMARKS + +/* Define if you want: brotli support */ +#mesondefine CONFIG_BROTLI + +/* Define if you want: bzlib support */ +#mesondefine CONFIG_BZIP2 + +/* Define if you want: Local CGI support */ +#mesondefine CONFIG_CGI + +/* Define if you want: Combining characters support */ +#mesondefine CONFIG_COMBINE + +/* Define if you want: Cookies support */ +#mesondefine CONFIG_COOKIES + +/* Define if you want: Cascading Style Sheets support */ +#mesondefine CONFIG_CSS + +/* Define if you want: Data protocol support */ +#mesondefine CONFIG_DATA + +/* Define if you want: Debug mode support */ +#mesondefine CONFIG_DEBUG + +/* Define if you want: Documentation Tools support */ +#mesondefine CONFIG_DOC + +/* Define if you want: DOM engine support */ +#mesondefine CONFIG_DOM + +/* Define if you want: Doxygen support */ +#mesondefine CONFIG_DOXYGEN + +/* Define if you want: ECMAScript (JavaScript) support */ +#mesondefine CONFIG_ECMASCRIPT + +/* Define if you want: SpiderMonkey document scripting support */ +#mesondefine CONFIG_ECMASCRIPT_SMJS + +/* Define if you want: ECMAScript heartbeat support support */ +#mesondefine CONFIG_ECMASCRIPT_SMJS_HEARTBEAT + +/* Define if you want: Exmode interface support */ +#mesondefine CONFIG_EXMODE + +/* Define if you want: Fast mode support */ +#mesondefine CONFIG_FASTMEM + +/* Define if you want: Finger protocol support */ +#mesondefine CONFIG_FINGER + +/* Define if you want: Form history support */ +#mesondefine CONFIG_FORMHIST + +/* Define if you want: FSP protocol support */ +#mesondefine CONFIG_FSP + +/* Define if you want: FTP protocol support */ +#mesondefine CONFIG_FTP + +/* Define if you want: Global history support */ +#mesondefine CONFIG_GLOBHIST + +/* Define if you want: GNUTLS support */ +#mesondefine CONFIG_GNUTLS + +/* Define if you want: Gopher protocol support */ +#mesondefine CONFIG_GOPHER + +/* Define if you want: gpm support */ +#mesondefine CONFIG_GPM + +/* Define if you want: GssApi support */ +#mesondefine CONFIG_GSSAPI + +/* Define if you want: zlib support */ +#mesondefine CONFIG_GZIP + +/* Define if you want: HTML highlighting support */ +#mesondefine CONFIG_HTML_HIGHLIGHT + +/* Define if you want: idn support */ +#mesondefine CONFIG_IDN + +/* Define if you want: interlinking support */ +#mesondefine CONFIG_INTERLINK + +/* Define if you want: IPv6 support */ +#mesondefine CONFIG_IPV6 + +/* Define if you want: DBLATEX support */ +#mesondefine CONFIG_DBLATEX + +/* Define if you want: LEDs support */ +#mesondefine CONFIG_LEDS + +/* Define as 1 to use the libdom library. */ +#mesondefine CONFIG_LIBDOM + +/* Define if you want: libev support */ +#mesondefine CONFIG_LIBEV + +/* Define if you want: libevent support */ +#mesondefine CONFIG_LIBEVENT + +/* Define if you want: lzma support */ +#mesondefine CONFIG_LZMA + +/* Define if you want: Mailcap support */ +#mesondefine CONFIG_MAILCAP + +/* Define if you want: Man Page Formats support */ +#mesondefine CONFIG_MANPAGE + +/* Define if you want: Manual Formats support */ +#mesondefine CONFIG_MANUAL + +/* Define if you want: Marks support */ +#mesondefine CONFIG_MARKS + +/* Define if you want: Mimetypes files support */ +#mesondefine CONFIG_MIMETYPES + +/* Define if you want: Mouse handling support */ +#mesondefine CONFIG_MOUSE + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +#mesondefine CONFIG_NLS + +/* Define if you want: NNTP protocol support */ +#mesondefine CONFIG_NNTP + +/* Define if you want: No root exec support */ +#mesondefine CONFIG_NO_ROOT_EXEC + +/* Define if you want: nss_compat_ossl support */ +#mesondefine CONFIG_NSS_COMPAT_OSSL + +/* Define if you want: OpenSSL support */ +#mesondefine CONFIG_OPENSSL + +/* Define if you want: BEOS support */ +#mesondefine CONFIG_OS_BEOS + +/* Define if you want: EMX support */ +#mesondefine CONFIG_OS_OS2 + +/* Define if you want: RISCOS support */ +#mesondefine CONFIG_OS_RISCOS + +/* Define if you want: UNIX support */ +#mesondefine CONFIG_OS_UNIX + +/* Define if you want: WIN32 support */ +#mesondefine CONFIG_OS_WIN32 + +/* Define if you want: Own libc stubs support */ +#mesondefine CONFIG_OWN_LIBC + +/* Define if using Perl 5.8.8 or later, where the "POPpx" macro no longer + needs an "n_a" variable like it did in 5.8.7 */ +#mesondefine CONFIG_PERL_POPPX_WITHOUT_N_A + +/* Define if you want: Pod2HTML support */ +#mesondefine CONFIG_POD2HTML + +/* Define if you want: Browser scripting support */ +#mesondefine CONFIG_SCRIPTING + +/* Define if you want: Guile support */ +#mesondefine CONFIG_SCRIPTING_GUILE + +/* Define if you want: Lua support */ +#mesondefine CONFIG_SCRIPTING_LUA + +/* Define if you want: Perl support */ +#mesondefine CONFIG_SCRIPTING_PERL + +/* Define if you want: Python3 support */ +#mesondefine CONFIG_SCRIPTING_PYTHON + +/* Define if you want: Ruby support */ +#mesondefine CONFIG_SCRIPTING_RUBY + +/* Define if you want: SpiderMonkey support */ +#mesondefine CONFIG_SCRIPTING_SPIDERMONKEY + +/* Define if you want: Small binary support */ +#mesondefine CONFIG_SMALL + +/* Define if you want: Samba protocol support */ +#mesondefine CONFIG_SMB + +/* Define if you want: SSL support */ +#mesondefine CONFIG_SSL + +/* Define if you want: BSD sysmouse support */ +#mesondefine CONFIG_SYSMOUSE + +/* Define if you want: terminfo support */ +#mesondefine CONFIG_TERMINFO + +/* Define as 1 to use the TRE library for regular expression searching. This + requires the header file. If you define CONFIG_UTF8 too, then + wchar_t must be exactly 32-bit so that it matches unicode_val_T. */ +#mesondefine CONFIG_TRE + +/* Define if you want: true color support */ +#mesondefine CONFIG_TRUE_COLOR + +/* Define if you want: URI rewriting support */ +#mesondefine CONFIG_URI_REWRITE + +/* Define if you want: UTF-8 support */ +#mesondefine CONFIG_UTF8 + +/* Define if you want: XBEL bookmarks support */ +#mesondefine CONFIG_XBEL_BOOKMARKS + +/* Define if you want: XmlTo support */ +#mesondefine CONFIG_XMLTO + +/* Define if you want: zstd support */ +#mesondefine CONFIG_ZSTD + +/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c' support on those systems. + */ +#undef CRAY_STACKSEG_END + +/* Define to 1 if using `alloca.c'. */ +#undef C_ALLOCA + +/* Define to 1 if you have the `access' function. */ +#mesondefine HAVE_ACCESS + +/* Define if you have struct addrinfo */ +#mesondefine HAVE_ADDRINFO + +/* Define to 1 if you have the `alarm' function. */ +#mesondefine HAVE_ALARM + +/* Define to 1 if you have `alloca', as a function or macro. */ +#mesondefine HAVE_ALLOCA + +/* Define to 1 if you have and it should be used (not on Ultrix). + */ +#mesondefine HAVE_ALLOCA_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_ARGZ_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_ARPA_INET_H + +/* Define to 1 if you have the `ASN1_STRING_get0_data' function. */ +#mesondefine HAVE_ASN1_STRING_GET0_DATA + +/* Define to 1 if you have the `asprintf' function. */ +#mesondefine HAVE_ASPRINTF + +/* Define to 1 if you have the `atoll' function. */ +#mesondefine HAVE_ATOLL + +/* Define to 1 if you have the `bcopy' function. */ +#mesondefine HAVE_BCOPY + +/* Define if you have _beginthread() */ +#mesondefine HAVE_BEGINTHREAD + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_BROTLI_DECODE_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_BZLIB_H + +/* Define if you have C99 compliant vsnprintf() */ +#mesondefine HAVE_C99_VSNPRINTF + +/* Define to 1 if you have the `chmod' function. */ +#mesondefine HAVE_CHMOD + +/* Define to 1 if you have the `clock_gettime' function. */ +#mesondefine HAVE_CLOCK_GETTIME + +/* Define to 1 if you have the `cygwin_conv_to_full_win32_path' function. */ +#mesondefine HAVE_CYGWIN_CONV_TO_FULL_WIN32_PATH + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#mesondefine HAVE_DIRENT_H + +/* Define to 1 if you have the `event_base_free' function. */ +#mesondefine HAVE_EVENT_BASE_FREE + +/* Define to 1 if you have the `event_base_get_method' function. */ +#mesondefine HAVE_EVENT_BASE_GET_METHOD + +/* Define to 1 if you have the `event_base_new' function. */ +#mesondefine HAVE_EVENT_BASE_NEW + +/* Define to 1 if you have the `event_base_set' function. */ +#mesondefine HAVE_EVENT_BASE_SET + +/* Define to 1 if you have the `event_config_set_flag' function. */ +#mesondefine HAVE_EVENT_CONFIG_SET_FLAG + +/* Define to 1 if you have the `event_get_method' function. */ +#mesondefine HAVE_EVENT_GET_METHOD + +/* Define to 1 if you have the `event_get_struct_event_size' function. */ +#mesondefine HAVE_EVENT_GET_STRUCT_EVENT_SIZE + +/* Define to 1 if you have the `event_get_version' function. */ +#mesondefine HAVE_EVENT_GET_VERSION + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_EVENT_H + +/* Define to 1 if you have the `event_reinit' function. */ +#mesondefine HAVE_EVENT_REINIT + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_EV_EVENT_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_EXECINFO_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_EXPAT_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_FCNTL_H + +/* Define to 1 if you have the `feof_unlocked' function. */ +#mesondefine HAVE_FEOF_UNLOCKED + +/* Define to 1 if you have the `fflush' function. */ +#mesondefine HAVE_FFLUSH + +/* Define to 1 if you have the `fgets_unlocked' function. */ +#mesondefine HAVE_FGETS_UNLOCKED + +/* Define to 1 if you have the `fork' function. */ +#mesondefine HAVE_FORK + +/* Define to 1 if you have the `fpathconf' function. */ +#mesondefine HAVE_FPATHCONF + +/* Define to 1 if you have the `fseeko' function. */ +#mesondefine HAVE_FSEEKO + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_FSPLIB_H + +/* Define to 1 if you have the `fsync' function. */ +#mesondefine HAVE_FSYNC + +/* Define to 1 if you have the `ftello' function. */ +#mesondefine HAVE_FTELLO + +/* Define to 1 if you have the `getcwd' function. */ +#mesondefine HAVE_GETCWD + +/* Define to 1 if you have the `getegid' function. */ +#mesondefine HAVE_GETEGID + +/* Define to 1 if you have the `geteuid' function. */ +#mesondefine HAVE_GETEUID + +/* Define to 1 if you have the `getgid' function. */ +#mesondefine HAVE_GETGID + +/* Define to 1 if you have the `gethostbyaddr' function. */ +#mesondefine HAVE_GETHOSTBYADDR + +/* Define to 1 if you have the `getifaddrs' function. */ +#mesondefine HAVE_GETIFADDRS + +/* Define to 1 if you have the `getpagesize' function. */ +#mesondefine HAVE_GETPAGESIZE + +/* Define to 1 if you have the `getpgid' function. */ +#mesondefine HAVE_GETPGID + +/* Define to 1 if you have the `getpgrp' function. */ +#mesondefine HAVE_GETPGRP + +/* Define to 1 if you have the `getpid' function. */ +#mesondefine HAVE_GETPID + +/* Define to 1 if you have the `getpwnam' function. */ +#mesondefine HAVE_GETPWNAM + +/* Define to 1 if you have the `gettimeofday' function. */ +#mesondefine HAVE_GETTIMEOFDAY + +/* Define to 1 if you have the `getuid' function. */ +#mesondefine HAVE_GETUID + +/* Define to 1 if you have the `gnutls_certificate_set_x509_system_trust' + function. */ +#mesondefine HAVE_GNUTLS_CERTIFICATE_SET_X509_SYSTEM_TRUST + +/* Define to 1 if you have the `gnutls_priority_set_direct' function. */ +#mesondefine HAVE_GNUTLS_PRIORITY_SET_DIRECT + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_GPM_H + +/* Define to 1 if you have the `herror' function. */ +#mesondefine HAVE_HERROR + +/* Define if you have the iconv() function. */ +#mesondefine HAVE_ICONV + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_IDNA_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_IFADDRS_H + +/* Define to 1 if you have the `index' function. */ +#mesondefine HAVE_INDEX + +/* Define to 1 if you have the `inet_ntop' function. */ +#mesondefine HAVE_INET_NTOP + +/* Define to 1 if you have the `inet_pton' function. */ +#mesondefine HAVE_INET_PTON + +/* Define if you have int32_t */ +#mesondefine HAVE_INT32_T + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_INTTYPES_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_IO_H + +/* Define to 1 if you have the `isdigit' function. */ +#mesondefine HAVE_ISDIGIT + +/* Define to 1 if you have the `JS_ReportAllocationOverflow' function. */ +#mesondefine HAVE_JS_REPORTALLOCATIONOVERFLOW + +/* Define to 1 if you have the `JS_SetBranchCallback' function. */ +#mesondefine HAVE_JS_SETBRANCHCALLBACK + +/* Define to 1 if you have the `JS_TriggerOperationCallback' function. */ +#mesondefine HAVE_JS_TRIGGEROPERATIONCALLBACK + +/* Define to 1 if you have the `kill' function. */ +#mesondefine HAVE_KILL + +/* Define if you have and nl_langinfo(CODESET). */ +#mesondefine HAVE_LANGINFO_CODESET + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_LAUXLIB_H + +/* Define if your file defines LC_MESSAGES. */ +#mesondefine HAVE_LC_MESSAGES + +/* Define to 1 if you have the `dl' library (-ldl). */ +#mesondefine HAVE_LIBDL + +/* Define to 1 if you have the `ev' library (-lev). */ +#mesondefine HAVE_LIBEV + +/* Define to 1 if you have the `event' library (-levent). */ +#mesondefine HAVE_LIBEVENT + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_LIBEV_EVENT_H + +/* Define to 1 if you have the `nsl' library (-lnsl). */ +#mesondefine HAVE_LIBNSL + +/* Define to 1 if you have the `nss_compat_ossl' library (-lnss_compat_ossl). + */ +#mesondefine HAVE_LIBNSS_COMPAT_OSSL + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_LIBSMBCLIENT_H + +/* Define to 1 if you have the `socket' library (-lsocket). */ +#mesondefine HAVE_LIBSOCKET + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_LIMITS_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_LOCALE_H + +/* Define if you have long long */ +#mesondefine HAVE_LONG_LONG + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_LZMA_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_MACHINE_CONSOLE_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_MALLOC_H + +/* Define to 1 if you have the `memmove' function. */ +#mesondefine HAVE_MEMMOVE + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_MEMORY_H + +/* Define to 1 if you have the `mempcpy' function. */ +#mesondefine HAVE_MEMPCPY + +/* Define to 1 if you have the `memrchr' function. */ +#mesondefine HAVE_MEMRCHR + +/* Define to 1 if you have a working `mmap' system call. */ +#mesondefine HAVE_MMAP + +/* Define if you have MouOpen() */ +#mesondefine HAVE_MOUOPEN + +/* Define to 1 if you have the `mremap' function. */ +#mesondefine HAVE_MREMAP + +/* Define to 1 if you have the `munmap' function. */ +#mesondefine HAVE_MUNMAP + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +#mesondefine HAVE_NDIR_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_NETDB_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_NETINET_IN6_VAR_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_NETINET_IN_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_NETINET_IN_SYSTEM_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_NETINET_IN_SYSTM_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_NETINET_IP_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_NET_IF_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_NL_TYPES_H + +/* Define to 1 if you have the header + file. */ +#mesondefine HAVE_NSS_COMPAT_OSSL_NSS_COMPAT_OSSL_H + +/* Define if you have off_t */ +#mesondefine HAVE_OFF_T + +/* Define to 1 if you have the `poll' function. */ +#mesondefine HAVE_POLL + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_POLL_H + +/* Define to 1 if you have the `popen' function. */ +#mesondefine HAVE_POPEN + +/* Define to 1 if you have the `putenv' function. */ +#mesondefine HAVE_PUTENV + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_PWD_H + +/* Define to 1 if you have the `raise' function. */ +#mesondefine HAVE_RAISE + +/* Define to 1 if you have the `RAND_bytes' function. */ +#mesondefine HAVE_RAND_BYTES + +/* Define to 1 if you have the `rb_errinfo' function. */ +#mesondefine HAVE_RB_ERRINFO + +/* Define if you have _read_kbd() */ +#mesondefine HAVE_READ_KBD + +/* Define if you have struct sockaddr_in6 */ +#mesondefine HAVE_SA_IN6 + +/* Define if you have struct sockaddr_storage */ +#mesondefine HAVE_SA_STORAGE + +/* Define if you have _SC_PAGE_SIZE */ +#mesondefine HAVE_SC_PAGE_SIZE + +/* Define to 1 if you have the `setenv' function. */ +#mesondefine HAVE_SETENV + +/* Define to 1 if you have the `setitimer' function. */ +#mesondefine HAVE_SETITIMER + +/* Define to 1 if you have the `setlocale' function. */ +#mesondefine HAVE_SETLOCALE + +/* Define to 1 if you have the `setpgid' function. */ +#mesondefine HAVE_SETPGID + +/* Define to 1 if you have the `setpgrp' function. */ +#mesondefine HAVE_SETPGRP + +/* Define to 1 if you have the `sigaction' function. */ +#mesondefine HAVE_SIGACTION + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SIGACTION_H + +/* Define to 1 if you have the `snprintf' function. */ +#mesondefine HAVE_SNPRINTF + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_STDDEF_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_STDINT_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_STDLIB_H + +/* Define to 1 if you have the `stpcpy' function. */ +#mesondefine HAVE_STPCPY + +/* Define to 1 if you have the `strcasecmp' function. */ +#mesondefine HAVE_STRCASECMP + +/* Define to 1 if you have the `strcasestr' function. */ +#mesondefine HAVE_STRCASESTR + +/* Define to 1 if you have the `strchr' function. */ +#mesondefine HAVE_STRCHR + +/* Define to 1 if you have the `strdup' function. */ +#mesondefine HAVE_STRDUP + +/* Define to 1 if you have the `strerror' function. */ +#mesondefine HAVE_STRERROR + +/* Define to 1 if you have the `strftime' function. */ +#mesondefine HAVE_STRFTIME + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_STRINGS_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_STRING_H + +/* Define to 1 if you have the `strncasecmp' function. */ +#mesondefine HAVE_STRNCASECMP + +/* Define to 1 if you have the `strptime' function. */ +#mesondefine HAVE_STRPTIME + +/* Define to 1 if you have the `strrchr' function. */ +#mesondefine HAVE_STRRCHR + +/* Define to 1 if you have the `strstr' function. */ +#mesondefine HAVE_STRSTR + +/* Define to 1 if you have the `strtoul' function. */ +#mesondefine HAVE_STRTOUL + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_CONSIO_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_CYGWIN_H + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#mesondefine HAVE_SYS_DIR_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_FMUTEX_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_IOCTL_H + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#mesondefine HAVE_SYS_NDIR_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_PARAM_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_RESOURCE_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_SELECT_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_SOCKET_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_SOCKIO_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_STAT_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_TIME_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_TYPES_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_UN_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_SYS_UTSNAME_H + +/* Define to 1 if you have that is POSIX.1 compatible. */ +#mesondefine HAVE_SYS_WAIT_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_TERMIOS_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_TERM_H + +/* Define to 1 if you have the `timegm' function. */ +#mesondefine HAVE_TIMEGM + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_TIME_H + +/* Define to 1 if you have the `tsearch' function. */ +#mesondefine HAVE_TSEARCH + +/* Define if you have typeof */ +#mesondefine HAVE_TYPEOF + +/* Define if you have uint16_t */ +#mesondefine HAVE_UINT16_T + +/* Define if you have uint32_t */ +#mesondefine HAVE_UINT32_T + +/* Define to 1 if you have the `uname' function. */ +#mesondefine HAVE_UNAME + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_UNISTD_H + +/* Define to 1 if you have the `unsetenv' function. */ +#mesondefine HAVE_UNSETENV + +/* Define if you have variadic macros */ +#mesondefine HAVE_VARIADIC_MACROS + +/* Define to 1 if you have the `vasprintf' function. */ +#mesondefine HAVE_VASPRINTF + +/* Define to 1 if you have the `vsnprintf' function. */ +#mesondefine HAVE_VSNPRINTF + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_WCHAR_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_WCTYPE_H + +/* Define to 1 if you have the `wcwidth' function. */ +#mesondefine HAVE_WCWIDTH + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_WINDOWS_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_WS2TCPIP_H + +/* Define if you have X11 for restoring window titles */ +#mesondefine HAVE_X11 + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_ZLIB_H + +/* Define to 1 if you have the header file. */ +#mesondefine HAVE_ZSTD_H + +/* Define to 1 if you have the `__argz_count' function. */ +#mesondefine HAVE___ARGZ_COUNT + +/* Define to 1 if you have the `__argz_next' function. */ +#mesondefine HAVE___ARGZ_NEXT + +/* Define to 1 if you have the `__argz_stringify' function. */ +#mesondefine HAVE___ARGZ_STRINGIFY + +/* Define as const if the declaration of iconv() needs const. */ +#mesondefine ICONV_CONST + +/* Directory containing libraries */ +#define LIBDIR "@LIBDIR@" + +/* Directory containing locales */ +#define LOCALEDIR "@LOCALEDIR@" + +/* Define if you want: HTML (one file) support */ +#undef MANUAL_ASCIIDOC + +/* Define if you want: PDF support */ +#undef MANUAL_JW + +/* Define if you want: HTML (multiple files) support */ +#undef MANUAL_XMLTO + +/* Define if you want: HTML support */ +#undef MAN_ASCIIDOC + +/* Define if you want: man (groff) support */ +#undef MAN_XMLTO + +/* Define as inline if the compiler lets you declare a function without + inline, then define it with inline, and have that definition refer to + identifiers with internal linkage. This is allowed by C99 6.7.4p6 and + 6.7.4p3 together. Otherwise define as nothing. */ +#define NONSTATIC_INLINE @NONSTATIC_INLINE@ + +/* Package version */ +#define PACKAGE "@PACKAGE@" + +/* 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 + +/* The size of `char', as computed by sizeof. */ +#define SIZEOF_CHAR @SIZEOF_CHAR@ + +/* The size of `int', as computed by sizeof. */ +#define SIZEOF_INT @SIZEOF_INT@ + +/* The size of `long', as computed by sizeof. */ +#define SIZEOF_LONG @SIZEOF_LONG@ + +/* The size of `long long', as computed by sizeof. */ +#define SIZEOF_LONG_LONG @SIZEOF_LONG_LONG@ + +/* The size of `off_t', as computed by sizeof. */ +#define SIZEOF_OFF_T @SIZEOF_OFF_T@ + +/* The size of `short', as computed by sizeof. */ +#define SIZEOF_SHORT @SIZEOF_SHORT@ + +/* If using the C implementation of alloca, define if you know the + direction of stack growth for your system; otherwise it will be + automatically deduced at runtime. + STACK_DIRECTION > 0 => grows toward higher addresses + STACK_DIRECTION < 0 => grows toward lower addresses + STACK_DIRECTION = 0 => direction of growth unknown */ +#undef STACK_DIRECTION + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* 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 + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# undef _ALL_SOURCE +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# undef _GNU_SOURCE +#endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# undef _POSIX_PTHREAD_SEMANTICS +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# undef _TANDEM_SOURCE +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# undef __EXTENSIONS__ +#endif + + +/* Package version */ +#define VERSION "@version@" + +/* Define if you have XFree under OS/2 */ +#undef X2 + +/* How to invoke XTerm */ +#undef XTERM + +/* Define as 1 if you are using Tiny C Compiler with the GNU C Library, and + of glibc would otherwise override the alloca macro defined in + of TCC. If of glibc sees the _ALLOCA_H macro, it + assumes it has already been included, and does not redefine alloca. This + might not work in future glibc versions though, because the names of the + #include guard macros are not documented. The incompatibility has been + reported to the tinycc-devel mailing list on 2008-07-14. If a future + version of TCC provides an of its own, this hack won't be + needed. */ +#undef _ALLOCA_H + +/* Enable large inode numbers on Mac OS X 10.5. */ +#ifndef _DARWIN_USE_64_BIT_INODE +# define _DARWIN_USE_64_BIT_INODE 1 +#endif + +/* Define to 1 if on MINIX. */ +#undef _MINIX + +/* Define to 2 if the system does not provide POSIX.1 features except with + this defined. */ diff --git a/git-dirty.sh b/git-dirty.sh new file mode 100755 index 00000000..a35ab425 --- /dev/null +++ b/git-dirty.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +cd "$MESON_SOURCE_ROOT" + +for line in $(git diff-index HEAD 2>/dev/null) +do + echo '-dirty' + exit 0 +done diff --git a/meson.build b/meson.build new file mode 100644 index 00000000..3487032a --- /dev/null +++ b/meson.build @@ -0,0 +1,751 @@ +project('felinks', 'c', version:'0.14.GIT', license:'GPLv2') +srcs=[] + +srcdir = meson.source_root() + +txt = run_command('git', '--git-dir=' + srcdir + '/.git', 'rev-parse', 'HEAD').stdout().strip() +dirty = run_command(srcdir + '/git-dirty.sh').stdout().strip() +add_global_arguments('-DBUILD_ID="' + txt + dirty + '"', language : 'c') + +conf_data = configuration_data() +conf_data.set('version', '0.14.GIT') +conf_data.set('PACKAGE', 'elinks') + + +conf_data.set('CONFIG_LARGEFILE', get_option('largefile')) +conf_data.set('CONFIG_BOOKMARKS', get_option('bookmarks')) +conf_data.set('CONFIG_XBEL_BOOKMARKS', get_option('xbel')) +conf_data.set('CONFIG_SCRIPTING_SPIDERMONKEY', get_option('sm-scripting')) +conf_data.set10('CONFIG_NLS', get_option('nls')) + +conf_data.set('CONFIG_COOKIES', get_option('cookies')) +conf_data.set('CONFIG_FORMHIST', get_option('formhist')) +conf_data.set('CONFIG_GLOBHIST', get_option('globhist')) +conf_data.set('CONFIG_MAILCAP', get_option('mailcap')) +conf_data.set('CONFIG_MIMETYPES', get_option('mimetypes')) +conf_data.set('CONFIG_IPV6', get_option('ipv6')) +conf_data.set10('CONFIG_BITTORRENT', get_option('bittorrent')) +conf_data.set('CONFIG_DATA', get_option('data')) + +conf_data.set('CONFIG_URI_REWRITE', get_option('uri-rewrite')) +conf_data.set('CONFIG_CGI', get_option('cgi')) +conf_data.set('CONFIG_FINGER', get_option('finger')) +conf_data.set('CONFIG_FSP', get_option('fsp')) +conf_data.set('CONFIG_FTP', get_option('ftp')) +conf_data.set('CONFIG_GOPHER', get_option('gopher')) +conf_data.set('CONFIG_NNTP', get_option('nntp')) +conf_data.set('CONFIG_SMB', get_option('smb')) +conf_data.set('CONFIG_MOUSE', get_option('mouse')) +conf_data.set('CONFIG_SYSMOUSE', get_option('sysmouse')) +conf_data.set('CONFIG_88_COLORS', get_option('88-colors')) + +conf_data.set('CONFIG_256_COLORS', get_option('256-colors')) +conf_data.set('CONFIG_TRUE_COLOR', get_option('true-color')) +conf_data.set('CONFIG_EXMODE', get_option('exmode')) +conf_data.set('CONFIG_LEDS', get_option('leds')) +conf_data.set('CONFIG_MARKS', get_option('marks')) +conf_data.set10('CONFIG_CSS', get_option('css')) +conf_data.set('CONFIG_DOM', get_option('html-highlight')) + +conf_data.set('CONFIG_BACKTRACE', get_option('backtrace')) +conf_data.set('CONFIG_NO_ROOT', get_option('no-root')) +conf_data.set('CONFIG_DEBUG', get_option('withdebug')) +conf_data.set('CONFIG_FASTMEM', get_option('fastmem')) +conf_data.set('CONFIG_OWN_LIBC', get_option('own-libc')) +conf_data.set('CONFIG_SMALL', get_option('small')) +conf_data.set('CONFIG_UTF8', get_option('utf-8')) +conf_data.set('CONFIG_COMBINING', get_option('combining')) + +conf_data.set('CONFIG_XTERM', get_option('xterm')) +conf_data.set('CONFIG_GPM', get_option('gpm')) +conf_data.set('CONFIG_TERMINFO', get_option('terminfo')) +conf_data.set('CONFIG_GZIP', get_option('zlib')) +conf_data.set('CONFIG_BZIP2', get_option('bzlib')) +conf_data.set('CONFIG_BROTLI', get_option('brotli')) + +conf_data.set('CONFIG_ZSTD', get_option('zstd')) +conf_data.set('CONFIG_IDN', get_option('idn')) +conf_data.set('CONFIG_LZMA', get_option('lzma')) +conf_data.set('CONFIG_GSSAPI', get_option('gssapi')) +conf_data.set('CONFIG_ECMASCRIPT_SMJS', get_option('spidermonkey')) +conf_data.set('CONFIG_SCRIPTING_GUILE', get_option('guile')) +conf_data.set('CONFIG_SCRIPTING_PERL', get_option('perl')) +conf_data.set('CONFIG_SCRIPTING_PYTHON', get_option('python')) + +luapkg = get_option('luapkg') +if luapkg != '' + conf_data.set('CONFIG_SCRIPTING_LUA', true) +else + conf_data.set('CONFIG_SCRIPTING_LUA', false) +endif + +conf_data.set('CONFIG_TRE', get_option('tre')) +conf_data.set('CONFIG_SCRIPTING_RUBY', get_option('ruby')) +conf_data.set('CONFIG_GNUTLS', get_option('gnutls')) +conf_data.set('CONFIG_OPENSSL', get_option('openssl')) +conf_data.set('CONFIG_LIBEV', get_option('libev')) +conf_data.set('CONFIG_LIBEVENT', get_option('libevent')) +conf_data.set('CONFIG_X', get_option('x')) +conf_data.set('CONFIG_LIBDOM', get_option('libdom')) + +#CONFIG_BOOKMARKS=true +#CONFIG_XBEL_BOOKMARKS=true +#CONFIG_COOKIES=true +#CONFIG_DOM=true +conf_data.set('CONFIG_ECMASCRIPT', true) +#CONFIG_ECMASCRIPT_SMJS', true) +conf_data.set('CONFIG_ECMASCRIPT_SMJS_HEARTBEAT', true) +#CONFIG_FORMHIST', true) +#CONFIG_GLOBHIST', true) +conf_data.set('CONFIG_SCRIPTING', true) +#CONFIG_SCRIPTING_GUILE', false) +#conf_data.set('CONFIG_SCRIPTING_LUA', true) +#CONFIG_SCRIPTING_PERL', false) +#CONFIG_SCRIPTING_PYTHON', false) +#CONFIG_SCRIPTING_RUBY', false) +#CONFIG_SCRIPTING_SPIDERMONKEY', false) +#CONFIG_LEDS', true) +#CONFIG_EXMODE', false) +#CONFIG_CSS', true) +#CONFIG_LIBDOM', false) +#CONFIG_BROTLI', true) +#CONFIG_BZIP2', true) +#CONFIG_GZIP', true) +#CONFIG_LZMA', false) +#CONFIG_ZSTD', true) +#CONFIG_NLS', true) +#CONFIG_UTF8', true) +#CONFIG_MAILCAP', true) +#CONFIG_MIMETYPES', true) + +system = host_machine.system() +if system == 'haiku' + conf_data.set('CONFIG_OS_BEOS', true) +else + conf_data.set('CONFIG_OS_BEOS', false) +endif + +if system == 'windows' + conf_data.set('CONFIG_OS_WIN32', true) +else + conf_data.set('CONFIG_OS_WIN32', false) +endif + +if system != 'haiku' and system != 'windows' + conf_data.set10('CONFIG_OS_UNIX', true) +else + conf_data.set10('CONFIG_OS_UNIX', false) +endif + +conf_data.set('CONFIG_SSL', true) +conf_data.set('CONFIG_OS_OS2', false) +conf_data.set('CONFIG_OS_RISCOS', false) + +# AC_HEADER_DIRENT +conf_data.set10('HAVE_DIRENT_H', 1) +# AC_HEADER_SYS_WAIT +conf_data.set10('HAVE_SYS_WAIT_H', 1) +# AC_HEADER_TIME +conf_data.set10('TIME_WITH_SYS_TIME', 1) +conf_data.set10('HAVE_SYS_TIME_H', 1) + +compiler = meson.get_compiler('c') + +conf_data.set10('HAVE_WCHAR_H', compiler.has_header('wchar.h')) +conf_data.set10('HAVE_WCTYPE_H', compiler.has_header('wctype.h')) +conf_data.set10('HAVE_FCNTL_H', compiler.has_header('fcntl.h')) +conf_data.set10('HAVE_LIMITS_H', compiler.has_header('limits.h')) +conf_data.set10('HAVE_TIME_H', compiler.has_header('time.h')) +conf_data.set10('HAVE_UNISTD_H', compiler.has_header('unistd.h')) +conf_data.set10('HAVE_SIGACTION_H', compiler.has_header('sigaction.h')) +conf_data.set10('HAVE_ARPA_INET_H', compiler.has_header('arpa/inet.h')) +conf_data.set10('HAVE_NETINET_IN_SYSTM_H', compiler.has_header('netinet/in_systm.h')) +conf_data.set10('HAVE_NETINET_IN_SYSTEM_H', compiler.has_header('netinet/in_system.h')) +conf_data.set10('HAVE_NETINET_IP_H', compiler.has_header('netinet/ip.h')) +conf_data.set10('HAVE_NETDB_H', compiler.has_header('netdb.h')) + +conf_data.set10('HAVE_NETINET_IN_H', compiler.has_header('netinet/in.h')) +conf_data.set10('HAVE_NETINET_IN6_VAR_H', compiler.has_header('netinet/in6_var.h')) +conf_data.set10('HAVE_IFADDRS_H', compiler.has_header('ifaddrs.h')) +conf_data.set('HAVE_SYS_CYGWIN_H', compiler.has_header('sys/cygwin.h')) +conf_data.set('HAVE_IO_H', compiler.has_header('io.h')) +conf_data.set10('HAVE_SYS_FMUTEX_H', compiler.has_header('sys/fmutex.h')) +conf_data.set10('HAVE_SYS_IOCTL_H', compiler.has_header('sys/ioctl.h')) +conf_data.set10('HAVE_SYS_SOCKIO_H', compiler.has_header('sys/sockio.h')) +conf_data.set10('HAVE_SYS_RESOURCE_H', compiler.has_header('sys/resource.h')) +conf_data.set10('HAVE_SYS_SELECT_H', compiler.has_header('sys/select.h')) +conf_data.set10('HAVE_SYS_SOCKET_H', compiler.has_header('sys/socket.h')) +conf_data.set10('HAVE_SYS_TIME_H', compiler.has_header('sys/time.h')) +conf_data.set10('HAVE_SYS_UTSNAME_H', compiler.has_header('sys/utsname.h')) +conf_data.set10('HAVE_NET_IF_H', compiler.has_header('net/if.h')) + +conf_data.set10('HAVE_STDINT_H', compiler.has_header('stdint.h')) +conf_data.set10('HAVE_INTTYPES_H', compiler.has_header('inttypes.h')) +conf_data.set10('HAVE_LOCALE_H', compiler.has_header('locale.h')) +conf_data.set10('HAVE_PWD_H', compiler.has_header('pwd.h')) +conf_data.set10('HAVE_TERMIOS_H', compiler.has_header('termios.h')) +conf_data.set10('HAVE_POLL_H', compiler.has_header('poll.h')) + +conf_data.set10('HAVE_SYS_TYPES_H', compiler.has_header('sys/types.h')) +conf_data.set10('HAVE_GPM_H', compiler.has_header('gpm.h')) +conf_data.set('HAVE_IDNA_H', compiler.has_header('idna.h')) + +conf_data.set('HAVE_EVENT_H', compiler.has_header('event.h')) + +conf_data.set10('HAVE_STDLIB_H', compiler.has_header('stdlib.h')) +conf_data.set10('HAVE_STRING_H', compiler.has_header('string.h')) +conf_data.set10('HAVE_ALLOCA_H', compiler.has_header('alloca.h')) + +deps = [] +if conf_data.get('CONFIG_GZIP') + zdeps = dependency('zlib') + if not zdeps.found() + error('zlib not found') + endif + deps += zdeps +endif + +if conf_data.get('CONFIG_TRE') + tredeps = dependency('tre') + if not tredeps.found() + error('tre not found') + endif + deps += tredeps +endif + +if conf_data.get('CONFIG_LIBEVENT') + eventdeps = dependency('libevent') + if not eventdeps.found() + error('libevent not found') + endif + deps += eventdeps + conf_data.set('HAVE_LIBEVENT', true) +else + eventdeps = [] +endif + +if conf_data.get('CONFIG_OPENSSL') + ssldeps = dependency('openssl') + if not ssldeps.found() + error('openssl not found') + endif + deps += ssldeps + conf_data.set('USE_OPENSSL', true) +else + ssldeps = [] +endif + +gnutlsdeps = [] +if conf_data.get('CONFIG_GNUTLS') + gnutlsdeps = dependency('gnutls') + if not gnutlsdeps.found() + error('gnutls not found') + endif + libgcryptdeps = dependency('libgcrypt') + if not libgcryptdeps.found() + error('libgcrypt not found') + endif + deps += gnutlsdeps + deps += libgcryptdeps +endif + +if conf_data.get('CONFIG_BROTLI') + brotlideps = dependency('libbrotlidec') + if not brotlideps.found() + error('brotli not found') + endif + deps += brotlideps +endif + +if conf_data.get('CONFIG_ZSTD') + zstddeps = dependency('libzstd') + if not zstddeps.found() + error('zstd not found') + endif + deps += zstddeps +endif + +if conf_data.get('CONFIG_IDN') + idndeps = dependency('libidn') + if not idndeps.found() + error('idn not found') + endif + deps += idndeps +endif + +if conf_data.get('CONFIG_X') + x11deps = dependency('X11') + if not x11deps.found() + error('x11 not found') + endif + deps += x11deps +endif + +if conf_data.get('CONFIG_BZIP2') + bz2deps = dependency('bzip2') + if not bz2deps.found() + error('bz2 not found') + endif + deps += bz2deps +endif + +if conf_data.get('CONFIG_ECMASCRIPT') + mozjsdeps = dependency('mozjs-17.0') + if not mozjsdeps.found() + error('mozjs-17.0 not found') + endif + deps += mozjsdeps +endif + +if conf_data.get('CONFIG_SCRIPTING_LUA') + luadeps = dependency(luapkg) + if not luadeps.found() + error('lua not found') + endif + deps += luadeps +endif + +if conf_data.get('CONFIG_XBEL_BOOKMARKS') + expatdeps = dependency('expat') + if not expatdeps.found() + error('expat not found') + endif + deps += expatdeps +endif + +if conf_data.get('CONFIG_GPM') + cc = meson.get_compiler('c') + libgpmdeps = cc.find_library('gpm') + if not libgpmdeps.found() + error('gpm not found') + endif + deps += libgpmdeps +endif + +if conf_data.get('CONFIG_LIBDOM') + domdeps = dependency('libdom') + if not domdeps.found() + error('libdom not found') + endif + deps += domdeps +endif + +if conf_data.get('CONFIG_SCRIPTING_PYTHON') + python3deps = dependency('python3-embed') + if not python3deps.found() + error('python3 not found') + endif + deps += python3deps +endif + +rubydeps = [] +if conf_data.get('CONFIG_SCRIPTING_RUBY') + rubydeps = dependency('ruby-2.6') + if not rubydeps.found() + error('ruby not found') + endif + deps += rubydeps +endif + +guiledeps = [] +if conf_data.get('CONFIG_SCRIPTING_GUILE') + guiledeps = dependency('guile-2.2') + if not guiledeps.found() + error('guile not found') + endif + deps += guiledeps +endif + +eh = '' + +if conf_data.get('CONFIG_LIBEV') + conf_data.set('HAVE_LIBEV_EVENT_H', compiler.has_header('libev/event.h')) + eh = '#include ' +elif conf_data.get('CONFIG_LIBEVENT') + eh = '#include ' +endif + +if compiler.has_header('sys/un.h') + conf_data.set('CONFIG_INTERLINK', true) + conf_data.set10('HAVE_SYS_UN_H', true) +else + conf_data.set('CONFIG_INTERLINK', false) +endif + +#AC_STRUCT_TM +#AC_C_CONST +#AC_C_INLINE + +conf_data.set('NONSTATIC_INLINE', 'inline') + +#AC_SYS_LARGEFILE + +#AC_TYPE_SIZE_T +#AC_TYPE_OFF_T +#EL_CHECK_TYPE(ssize_t, int) + +conf_data.set10('HAVE_LONG_LONG', 1) +conf_data.set10('HAVE_OFF_T', 1) +conf_data.set10('HAVE_INT32_T', 1) +conf_data.set10('HAVE_UINT32_T', 1) +conf_data.set10('HAVE_UINT16_T', 1) +conf_data.set10('HAVE_VARIADIC_MACROS', 1) + +#AC_FUNC_MEMCMP +#AC_FUNC_MMAP + +conf_data.set10('HAVE_MMAP', 1) + +if compiler.has_function('strftime', prefix: '#include ') + conf_data.set10('HAVE_STRFTIME', 1) +endif + +if compiler.has_function('strptime', prefix: '#include ', args: '-D_XOPEN_SOURCE') + conf_data.set10('HAVE_STRPTIME', 1) +endif + +if compiler.has_function('atoll', prefix : '#include ') + conf_data.set10('HAVE_ATOLL', 1) +endif + +if compiler.has_function('gethostbyaddr', prefix : '#include ') + conf_data.set10('HAVE_GETHOSTBYADDR', 1) +endif + +if compiler.has_function('herror', prefix : '#include ') + conf_data.set10('HAVE_HERROR', 1) +endif + +if compiler.has_function('strerror', prefix : '#include ') + conf_data.set10('HAVE_STRERROR', 1) +endif + +if compiler.has_function('popen', prefix : '#include ') + conf_data.set10('HAVE_POPEN', 1) +endif + +if compiler.has_function('uname', prefix : '#include ') + conf_data.set10('HAVE_UNAME', 1) +endif + +if compiler.has_function('access', prefix : '#include ') + conf_data.set10('HAVE_ACCESS', 1) +endif + +if compiler.has_function('chmod', prefix : '#include ') + conf_data.set10('HAVE_CHMOD', 1) +endif + +if compiler.has_function('alarm', prefix : '#include ') + conf_data.set10('HAVE_ALARM', 1) +endif + +if compiler.has_function('timegm', prefix : '#include ') + conf_data.set10('HAVE_TIMEGM', 1) +endif + +if compiler.has_function('mremap', prefix : '#include ', args: '-D_GNU_SOURCE') + conf_data.set10('HAVE_MREMAP', 1) +endif + +if compiler.has_function('strcasecmp', prefix : '#include ') + conf_data.set10('HAVE_STRCASECMP', 1) +endif + +if compiler.has_function('strncasecmp', prefix : '#include ') + conf_data.set10('HAVE_STRNCASECMP', 1) +endif + +if compiler.has_function('strcasestr', prefix : '#include ', args: '-D_GNU_SOURCE') + conf_data.set10('HAVE_STRCASESTR', 1) +endif + +if compiler.has_function('strstr', prefix : '#include ') + conf_data.set10('HAVE_STRSTR', 1) +endif + +if compiler.has_function('strchr', prefix : '#include ') + conf_data.set10('HAVE_STRCHR', 1) +endif + +if compiler.has_function('strrchr', prefix : '#include ') + conf_data.set10('HAVE_STRRCHR', 1) +endif + +if compiler.has_function('memmove', prefix : '#include ') + conf_data.set10('HAVE_MEMMOVE', 1) +endif + +if compiler.has_function('bcopy', prefix : '#include ') + conf_data.set10('HAVE_BCOPY', 1) +endif + +if compiler.has_function('stpcpy', prefix : '#include ') + conf_data.set10('HAVE_STPCPY', 1) +endif + +if compiler.has_function('strdup', prefix : '#include ') + conf_data.set10('HAVE_STRDUP', 1) +endif + +if compiler.has_function('index', prefix : '#include ') + conf_data.set10('HAVE_INDEX', 1) +endif + +if compiler.has_function('isdigit', prefix : '#include ') + conf_data.set10('HAVE_ISDIGIT', 1) +endif + +if compiler.has_function('mempcpy', prefix : '#include ') + conf_data.set10('HAVE_MEMPCPY', 1) +endif + +if compiler.has_function('memrchr', prefix : '#include ', args: '-D_GNU_SOURCE') + conf_data.set10('HAVE_MEMRCHR', 1) +endif + +if compiler.has_function('snprintf', prefix : '#include ') + conf_data.set10('HAVE_SNPRINTF', 1) +endif + +if compiler.has_function('vsnprintf', prefix : '#include ') + conf_data.set10('HAVE_VSNPRINTF', 1) +endif + +if compiler.has_function('asprintf', prefix : '#include ', args: '-D_GNU_SOURCE') + conf_data.set10('HAVE_ASPRINTF', 1) +endif + +if compiler.has_function('vasprintf', prefix : '#include ', args: '-D_GNU_SOURCE') + conf_data.set10('HAVE_VASPRINTF', 1) +endif + +if compiler.has_function('getifaddrs', prefix : '#include ') + conf_data.set10('HAVE_GETIFADDRS', 1) +endif + +if compiler.has_function('getpwnam', prefix : '#include ') + conf_data.set10('HAVE_GETPWNAM', 1) +endif + +if compiler.has_function('inet_pton', prefix : '#include ') + conf_data.set10('HAVE_INET_PTON', 1) +endif + +if compiler.has_function('inet_ntop', prefix : '#include ') + conf_data.set10('HAVE_INET_NTOP', 1) +endif + +if compiler.has_function('fflush', prefix : '#include ') + conf_data.set10('HAVE_FFLUSH', 1) +endif + +if compiler.has_function('fsync', prefix : '#include ') + conf_data.set10('HAVE_FSYNC', 1) +endif + +if compiler.has_function('fseeko', prefix : '#include ') + conf_data.set10('HAVE_FSEEKO', 1) +endif + +if compiler.has_function('ftello', prefix : '#include ') + conf_data.set10('HAVE_FTELLO', 1) +endif + +if compiler.has_function('sigaction', prefix : '#include ') + conf_data.set10('HAVE_SIGACTION', 1) +endif + +if compiler.has_function('gettimeofday', prefix : '#include ') + conf_data.set10('HAVE_GETTIMEOFDAY', 1) +endif + +if compiler.has_function('clock_gettime', prefix : '#include ') + conf_data.set10('HAVE_CLOCK_GETTIME', 1) +endif + +if compiler.has_function('setitimer', prefix : '#include ') + conf_data.set10('HAVE_SETITIMER', 1) +endif + +if compiler.has_function('setenv', prefix : '#include ') + conf_data.set10('HAVE_SETENV', 1) + conf_data.set('HAVE_SETENV_OR_PUTENV', true) +endif + +if compiler.has_function('putenv', prefix : '#include ') + conf_data.set10('HAVE_PUTENV', 1) + conf_data.set('HAVE_SETENV_OR_PUTENV', true) +endif + +if compiler.has_function('unsetenv', prefix : '#include ') + conf_data.set10('HAVE_UNSETENV', 1) +endif + +if compiler.has_function('getuid', prefix : '#include ') + conf_data.set10('HAVE_GETUID', 1) +endif + +if compiler.has_function('geteuid', prefix : '#include ') + conf_data.set10('HAVE_GETEUID', 1) +endif + +if compiler.has_function('wcwidth', prefix : '#include ', args: '-D_XOPEN_SOURCE') + conf_data.set10('HAVE_WCWIDTH', 1) +endif + +if compiler.has_function('fork', prefix : '#include ') + conf_data.set10('HAVE_FORK', 1) +endif + +if compiler.has_function('getpid', prefix : '#include ') + conf_data.set10('HAVE_GETPID', 1) +endif + +if compiler.has_function('setpgid', prefix : '#include ') + conf_data.set10('HAVE_SETPGID', 1) +endif + +if compiler.has_function('getpgid', prefix : '#include ') + conf_data.set10('HAVE_GETPGID', 1) +endif + +if compiler.has_function('setpgrp', prefix : '#include ') + conf_data.set10('HAVE_SETPGRP', 1) +endif + +if compiler.has_function('getpgrp', prefix : '#include ') + conf_data.set10('HAVE_GETPGRP', 1) +endif + +if compiler.has_function('raise', prefix : '#include ') + conf_data.set10('HAVE_RAISE', 1) +endif + +if compiler.has_function('kill', prefix : '#include ') + conf_data.set10('HAVE_KILL', 1) +endif + +if compiler.has_function('fpathconf', prefix : '#include ') + conf_data.set10('HAVE_FPATHCONF', 1) +endif + +if compiler.has_function('poll', prefix : '#include ') + conf_data.set10('HAVE_POLL', 1) +endif + +if compiler.has_function('event_base_set', prefix: eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_BASE_SET', 1) +endif + +if compiler.has_function('event_get_version', prefix: eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_GET_VERSION', 1) +endif + +if compiler.has_function('event_get_method', prefix : eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_GET_METHD', 1) +endif + +if compiler.has_function('event_base_free', prefix : eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_BASE_FREE', 1) +endif + +if compiler.has_function('event_base_new', prefix : eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_BASE_NEW', 1) +endif + +if compiler.has_function('event_reinit', prefix : eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_REINIT', 1) +endif + +if compiler.has_function('event_base_get_method', prefix : eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_BASE_GET_METHOD', 1) +endif + +if compiler.has_function('event_reinit', prefix : eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_REINIT', 1) +endif + +if compiler.has_function('event_config_set_flag', prefix : eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_CONFIG_SET_FLAG', 1) +endif + +if compiler.has_function('event_get_struct_event_size', prefix : eh, dependencies: eventdeps) + conf_data.set('HAVE_EVENT_GET_STRUCT_EVENT_SIZE', 1) +endif + +if compiler.has_function('RAND_bytes', prefix: '#include ', dependencies: ssldeps) + conf_data.set('HAVE_RAND_BYTES', 1) +endif + +if compiler.has_function('ASN1_STRING_get0_data', prefix: '#include ', dependencies: ssldeps) + conf_data.set('HAVE_ASN1_STRING_GET0_DATA', 1) +endif + +if compiler.has_function('nl_langinfo', prefix: '#include ') + conf_data.set('HAVE_LANGINFO_CODESET', 1) +endif + +if compiler.has_function('iconv', prefix: '#include ') + conf_data.set('HAVE_ICONV', 1) +endif + +if compiler.has_function('alloca', prefix: '#include ') + conf_data.set('HAVE_ALLOCA', 1) +endif + +if compiler.has_function('rb_errinfo', prefix: '#include ', dependencies: rubydeps) + conf_data.set('HAVE_RB_ERRINFO', 1) +endif + +if compiler.has_function('gnutls_priority_set_direct', prefix: '#include ', dependencies: gnutlsdeps) + conf_data.set('HAVE_GNUTLS_PRIORITY_SET_DIRECT', 1) +endif + +if compiler.has_function('gnutls_certificate_set_x509_system_trust', prefix: '#include ', dependencies: gnutlsdeps) + conf_data.set('HAVE_GNUTLS_CERTIFICATE_SET_X509_SYSTEM_TRUST', 1) +endif + +conf_data.set('ICONV_CONST', true) + +conf_data.set('CONFDIR', get_option('prefix') / get_option('sysconfdir')/'elinks') +conf_data.set('LIBDIR', get_option('prefix') / 'lib') +conf_data.set('LOCALEDIR', get_option('prefix') / 'share/locale') + +conf_data.set('HAVE_SA_STORAGE', true) + +conf_data.set('SIZEOF_CHAR', compiler.sizeof('char')) +conf_data.set('SIZEOF_SHORT', compiler.sizeof('short')) +conf_data.set('SIZEOF_INT', compiler.sizeof('int')) +conf_data.set('SIZEOF_LONG', compiler.sizeof('long')) +conf_data.set('SIZEOF_LONG_LONG', compiler.sizeof('long long')) +conf_data.set('SIZEOF_OFF_T', compiler.sizeof('off_t')) + + +#AC_CHECK_FUNCS([cygwin_conv_to_full_win32_path]) + +#CONFIG_BITTORRENT', true) +#CONFIG_FINGER', false) +#CONFIG_FSP', false) +#CONFIG_FTP', true) +#CONFIG_GOPHER', true) +#CONFIG_NNTP', false) +#CONFIG_SMB', false) +#CONFIG_URI_REWRITE', true) +#CONFIG_CGI', true) +#CONFIG_GSSAPI', false) +#CONFIG_DATA', true) +#CONFIG_MOUSE', true) +#CONFIG_TERMINFO', false) +#CONFIG_SMALL', false) +#CONFIG_DEBUG', false) +#CONFIG_OWN_LIBC', false) +conf_data.set('CONFIG_GNUTLS_OPENSSL_COMPAT', false) +#CONFIG_OPENSSL', true) +#CONFIG_MARKS', true) + +configure_file(input : 'config2.h.in', + output : 'config.h', + configuration : conf_data) + +subdir('src') diff --git a/meson_options.txt b/meson_options.txt new file mode 100644 index 00000000..e0e6ec6f --- /dev/null +++ b/meson_options.txt @@ -0,0 +1,63 @@ +option('largefile', type: 'boolean', value: true, description: 'support for large files') +option('bookmarks', type: 'boolean', value: true, description: 'bookmark support') +option('xbel', type: 'boolean', value: true, description: 'XBEL bookmark support (requires expat)') +option('sm-scripting', type: 'boolean', value: true, description: 'ECMAScript browser scripting (requires Spidermonkey)') +option('nls', type: 'boolean', value: true, description: 'Native Language Support') +option('cookies', type: 'boolean', value: true, description: 'cookie support') +option('formhist', type: 'boolean', value: true, description: 'form history support') +option('globhist', type: 'boolean', value: true, description: 'global history support') +option('mailcap', type: 'boolean', value: true, description: 'mailcap support') +option('mimetypes', type: 'boolean', value: true, description: 'mimetypes files support') +option('ipv6', type: 'boolean', value: true, description: 'IPv6 support') +option('bittorrent', type: 'boolean', value: false, description: 'BitTorrent protocol support') +option('data', type: 'boolean', value: true, description: 'data protocol support') +option('uri-rewrite', type: 'boolean', value: true, description: 'URI rewrite support') +option('cgi', type: 'boolean', value: false, description: 'local CGI support') +option('finger', type: 'boolean', value: false, description: 'finger protocol support') +option('fsp', type: 'boolean', value: false, description: 'FSP protocol support') +option('ftp', type: 'boolean', value: true, description: 'ftp protocol support') +option('gopher', type: 'boolean', value: false, description: 'gopher protocol support') +option('nntp', type: 'boolean', value: false, description: 'nntp protocol support') +option('smb', type: 'boolean', value: false, description: 'Samba protocol support') +option('mouse', type: 'boolean', value: true, description: 'mouse support') +option('sysmouse', type: 'boolean', value: false, description: 'BSD sysmouse support') +option('88-colors', type: 'boolean', value: false, description: '88 color support') +option('256-colors', type: 'boolean', value: false, description: '256 color support') +option('true-color', type: 'boolean', value: false, description: 'true color support') +option('exmode', type: 'boolean', value: false, description: 'exmode (CLI) interface') +option('leds', type: 'boolean', value: true, description: 'LEDs support') +option('marks', type: 'boolean', value: true, description: 'document marks support') +option('css', type: 'boolean', value: true, description: 'Cascading Style Sheet support') +option('html-highlight', type: 'boolean', value: false, description: 'HTML highlighting using DOM engine') +option('backtrace', type: 'boolean', value: true, description: 'backtrace support') +option('no-root', type: 'boolean', value: false, description: 'prevention of usage by root') +option('withdebug', type: 'boolean', value: false, description: 'leak debug and internal error checking') +option('fastmem', type: 'boolean', value: false, description: 'direct use of system allocation functions, not usable with debug enabled') +option('own-libc', type: 'boolean', value: false, description: 'force use of internal functions instead of those of system libc') +option('small', type: 'boolean', value: false, description: 'reduce binary size as far as possible (but see the bottom of doc/small.txt!)') +option('utf-8', type: 'boolean', value: true, description: 'UTF-8 support') +option('combining', type: 'boolean', value: false, description: 'support Unicode combining characters (experimental)') + +option('xterm', type: 'boolean', value: false, description: 'how to invoke the X terminal emulator') +option('gpm', type: 'boolean', value: true, description: 'gpm (mouse) support') +option('terminfo', type: 'boolean', value: false, description: 'terminfo support') +option('zlib', type: 'boolean', value: true, description: 'zlib support') +option('bzlib', type: 'boolean', value: true, description: 'bzip2 support') +option('brotli', type: 'boolean', value: false, description: 'brotli support') +option('zstd', type: 'boolean', value: false, description: 'zstd support') +option('idn', type: 'boolean', value: true, description: 'international domain names support') +option('lzma', type: 'boolean', value: false, description: 'lzma encoding support') +option('gssapi', type: 'boolean', value: false, description: 'GSSAPI support') +option('spidermonkey', type: 'boolean', value: true, description: 'SpiderMonkey Mozilla JavaScript engine support') +option('guile', type: 'boolean', value: false, description: 'Guile support') +option('perl', type: 'boolean', value: false, description: 'Perl5 support') +option('python', type: 'boolean', value: false, description: 'Python3 support') +option('luapkg', type: 'string', value:'', description: 'Lua version') +option('tre', type: 'boolean', value: true, description: 'TRE regex search support') +option('ruby', type: 'boolean', value: false, description: 'Ruby support') +option('gnutls', type: 'boolean', value: false, description: 'GNUTLS SSL support') +option('openssl', type: 'boolean', value: true, description: 'OpenSSL support') +option('libev', type: 'boolean', value: false, description: 'compile with libev (libevent compatibility mode)') +option('libevent', type: 'boolean', value: false, description: 'compile with libevent. Note that libev has precedence') +option('x', type: 'boolean', value: false, description: 'use the X Window System') +option('libdom', type: 'boolean', value: false, description: 'libdom') diff --git a/src/bfu/meson.build b/src/bfu/meson.build new file mode 100644 index 00000000..24025bdf --- /dev/null +++ b/src/bfu/meson.build @@ -0,0 +1,5 @@ +srcs += files('button.c', 'checkbox.c', 'dialog.c', 'group.c', 'hierbox.c', 'hotkey.c', 'inpfield.c', 'inphist.c', 'listbox.c', + 'listmenu.c', 'menu.c', 'msgbox.c', 'style.c', 'text.c', 'widget.c') +if conf_data.get('CONFIG_LEDS') + srcs += files('leds.c') +endif diff --git a/src/bookmarks/backend/meson.build b/src/bookmarks/backend/meson.build new file mode 100644 index 00000000..88840b52 --- /dev/null +++ b/src/bookmarks/backend/meson.build @@ -0,0 +1,5 @@ +if conf_data.get('CONFIG_XBEL_BOOKMARKS') + srcs += files('xbel.c') +endif +srcs += files('common.c', 'default.c') + diff --git a/src/bookmarks/meson.build b/src/bookmarks/meson.build new file mode 100644 index 00000000..55fed0be --- /dev/null +++ b/src/bookmarks/meson.build @@ -0,0 +1,2 @@ +subdir('backend') +srcs += files('bookmarks.c', 'dialogs.c') diff --git a/src/cache/meson.build b/src/cache/meson.build new file mode 100644 index 00000000..4da62631 --- /dev/null +++ b/src/cache/meson.build @@ -0,0 +1 @@ +srcs += files('cache.c', 'dialogs.c') diff --git a/src/config/meson.build b/src/config/meson.build new file mode 100644 index 00000000..cdc173b6 --- /dev/null +++ b/src/config/meson.build @@ -0,0 +1 @@ +srcs += files('cmdline.c', 'conf.c', 'dialogs.c', 'domain.c', 'home.c', 'kbdbind.c', 'options.c', 'opttypes.c', 'timer.c', 'urlhist.c') diff --git a/src/cookies/dialogs.c b/src/cookies/dialogs.c index 5590f6d0..093ac044 100644 --- a/src/cookies/dialogs.c +++ b/src/cookies/dialogs.c @@ -1,4 +1,7 @@ /* Cookie-related dialogs */ +#ifndef _XOPEN_SOURCE +#define _XOPEN_SOURCE +#endif #ifdef HAVE_CONFIG_H #include "config.h" diff --git a/src/cookies/meson.build b/src/cookies/meson.build new file mode 100644 index 00000000..1c7341b4 --- /dev/null +++ b/src/cookies/meson.build @@ -0,0 +1,23 @@ +srcs += files('cookies.c', 'dialogs.c', 'path.c', 'parser.c') +#PROG = parsetst +# +#TEST_PROGS = \ +# cookies-t$(EXEEXT) + +#TESTDEPS = path.o + + +#PARSETSTDEPS = \ +# $(top_builddir)/src/util/error.o \ +# $(top_builddir)/src/util/string.o + +#ifdef CONFIG_DEBUG +#PARSETSTDEPS += $(top_builddir)/src/util/memdebug.o +#endif + +#parsetst: $(PARSETSTDEPS) parser.o parsetst.o +# $(call cmd,link) +# +#CLEAN += parsetst.o +# +#include $(top_srcdir)/Makefile.lib diff --git a/src/dialogs/meson.build b/src/dialogs/meson.build new file mode 100644 index 00000000..59ff3e3f --- /dev/null +++ b/src/dialogs/meson.build @@ -0,0 +1,4 @@ +if conf_data.get('CONFIG_EXMODE') + srcs += files('exmode.c') +endif +srcs += files('document.c', 'download.c', 'edit.c', 'info.c', 'menu.c', 'options.c', 'progress.c', 'status.c') diff --git a/src/document/css/meson.build b/src/document/css/meson.build new file mode 100644 index 00000000..7fb1519f --- /dev/null +++ b/src/document/css/meson.build @@ -0,0 +1 @@ +srcs += files('apply.c', 'css.c', 'parser.c', 'property.c', 'scanner.c', 'stylesheet.c', 'value.c') diff --git a/src/document/dom/meson.build b/src/document/dom/meson.build new file mode 100644 index 00000000..50c1618b --- /dev/null +++ b/src/document/dom/meson.build @@ -0,0 +1 @@ +srcs += files('renderer.c', 'rss.c', 'source.c', 'util.c') diff --git a/src/document/html/meson.build b/src/document/html/meson.build new file mode 100644 index 00000000..53093012 --- /dev/null +++ b/src/document/html/meson.build @@ -0,0 +1,3 @@ +subdir('parser') +#test +srcs += files('frames.c', 'parse-meta-refresh.c', 'parser.c', 'renderer.c', 'tables.c') diff --git a/src/document/html/parser/meson.build b/src/document/html/parser/meson.build new file mode 100644 index 00000000..e367b2c9 --- /dev/null +++ b/src/document/html/parser/meson.build @@ -0,0 +1 @@ +srcs += files('forms.c', 'general.c', 'link.c', 'parse.c', 'stack.c', 'table.c') diff --git a/src/document/libdom/meson.build b/src/document/libdom/meson.build new file mode 100644 index 00000000..c9768007 --- /dev/null +++ b/src/document/libdom/meson.build @@ -0,0 +1,2 @@ +#INCLUDES += $(LIBDOM_CFLAGS) +srcs += files('renderer.c') diff --git a/src/document/meson.build b/src/document/meson.build new file mode 100644 index 00000000..65d29271 --- /dev/null +++ b/src/document/meson.build @@ -0,0 +1,12 @@ +if conf_data.get('CONFIG_CSS') == 1 + subdir('css') +endif +if conf_data.get('CONFIG_DOM') + subdir('dom') +endif +if conf_data.get('CONFIG_LIBDOM') + subdir('libdom') +endif +subdir('html') +subdir('plain') +srcs += files('docdata.c', 'document.c', 'format.c', 'forms.c', 'options.c', 'refresh.c', 'renderer.c') diff --git a/src/document/plain/meson.build b/src/document/plain/meson.build new file mode 100644 index 00000000..6a2e1242 --- /dev/null +++ b/src/document/plain/meson.build @@ -0,0 +1 @@ +srcs += files('renderer.c') diff --git a/src/dom/css/meson.build b/src/dom/css/meson.build new file mode 100644 index 00000000..06902e36 --- /dev/null +++ b/src/dom/css/meson.build @@ -0,0 +1 @@ +srcs += files('scanner.c') diff --git a/src/dom/meson.build b/src/dom/meson.build new file mode 100644 index 00000000..e9d5ff1f --- /dev/null +++ b/src/dom/meson.build @@ -0,0 +1,5 @@ +#SUBDIRS = css sgml test +subdir('css') +subdir('sgml') +srcs += files('configuration.c', 'node.c', 'select.c', 'stack.c', 'scanner.c') +#SUBDIRS-$(CONFIG_DEBUG) += test diff --git a/src/dom/sgml/docbook/meson.build b/src/dom/sgml/docbook/meson.build new file mode 100644 index 00000000..b41ce85a --- /dev/null +++ b/src/dom/sgml/docbook/meson.build @@ -0,0 +1 @@ +srcs += files('docbook.c') diff --git a/src/dom/sgml/html/meson.build b/src/dom/sgml/html/meson.build new file mode 100644 index 00000000..9343a266 --- /dev/null +++ b/src/dom/sgml/html/meson.build @@ -0,0 +1 @@ +srcs += files('html.c') diff --git a/src/dom/sgml/meson.build b/src/dom/sgml/meson.build new file mode 100644 index 00000000..7d289dee --- /dev/null +++ b/src/dom/sgml/meson.build @@ -0,0 +1,5 @@ +subdir('docbook') +subdir('html') +subdir('rss') +subdir('xbel') +srcs += files('dump.c', 'parser.c', 'scanner.c', 'sgml.c') diff --git a/src/dom/sgml/rss/meson.build b/src/dom/sgml/rss/meson.build new file mode 100644 index 00000000..565948cf --- /dev/null +++ b/src/dom/sgml/rss/meson.build @@ -0,0 +1 @@ +srcs += files('rss.c') diff --git a/src/dom/sgml/xbel/meson.build b/src/dom/sgml/xbel/meson.build new file mode 100644 index 00000000..9aab64c9 --- /dev/null +++ b/src/dom/sgml/xbel/meson.build @@ -0,0 +1 @@ +srcs += files('xbel.c') diff --git a/src/ecmascript/meson.build b/src/ecmascript/meson.build new file mode 100644 index 00000000..8b9d01cd --- /dev/null +++ b/src/ecmascript/meson.build @@ -0,0 +1,19 @@ +#INCLUDES += $(SPIDERMONKEY_CFLAGS) +if conf_data.get('CONFIG_ECMASCRIPT_SMJS') + subdir('spidermonkey') + srcs += files('spidermonkey.c') +endif + +if conf_data.get('CONFIG_ECMASCRIPT_SMJS') + CONFIG_ANY_SPIDERMONKEY = true +elif conf_data.get('CONFIG_SCRIPTING_SPIDERMONKEY') + CONFIG_ANY_SPIDERMONKEY = true +else + CONFIG_ANY_SPIDERMONKEY = false +endif + +if CONFIG_ANY_SPIDERMONKEY + srcs += files('spidermonkey-shared.c') +endif + +srcs += files('ecmascript.c') diff --git a/src/ecmascript/spidermonkey/meson.build b/src/ecmascript/spidermonkey/meson.build new file mode 100644 index 00000000..2eaecc44 --- /dev/null +++ b/src/ecmascript/spidermonkey/meson.build @@ -0,0 +1,6 @@ +#INCLUDES += $(SPIDERMONKEY_CFLAGS) + +if conf_data.get('CONFIG_ECMASCRIPT_SMJS_HEARTBEAT') + srcs += files('heartbeat.c') +endif +srcs += files('document.c', 'form.c', 'location.c', 'navigator.c', 'unibar.c', 'window.c') diff --git a/src/encoding/bzip2.c b/src/encoding/bzip2.c index 8fcfbd7b..9de17cc5 100644 --- a/src/encoding/bzip2.c +++ b/src/encoding/bzip2.c @@ -9,9 +9,9 @@ #ifdef HAVE_UNISTD_H #include #endif -#ifdef HAVE_BZLIB_H + #include /* Everything needs this after stdio.h */ -#endif + #include #include "elinks.h" diff --git a/src/encoding/deflate.c b/src/encoding/deflate.c index 975c2a87..7969752c 100644 --- a/src/encoding/deflate.c +++ b/src/encoding/deflate.c @@ -9,9 +9,7 @@ #ifdef HAVE_UNISTD_H #include #endif -#ifdef HAVE_ZLIB_H #include -#endif #include #include "elinks.h" diff --git a/src/encoding/meson.build b/src/encoding/meson.build new file mode 100644 index 00000000..415600f1 --- /dev/null +++ b/src/encoding/meson.build @@ -0,0 +1,17 @@ +if conf_data.get('CONFIG_BROTLI') + srcs += files('brotli.c') +endif +if conf_data.get('CONFIG_BZIP2') + srcs += files('bzip2.c') +endif +if conf_data.get('CONFIG_GZIP') + srcs += files('deflate.c') +endif +if conf_data.get('CONFIG_LZMA') + srcs += files('lzma.c') +endif +if conf_data.get('CONFIG_ZSTD') + srcs += files('zstd.c') +endif + +srcs += files('encoding.c') diff --git a/src/encoding/zstd.c b/src/encoding/zstd.c index 5db6dcdf..665f8c83 100644 --- a/src/encoding/zstd.c +++ b/src/encoding/zstd.c @@ -10,9 +10,7 @@ #ifdef HAVE_UNISTD_H #include #endif -#ifdef HAVE_ZSTD_H #include -#endif #include #include "elinks.h" diff --git a/src/formhist/meson.build b/src/formhist/meson.build new file mode 100644 index 00000000..aef1e0e9 --- /dev/null +++ b/src/formhist/meson.build @@ -0,0 +1 @@ +srcs += files('formhist.c', 'dialogs.c') diff --git a/src/globhist/meson.build b/src/globhist/meson.build new file mode 100644 index 00000000..b363736f --- /dev/null +++ b/src/globhist/meson.build @@ -0,0 +1 @@ +srcs += files('globhist.c', 'dialogs.c') diff --git a/src/intl/gettext/meson.build b/src/intl/gettext/meson.build new file mode 100644 index 00000000..1ffd2e11 --- /dev/null +++ b/src/intl/gettext/meson.build @@ -0,0 +1,82 @@ +#localedir = $(datadir)/locale +#builddir = $(top_builddir)/src/intl/gettext +#CFLAGS += $(GETTEXT_CFLAGS) + +srcs += files('bindtextdom.c', 'dcgettext.c', 'dcigettext.c', 'dcngettext.c', 'dgettext.c', 'dngettext.c', 'explodename.c', + 'finddomain.c', 'gettext.c', 'intl-compat.c', 'l10nflist.c', 'libintl.c', 'loadmsgcat.c', 'localcharset.c', + 'localealias.c', 'ngettext.c', 'plural.c', 'textdomain.c') + + +# $(builddir)/charset.alias: $(srcdir)config.charset +##$(builddir)/charset.alias: $(srcdir)config.charset +## $(SHELL) $(srcdir)config.charset '$(host)' > $@.new +## mv $@.new $@ + +# FIXME: Building plural.c from plural.y on the fly doesn't work + +##YACC = $(INTLBISON) -y -d +##YFLAGS = --name-prefix=gettext__ +##plural.c: plural.y +##.SUFFIXES: .y .c +##.y.c: +## $(YACC) $(YFLAGS) --output $@ $< +## rm -f $*.h + +##install-local: $(builddir)/charset.alias all +## @if test '$(CONFIG_NLS)' = yes; then \ +## temp=$(DESTDIR)$(libdir)/t-charset.alias; \ +## dest=$(DESTDIR)$(libdir)/charset.alias; \ +## if test -f $(DESTDIR)$(libdir)/charset.alias; then \ +## orig=$(DESTDIR)$(libdir)/charset.alias; \ +## sed -f ref-add.sed $$orig > $$temp; \ +## $(INSTALL_DATA) $$temp $$dest; \ +## rm -f $$temp; \ +## else \ +## if test $(GLIBC21) = no; then \ +## $(MKINSTALLDIRS) $(DESTDIR)$(libdir); \ +## orig=charset.alias; \ +## sed -f ref-add.sed $$orig > $$temp; \ +## $(INSTALL_DATA) $$temp $$dest; \ +## rm -f $$temp; \ +## fi; \ +## fi; \ +## $(MKINSTALLDIRS) $(DESTDIR)$(localedir); \ +## test -f $(DESTDIR)$(localedir)/locale.alias \ +## && orig=$(DESTDIR)$(localedir)/locale.alias \ +## || orig=$(srcdir)locale.alias; \ +## temp=$(DESTDIR)$(localedir)/t-locale.alias; \ +## dest=$(DESTDIR)$(localedir)/locale.alias; \ +## sed -f ref-add.sed $$orig > $$temp; \ +## $(INSTALL_DATA) $$temp $$dest; \ +## rm -f $$temp; \ +## else \ +## : ; \ +## fi + +##uninstall-local: +## @if test '$(CONFIG_NLS)' = yes; then \ +## if test -f $(DESTDIR)$(libdir)/charset.alias; then \ +## temp=$(DESTDIR)$(libdir)/t-charset.alias; \ +## dest=$(DESTDIR)$(libdir)/charset.alias; \ +## sed -f ref-del.sed $$dest > $$temp; \ +## if grep '^# Packages using this file: $$' $$temp > /dev/null; then \ +## rm -f $$dest; \ +## else \ +## $(INSTALL_DATA) $$temp $$dest; \ +## fi; \ +## rm -f $$temp; \ +## fi; \ +## if test -f $(DESTDIR)$(localedir)/locale.alias; then \ +## temp=$(DESTDIR)$(localedir)/t-locale.alias; \ +## dest=$(DESTDIR)$(localedir)/locale.alias; \ +## sed -f ref-del.sed $$dest > $$temp; \ +## if grep '^# Packages using this file: $$' $$temp > /dev/null; then \ +## rm -f $$dest; \ +## else \ +## $(INSTALL_DATA) $$temp $$dest; \ +## fi; \ +## rm -f $$temp; \ +## fi; \ +## else \ +## : ; \ +## fi diff --git a/src/intl/meson.build b/src/intl/meson.build new file mode 100644 index 00000000..d1dd250b --- /dev/null +++ b/src/intl/meson.build @@ -0,0 +1,8 @@ +if conf_data.get('CONFIG_NLS') == 1 + subdir('gettext') +endif +srcs += files('charsets.c') + +if conf_data.get('CONFIG_UTF8') + srcs += files('width.c') +endif diff --git a/src/main/meson.build b/src/main/meson.build new file mode 100644 index 00000000..4c5e8bee --- /dev/null +++ b/src/main/meson.build @@ -0,0 +1,4 @@ +if conf_data.get('CONFIG_INTERLINK') + srcs += files('interlink.c') +endif +srcs += files('event.c', 'main.c', 'module.c', 'select.c', 'timer.c', 'version.c') diff --git a/src/meson.build b/src/meson.build new file mode 100644 index 00000000..2ea78592 --- /dev/null +++ b/src/meson.build @@ -0,0 +1,91 @@ +if conf_data.get('CONFIG_BOOKMARKS') + subdir('bookmarks') +endif +if conf_data.get('CONFIG_COOKIES') + subdir('cookies') +endif +if conf_data.get('CONFIG_DOM') + subdir('dom') +endif +if conf_data.get('CONFIG_ECMASCRIPT') + subdir('ecmascript') +endif +if conf_data.get('CONFIG_FORMHIST') + subdir('formhist') +endif +if conf_data.get('CONFIG_GLOBHIST') + subdir('globhist') +endif +if conf_data.get('CONFIG_SCRIPTING') + subdir('scripting') +endif + +subdir('bfu') +subdir('cache') +subdir('config') +subdir('dialogs') +subdir('document') +subdir('encoding') +subdir('intl') +subdir('main') +subdir('mime') +subdir('network') +subdir('osdep') +subdir('protocol') +subdir('session') +subdir('terminal') +subdir('util') +subdir('viewer') + +# Get the GIT HEAD ID if possible +##ifdef GIT +##GITDESC = $(shell $(GIT) --git-dir=$(top_srcdir)/.git rev-parse HEAD 2>/dev/null) +##WTDIRTY = $(shell cd "$(top_srcdir)" && $(GIT) diff-index HEAD 2>/dev/null) +##BUILD_ID = $(subst elinks-,,$(GITDESC))$(if $(WTDIRTY),-dirty) +##endif +##INCLUDES += -DBUILD_ID="\"$(BUILD_ID)\"" + +srcs += files('vernum.c') + +incs = include_directories('..', '.', '/usr/include/luajit-2.0') + +extra_args = ['-DHAVE_CONFIG_H', '-fno-strict-aliasing', '-Wno-pointer-sign', '-Wno-builtin-declaration-mismatch', '-Wno-address'] + + +##deps= [zdeps, ltredeps, eventdeps, ssldeps, brotlideps, zstddeps, idndeps, x11deps, bz2deps, mozjsdeps, luadeps, xmldeps, libgpm, domdeps] + +#libs = ['-ltre', '-Wl,--as-needed', '-Wl,--no-copy-dt-needed-entries', +# '-Wl,-z,relro', '-Wl,-z,combreloc', '-lX11', '-levent', '-lssl', '-lcrypto', '-ldl', '-lgpm', '-lz', '-lbz2', +# '-lbrotlidec', '-lzstd', '-lidn', '-lexpat', '-lmozjs-17.0'] + +elinks = executable( + 'elinks', srcs, + include_directories: incs, + dependencies: deps, + c_args : extra_args + ) + +##elinks$(EXEEXT): $(LIB_O_NAME) vernum.o +## $(call cmd,link) + +# Place the TAGS file in the source directory so that, if the same +# source is built for different configurations in different build +# directories, one doesn't have to remember which of those build +# directories has the most recent TAGS. +##TAGS: +## cd $(firstword $(srcdir) .) \ +## && find . \( -name "*.[ch]" -o -name "*.inc" \) -print \ +## | etags --regex='{c}/\(?:static \)?INIT_LIST_OF([^,]*,[ \t]*\([[:alnum:]_]+\))/\1/' \ +## --regex='{c}/struct_hierbox_browser(\n[ \t]*\([[:alnum:]_]+\),/\1/m' \ +## --regex='{c}/^ACTION_(\([[:alnum:]_]+\),[^,]*,[ \t]*\([[:alnum:]_]+\),/ACT_\1_\2/' \ +## --language=c - + +##tags: +## cd $(firstword $(srcdir) .) \ +## && find . \( -name "*.[ch]" -o -name "*.inc" \) -print \ +## | ctags -L - + +##.PHONY: TAGS tags + +##PROGS = elinks$(EXEEXT) +##CLEAN = vernum.o TAGS tags diff --git a/src/mime/backend/meson.build b/src/mime/backend/meson.build new file mode 100644 index 00000000..a00f3cc3 --- /dev/null +++ b/src/mime/backend/meson.build @@ -0,0 +1,22 @@ +if conf_data.get('CONFIG_MAILCAP') + srcs += files('mailcap.c') +endif +if conf_data.get('CONFIG_MIMETYPES') + srcs += files('mimetypes.c') +endif + +srcs += files('common.c', 'default.c') + +##TEST_PROGS = \ +## mailcap-cache$(EXEEXT) + +# The dependencies are a bit funny here! I don't know why. Just remember to +# make clean before making the test. --jonas +##mailcap-cache.o: $(top_srcdir)/src/mime/backend/mailcap.c +## $(call cmd,compile,-DTEST_MAILCAP) + +##TESTDEPS = \ +## common.o \ +## $(top_builddir)/src/osdep/osdep.o + +##TESTDEPS-$(CONFIG_NLS) += $(top_builddir)/src/intl/gettext/lib.o diff --git a/src/mime/meson.build b/src/mime/meson.build new file mode 100644 index 00000000..becbc168 --- /dev/null +++ b/src/mime/meson.build @@ -0,0 +1,2 @@ +subdir('backend') +srcs += files('dialogs.c', 'mime.c') diff --git a/src/network/meson.build b/src/network/meson.build new file mode 100644 index 00000000..f0a854d4 --- /dev/null +++ b/src/network/meson.build @@ -0,0 +1,4 @@ +if conf_data.get('CONFIG_SSL') + subdir('ssl') +endif +srcs += files('connection.c', 'dns.c', 'progress.c', 'socket.c', 'state.c') diff --git a/src/network/ssl/meson.build b/src/network/ssl/meson.build new file mode 100644 index 00000000..9453506d --- /dev/null +++ b/src/network/ssl/meson.build @@ -0,0 +1,4 @@ +#INCLUDES += $(GNUTLS_CFLAGS) $(OPENSSL_CFLAGS) $(LIBGCRYPT_CFLAGS) + +#SUBDIRS = test +srcs += files('match-hostname.c', 'ssl.c', 'socket.c') diff --git a/src/osdep/beos/meson.build b/src/osdep/beos/meson.build new file mode 100644 index 00000000..75d70091 --- /dev/null +++ b/src/osdep/beos/meson.build @@ -0,0 +1 @@ +srcs += files('beos.c', 'overrides.c') diff --git a/src/osdep/meson.build b/src/osdep/meson.build new file mode 100644 index 00000000..5b7087da --- /dev/null +++ b/src/osdep/meson.build @@ -0,0 +1,19 @@ +#INCLUDES += $(X_CFLAGS) + +if conf_data.get('CONFIG_OS_BEOS') + subdir('beos') +endif +if conf_data.get('CONFIG_OS_OS2') + subdir('os2') +endif +if conf_data.get('CONFIG_OS_RISCOS') + subdir('riscos') +endif +if conf_data.get('CONFIG_OS_UNIX') == 1 + subdir('unix') +endif +if conf_data.get('CONFIG_OS_WIN32') + subdir('win32') +endif + +srcs += files('getifaddrs.c', 'newwin.c', 'osdep.c', 'signals.c', 'stub.c', 'sysname.c') diff --git a/src/osdep/os2/meson.build b/src/osdep/os2/meson.build new file mode 100644 index 00000000..53ec6ccc --- /dev/null +++ b/src/osdep/os2/meson.build @@ -0,0 +1 @@ +srcs += files('os2.c') diff --git a/src/osdep/riscos/meson.build b/src/osdep/riscos/meson.build new file mode 100644 index 00000000..a6d316ae --- /dev/null +++ b/src/osdep/riscos/meson.build @@ -0,0 +1 @@ +srcs += files('riscos.c') diff --git a/src/osdep/unix/meson.build b/src/osdep/unix/meson.build new file mode 100644 index 00000000..c761cea6 --- /dev/null +++ b/src/osdep/unix/meson.build @@ -0,0 +1 @@ +srcs += files('unix.c', 'bsd.c') diff --git a/src/osdep/win32/meson.build b/src/osdep/win32/meson.build new file mode 100644 index 00000000..97b72bf8 --- /dev/null +++ b/src/osdep/win32/meson.build @@ -0,0 +1 @@ +srcs += files('overrides.c', 'vt100.c', 'win32.c') diff --git a/src/protocol/auth/meson.build b/src/protocol/auth/meson.build new file mode 100644 index 00000000..e29faaf2 --- /dev/null +++ b/src/protocol/auth/meson.build @@ -0,0 +1,3 @@ +#INCLUDES += $(GNUTLS_CFLAGS) $(OPENSSL_CFLAGS) + +srcs += files('auth.c', 'dialogs.c', 'digest.c') diff --git a/src/protocol/bittorrent/meson.build b/src/protocol/bittorrent/meson.build new file mode 100644 index 00000000..3a805574 --- /dev/null +++ b/src/protocol/bittorrent/meson.build @@ -0,0 +1,4 @@ +#INCLUDES += $(GNUTLS_CFLAGS) $(OPENSSL_CFLAGS) + +srcs += files('bencoding.c', 'bittorrent.c', 'common.c', 'connection.c', 'dialogs.c', 'peerconnect.c', + 'peerwire.c', 'piececache.c', 'tracker.c') diff --git a/src/protocol/file/meson.build b/src/protocol/file/meson.build new file mode 100644 index 00000000..8fdf0054 --- /dev/null +++ b/src/protocol/file/meson.build @@ -0,0 +1,4 @@ +if conf_data.get('CONFIG_CGI') + srcs += files('cgi.c') +endif +srcs += files('file.c', 'mailcap.c') diff --git a/src/protocol/finger/meson.build b/src/protocol/finger/meson.build new file mode 100644 index 00000000..4c5bdb36 --- /dev/null +++ b/src/protocol/finger/meson.build @@ -0,0 +1 @@ +srcs += files('finger.c') diff --git a/src/protocol/fsp/meson.build b/src/protocol/fsp/meson.build new file mode 100644 index 00000000..d9c60d9f --- /dev/null +++ b/src/protocol/fsp/meson.build @@ -0,0 +1 @@ +srcs += files('fsp.c') diff --git a/src/protocol/ftp/meson.build b/src/protocol/ftp/meson.build new file mode 100644 index 00000000..a1243553 --- /dev/null +++ b/src/protocol/ftp/meson.build @@ -0,0 +1,8 @@ +srcs += files('ftp.c', 'parse.c') + +#TEST_PROGS = \ +# ftp-parser$(EXEEXT) + +#TESTDEPS = \ +# $(top_builddir)/src/protocol/date.o \ +# $(top_builddir)/src/protocol/ftp/parse.o diff --git a/src/protocol/gopher/meson.build b/src/protocol/gopher/meson.build new file mode 100644 index 00000000..a6e1c67e --- /dev/null +++ b/src/protocol/gopher/meson.build @@ -0,0 +1 @@ +srcs += files('gopher.c') diff --git a/src/protocol/http/meson.build b/src/protocol/http/meson.build new file mode 100644 index 00000000..fd75c077 --- /dev/null +++ b/src/protocol/http/meson.build @@ -0,0 +1,4 @@ +if conf_data.get('CONFIG_GSSAPI') + srcs += files('http_negotiate.c') +endif +srcs += files('blacklist.c', 'codes.c', 'http.c', 'post.c') diff --git a/src/protocol/meson.build b/src/protocol/meson.build new file mode 100644 index 00000000..cf433bda --- /dev/null +++ b/src/protocol/meson.build @@ -0,0 +1,32 @@ +if conf_data.get('CONFIG_BITTORRENT') == 1 + subdir('bittorrent') +endif +if conf_data.get('CONFIG_FINGER') + subdir('finger') +endif +if conf_data.get('CONFIG_FSP') + subdir('fsp') +endif +if conf_data.get('CONFIG_FTP') + subdir('ftp') +endif +if conf_data.get('CONFIG_GOPHER') + subdir('gopher') +endif +if conf_data.get('CONFIG_NNTP') + subdir('nntp') +endif +if conf_data.get('CONFIG_SMB') + subdir('smb') +endif +if conf_data.get('CONFIG_URI_REWRITE') + subdir('rewrite') +endif +subdir('auth') +subdir('file') +subdir('http') + +if conf_data.get('CONFIG_DATA') + srcs += files('data.c') +endif +srcs += files('about.c', 'common.c', 'date.c', 'header.c', 'protocol.c', 'proxy.c', 'uri.c', 'user.c') diff --git a/src/protocol/nntp/meson.build b/src/protocol/nntp/meson.build new file mode 100644 index 00000000..75b8e254 --- /dev/null +++ b/src/protocol/nntp/meson.build @@ -0,0 +1 @@ +srcs += files('nntp.c', 'connection.c', 'response.c') diff --git a/src/protocol/rewrite/meson.build b/src/protocol/rewrite/meson.build new file mode 100644 index 00000000..347f5d64 --- /dev/null +++ b/src/protocol/rewrite/meson.build @@ -0,0 +1 @@ +srcs += files('rewrite.c') diff --git a/src/protocol/smb/meson.build b/src/protocol/smb/meson.build new file mode 100644 index 00000000..87b21d50 --- /dev/null +++ b/src/protocol/smb/meson.build @@ -0,0 +1 @@ +srcs += files('smb2.c') diff --git a/src/scripting/guile/meson.build b/src/scripting/guile/meson.build new file mode 100644 index 00000000..5d2854b8 --- /dev/null +++ b/src/scripting/guile/meson.build @@ -0,0 +1,2 @@ +#INCLUDES += $(GUILE_CFLAGS) +srcs += files('guile.c', 'hooks.c', 'core.c') diff --git a/src/scripting/lua/meson.build b/src/scripting/lua/meson.build new file mode 100644 index 00000000..a83fb693 --- /dev/null +++ b/src/scripting/lua/meson.build @@ -0,0 +1,2 @@ +#INCLUDES += $(LUA_CFLAGS) +srcs += files('lua.c', 'hooks.c', 'core.c') diff --git a/src/scripting/meson.build b/src/scripting/meson.build new file mode 100644 index 00000000..36e5b13c --- /dev/null +++ b/src/scripting/meson.build @@ -0,0 +1,19 @@ +if conf_data.get('CONFIG_SCRIPTING_GUILE') + subdir('guile') +endif +if conf_data.get('CONFIG_SCRIPTING_LUA') + subdir('lua') +endif +if conf_data.get('CONFIG_SCRIPTING_PERL') + subdir('perl') +endif +if conf_data.get('CONFIG_SCRIPTING_PYTHON') + subdir('python') +endif +if conf_data.get('CONFIG_SCRIPTING_RUBY') + subdir('ruby') +endif +if conf_data.get('CONFIG_SCRIPTING_SPIDERMONKEY') + subdir('smjs') +endif +srcs += files('scripting.c') diff --git a/src/scripting/perl/meson.build b/src/scripting/perl/meson.build new file mode 100644 index 00000000..61fe456b --- /dev/null +++ b/src/scripting/perl/meson.build @@ -0,0 +1,3 @@ +#INCLUDES += $(PERL_CFLAGS) + +srcs += files('perl.c', 'hooks.c', 'core.c') diff --git a/src/scripting/python/meson.build b/src/scripting/python/meson.build new file mode 100644 index 00000000..d594deee --- /dev/null +++ b/src/scripting/python/meson.build @@ -0,0 +1,3 @@ +#INCLUDES += $(PYTHON_CFLAGS) + +srcs += files('core.c', 'dialogs.c', 'document.c', 'hooks.c', 'keybinding.c', 'load.c', 'menu.c', 'open.c', 'python.c') diff --git a/src/scripting/ruby/meson.build b/src/scripting/ruby/meson.build new file mode 100644 index 00000000..00ad93ef --- /dev/null +++ b/src/scripting/ruby/meson.build @@ -0,0 +1,2 @@ +#INCLUDES += $(RUBY_CFLAGS) +srcs += files('ruby.c', 'hooks.c', 'core.c') diff --git a/src/scripting/smjs/meson.build b/src/scripting/smjs/meson.build new file mode 100644 index 00000000..59cc7c1a --- /dev/null +++ b/src/scripting/smjs/meson.build @@ -0,0 +1,5 @@ +#INCLUDES += $(SPIDERMONKEY_CFLAGS) + +srcs += files('smjs.c', 'core.c', 'global_object.c', 'hooks.c', 'elinks_object.c', 'cache_object.c', + 'view_state_object.c', 'action_object.c', 'bookmarks.c', 'globhist.c', 'keybinding.c', 'load_uri.c', + 'session_object.c', 'terminal_object.c') diff --git a/src/session/meson.build b/src/session/meson.build new file mode 100644 index 00000000..30b97669 --- /dev/null +++ b/src/session/meson.build @@ -0,0 +1 @@ +srcs += files('download.c', 'history.c', 'location.c', 'session.c', 'task.c') diff --git a/src/terminal/meson.build b/src/terminal/meson.build new file mode 100644 index 00000000..093d751d --- /dev/null +++ b/src/terminal/meson.build @@ -0,0 +1,7 @@ +if conf_data.get('CONFIG_MOUSE') + srcs += files('mouse.c') +endif +if conf_data.get('CONFIG_TERMINFO') + srcs += files('terminfo.c') +endif +srcs += files('color.c', 'draw.c', 'event.c', 'hardio.c', 'kbd.c', 'screen.c', 'tab.c', 'terminal.c', 'window.c') diff --git a/src/util/meson.build b/src/util/meson.build new file mode 100644 index 00000000..ccd1c0d3 --- /dev/null +++ b/src/util/meson.build @@ -0,0 +1,25 @@ +#INCLUDES += $(GNUTLS_CFLAGS) $(OPENSSL_CFLAGS) + +if not conf_data.get('CONFIG_SMALL') + srcs += files('fastfind.c') +endif +if conf_data.get('CONFIG_CSS') == 1 + srcs += files('scanner.c') +endif +if conf_data.get('CONFIG_DEBUG') + srcs += files('memdebug.c') +endif +if conf_data.get('CONFIG_DOM') + srcs += files('scanner.c') +endif +if conf_data.get('CONFIG_OWN_LIBC') or (not conf_data.get('CONFIG_GNUTLS_OPENSSL_COMPAT') and not conf_data.get('CONFIG_OPENSSL')) + srcs += files('md5.c') +endif +if conf_data.get('CONFIG_BITTORRENT') == 1 + if conf_data.get('CONFIG_OWN_LIBC') or not conf_data.get('CONFIG_OPENSSL') + srcs += files('sha1.c') + endif +endif + +srcs += files('base64.c', 'color.c', 'conv.c', 'env.c', 'error.c', 'file.c', 'hash.c', + 'memlist.c', 'memory.c', 'random.c', 'secsave.c', 'snprintf.c', 'string.c', 'time.c') diff --git a/src/viewer/dump/meson.build b/src/viewer/dump/meson.build new file mode 100644 index 00000000..f0167c5e --- /dev/null +++ b/src/viewer/dump/meson.build @@ -0,0 +1 @@ +srcs += files('dump.c') diff --git a/src/viewer/meson.build b/src/viewer/meson.build new file mode 100644 index 00000000..c74665a5 --- /dev/null +++ b/src/viewer/meson.build @@ -0,0 +1,3 @@ +subdir('dump') +subdir('text') +srcs += files('action.c', 'timer.c', 'viewer.c') diff --git a/src/viewer/text/meson.build b/src/viewer/text/meson.build new file mode 100644 index 00000000..effeb0c8 --- /dev/null +++ b/src/viewer/text/meson.build @@ -0,0 +1,7 @@ +#INCLUDES += $(TRE_CFLAGS) + +if conf_data.get('CONFIG_MARKS') + srcs += files('marks.c') +endif + +srcs += files('draw.c', 'form.c', 'link.c', 'search.c', 'textarea.c', 'view.c', 'vs.c')