1
0
mirror of https://github.com/profanity-im/profanity.git synced 2024-11-03 19:37:16 -05:00
Commit Graph

288 Commits

Author SHA1 Message Date
Michael Vetter
7301c99676 Start new cycle 2022-03-30 14:08:49 +02:00
Michael Vetter
9214b0a10a Release 0.12.0 2022-03-30 14:08:49 +02:00
Paul Fertser
ca782b5385 Add debug information to binary
Option -ggdb3 (same as -g3) doesn't affect code-generation, just adds
to the binary size of an executable. Automake strips installed
binaries automatically when "make install-strip" is run so enabling
this option permanently doesn't affect the end result while allowing
for hassle-free interactive debugging.

If one is running a stripped binary it's still possible to attach GDB
by process PID and then use "file /path/to/unstripped/profanity" to
get all symbols and lines data.
2022-03-28 16:37:07 +03:00
Paul Fertser
08212a839a Fix AM_CFLAGS assignments (including libstrophe flags)
Autoconf can pre-populate this variable with essential parameters so
it should be appended to rather than overridden.

While at it, don't miss to append CFLAGS for libstrope which is needed
if it's installed to a non-default location.
2022-03-27 20:49:19 +03:00
Paul Fertser
90ea2fabe6 Fix autoconf warning about AC_CANONICAL_TARGET ordering
AM_INIT_AUTOMAKE requires AC_ARG_PROGRAM so should go after
AC_CANONICAL_TARGET for proper program name mangling.

This fixes "AC_ARG_PROGRAM was called before AC_CANONICAL_TARGET"
warning as emitted by autoconf 2.69.
2022-03-27 20:40:27 +03:00
Michael Vetter
35b7555399 build: Use CPPFLAGS for obsd
Fixing build failure detected by sr.ht for OpenBSD:

```
src/ui/inputwin.c: In function '_inp_rl_startup_hook':
src/ui/inputwin.c:444:5: error: implicit declaration of function 'rl_bind_keyseq'; did you mean 'rl_bind_key'? [-Werror=implicit-function-declaration]
  444 |     rl_bind_keyseq("\\e1", _inp_rl_win_1_handler);
      |     ^~~~~~~~~~~~~~
      |     rl_bind_key
cc1: all warnings being treated as errors
```

Seems like both OSX and OpenBSD need CPPFLAGS here.
2022-02-23 12:50:03 +01:00
Michael Vetter
32f6798964 Remove link to python bug
Since 5676159aa5 the python_CPPFLAGS
isn't needed anymore. We can use python_CFLAGS.
So let's remove the comment about https://bugs.python.org/issue15018.
2022-02-18 20:16:44 +01:00
j.r
5676159aa5
Fix python executed during configure
Previously it relied on AX_PYTHON_DEVEL, which in turn executes
python-config to get the build flags. However this does not work while
cross compiling because we can't execute the python-config build for the
target platform. To circumvent this problem the python build flags are
now queried via pkgconfig, which has the drawback of not having some
extra build flags, but they do not seem to be needed.

I tested this patch with the termux build system and it build without
their existing hack of injecting python after the configure step. I also
tested non cross compile build on Arch Linux and it also still works.

Fixes #851
2022-02-18 19:45:31 +01:00
Michael Vetter
fc13a69f43 build: use target instead of host
If I understand https://www.gnu.org/software/autoconf/manual/autoconf-2.68/html_node/Canonicalizing.html
correctly then we should use target and not host.

Will only matter in case of crosscompiling.
2022-02-18 17:36:03 +01:00
Michael Vetter
28a9605a1f build: use PKG_CHECK_MODULES to check for xscreensaver 2022-02-18 17:35:30 +01:00
Michael Vetter
38ff3699b4 build: use CFLAGS instead of CPPFLAGS where possible
OSX seems to need CPPFLAGS for readline.
2022-02-18 15:07:27 +01:00
Michael Vetter
33106ecf9c build: remove otr3 support
All the distributions I checked have libotr 4.1.1 now.
2022-02-18 14:01:28 +01:00
Michael Vetter
3f8720d70f build: remove support for old libsignal
Remove support for libsignal-protocol-c < 2.3.2.
Debian 10 uses 2.3.2, Debian 11 and 12 use 2.3.3.
openSUSE from 15.2 onward uses 2.3.3.
Fedora since 28 uses 2.3.2.

We should be good.
2022-02-18 14:01:28 +01:00
Michael Vetter
1856c1e7fc build: remove xmpp_lib variable
Since cad934b9a0 we only support
libstrophe. libmesode is deprecated.
2022-02-18 14:01:28 +01:00
Michael Vetter
7a6a37e717 build: group related parts better together 2022-02-18 14:01:27 +01:00
Michael Vetter
9cb6fc0d23 build: change comments 2022-02-18 14:00:13 +01:00
Michael Vetter
c79ba8f80e build: define min autotools version and set url 2022-02-18 13:59:14 +01:00
Michael Vetter
201ef7394a build: use AC_MSG_NOTICE instead of echo 2022-02-18 13:54:49 +01:00
Michael Vetter
adc68bd4b1 build: add vim modeline 2022-02-17 15:48:56 +01:00
Carlo Cabrera
1194a9b85e
Improve macOS Readline checks
Instead of checking for `lib` directories, let's make sure `libreadline`
exists.

Also, let's improve the error message if we can't find it. Finally,
since we're only looking for `brew` on macOS, we don't need to use
`$PATH_SEPARATOR` since we know what the path separator is.
2021-11-24 00:10:05 +08:00
Carlo Cabrera
315d862e22
Make readline check more portable
Currently, `configure.ac` assumes Readline is installed via Homebrew in
`/usr/local`. This doesn't work for Homebrew on Apple Silicon, or
MacPorts.

Let's fix this by checking for a `brew` installation, and querying that
for Readline's prefix if available. If not, it checks for an existing
MacPorts prefix, and finally falls back to checking `/usr/local` in case
a user installed Readline for themselves there.
2021-11-23 21:57:02 +08:00
Michael Vetter
16ce42a0db bump libstrophe requirement to 0.11.0 2021-10-28 20:07:13 +02:00
Steffen Jaeckel
687714d7d6 ran autoupdate
Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
2021-10-27 22:45:44 +02:00
Steffen Jaeckel
ffc0b49ab1 first step to remove libmesode
Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
2021-10-27 22:45:44 +02:00
Michael Vetter
18c02e5c4d Remove Ruby comment
There most likely won't ever be Ruby plugins.

Regards https://github.com/profanity-im/profanity/issues/779
2021-09-29 17:32:54 +02:00
Michael Vetter
7486e22b77 Look for plugins to install in global location
Two options to install plugins.
Mention the whole path:
`/plugins install ~/src/profanity-plugins/my.py`

Mention only the plugin name:
`/plugins install my.py`

The latter will look in `/usr/local/share/profanity/plugins/` for the
file and copy it over to `~/.local/share/profanity/plugins`.

At first I was thinking about loading the plugins from the global
location. But users most likely don't want to have all plugins activated
that an admin installs on a system.

Regards https://github.com/profanity-im/profanity/issues/945
2021-09-29 17:32:54 +02:00
Michael Vetter
e943ababb9 Start new cycle 2021-09-28 19:53:05 +02:00
Michael Vetter
e6f96cd7d7 Release 0.11.1 2021-09-28 19:48:42 +02:00
Michael Vetter
8be49e9e21 Check for curl version nr
We use `curl_url()` since e9d587578 which according to
https://curl.se/libcurl/c/curl_url.html is only available in libcurl >= 7.62.0 .

Related to https://github.com/profanity-im/profanity/issues/1581
2021-07-20 17:26:07 +02:00
Michael Vetter
275c3132a5 Start next cycle 2021-07-14 16:25:08 +02:00
Michael Vetter
563f08164e Release 0.11.0 2021-07-14 16:23:05 +02:00
Michael Vetter
9d976e7231 Start new cycle 2021-01-09 08:09:42 +01:00
Michael Vetter
d382023961 Release 0.10.0 2021-01-09 08:08:10 +01:00
Michael Vetter
f1b9bb49e1 configure: check for python3-config 2020-10-09 09:38:47 +02:00
Michael Vetter
7f5169c2e9 Use g_date_time_format_iso8601()
This partly reverts d3a387a0ec.

For proanity 0.9.x we still wanted to support older glib versions so
that we can be packaged for various linux distros.

Now with 0.10 we want to move on.
2020-09-30 19:43:58 +02:00
Michael Vetter
0a9200e268 Require libstrophe/libmesode 0.10.0 2020-09-30 19:30:40 +02:00
nia
52e9be4abc Basic support for building on NetBSD.
- Add NetBSD as a recognized platform without -ldl.
- Allow building with NetBSD libcurses instead of ncurses.
- Portability to NetBSD sh - use POSIX '=' instead of '=='.
2020-09-04 12:55:20 +02:00
Michael Vetter
05d19cb6e3 configure: support gtk3 too
Make Profanity compilable with gtk2 and gtk3.
Prefer the latter.
2020-08-04 18:05:04 +02:00
Michael Vetter
3af5f33489 0.9.5 2020-07-01 18:47:07 +02:00
Michael Vetter
906c020155 Start new cycle 2020-06-24 13:57:05 +02:00
Michael Vetter
1332a4a6c2 Release 0.9.4 2020-06-24 13:56:34 +02:00
Michael Vetter
9eb2b79f53 Start new cycle 2020-06-19 20:34:29 +02:00
Michael Vetter
177c953991 Release 0.9.3 2020-06-19 20:29:31 +02:00
Michael Vetter
5d5acd65b1 Start new cycle 2020-06-13 18:38:37 +02:00
Michael Vetter
c58726d67f Release 0.9.2 2020-06-13 18:37:51 +02:00
Michael Vetter
e07da412b7 Use gnu99 standard
With recent changes to c99 and -D_POSIX_C_SOURCE=200809L we get the following:

openSUSE TW CI sais:
```
Now you can run `make' to build profanity

In file included from /usr/include/python2.7/Python.h:8,

                 from src/plugins/python_plugins.c:37:

/usr/include/python2.7/pyconfig.h:1226: error: "_POSIX_C_SOURCE" redefined [-Werror]

 1226 | #define _POSIX_C_SOURCE 200112L

      |

<command-line>: note: this is the location of the previous definition

In file included from /usr/include/python2.7/Python.h:8,

                 from src/plugins/python_api.c:37:

/usr/include/python2.7/pyconfig.h:1226: error: "_POSIX_C_SOURCE" redefined [-Werror]

 1226 | #define _POSIX_C_SOURCE 200112L

      |

<command-line>: note: this is the location of the previous definition

cc1: all warnings being treated as errors
```

OpenBSD CI sais:
```
cc1: warnings being treated as errors
src/database.c: In function 'log_database_get_previous_chat':
src/database.c:226: warning: implicit declaration of function 'asprintf'
gmake[1]: *** [Makefile:1924: src/database.o] Error 1
gmake[1]: Leaving directory '/home/build/profanity'
gmake: *** [Makefile:1211: all] Error 2
```

Let us use gnu99. Has been proposed before already and is fine.

Regards https://github.com/profanity-im/profanity/issues/1357
Regards https://github.com/profanity-im/profanity/pull/1351
2020-06-13 15:58:01 +02:00
Michael Vetter
74e061165a Define POSIX macro to have strdup
98c38dc6d6
sets C99 as standard.

strdup() is not part of C99.

For now set `-D_POSIX_C_SOURCE=200809L` macro to have strdup() in C99.
Using `gnu99` instead would be another option.

We should take more care to use glib functions whenever possible.

Regards https://github.com/profanity-im/profanity/issues/1357
2020-06-12 16:12:21 +02:00
Michael Vetter
74ff38f0bd Start new cycle 2020-06-11 10:07:51 +02:00
Michael Vetter
8551d3dcb1 Release 0.9.1 2020-06-11 10:06:56 +02:00
Dmitry Podgorny
424918c5ed Make legacy auth optional
Some systems don't provide recent libstrophe releases. When older
version of libstrophe is detected, don't build legacy auth support.

To simplify this patch, report about unsupported legacy auth and
keep commands option as is.
2020-06-11 02:51:07 +03:00