diff --git a/meson_options.txt b/meson_options.txt index 9b5d620b..eee21791 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -60,3 +60,6 @@ option('with-winamp', type: 'boolean', option('install-plugin-metainfo', type: 'boolean', value: false, description: 'Installs metainfo files for enabled plugins, useful when distros create split packages' ) +option('with-perl-legacy-api', type: 'boolean', value: false, + description: 'Enables the legacy IRC perl module for compatibility with old scripts' +) diff --git a/plugins/perl/meson.build b/plugins/perl/meson.build index 5e5d6d71..180797ee 100644 --- a/plugins/perl/meson.build +++ b/plugins/perl/meson.build @@ -13,11 +13,17 @@ hexchat_perl_module = custom_target('hexchat-perl-header', command: [generate_perl_header, '@OUTPUT@', '@INPUT@'] ) -irc_perl_module = custom_target('irc-perl-header', - input: 'lib/IRC.pm', - output: 'irc.pm.h', - command: [generate_perl_header, '@OUTPUT@', '@INPUT@'] -) +perl_cflags = [] +irc_perl_module = [] + +if get_option('with-perl-legacy-api') + irc_perl_module = custom_target('irc-perl-header', + input: 'lib/IRC.pm', + output: 'irc.pm.h', + command: [generate_perl_header, '@OUTPUT@', '@INPUT@'] + ) + perl_cflags += '-DOLD_PERL' +endif perl = find_program('perl') @@ -25,7 +31,6 @@ ret = run_command([perl, '-MExtUtils::Embed', '-e', 'ccopts']) if ret.returncode() != 0 error('perl: Failed to get cflags') endif -perl_cflags = [] foreach flag : ret.stdout().strip().split(' ') if flag.startswith('-I') or flag.startswith('-D') perl_cflags += flag