python = import('python')
python3 = python.find_installation('python3')

private_pem = meson.build_root() / get_option('ssl_private_pem')
public_pem = meson.build_root() / get_option('ssl_public_pem')

publicKey_h = custom_target('publicKey_h',
  input: files('ssl-keygen.py'),
  output: 'publicKey.h',
  command: [python3, '@INPUT@',
    '--private=' + private_pem, '--public=' + public_pem,
    '--output=@OUTPUT@', '--array-name=publicKey_pem']
)

pluginloader_moc = mod_qt5.preprocess(
    moc_headers: ['pluginloader.h'],
    dependencies: dep_qt5
)

dep_pluginloader = declare_dependency(
    include_directories: include_directories('.'),
    link_with: static_library('plugin', 
        ['pluginloader.cpp', pluginloader_moc, publicKey_h],
        include_directories: include_directories('.'),
        dependencies: [dep_qt5, dependency('openssl', required: true)])
)