63 lines
2.0 KiB
YAML
63 lines
2.0 KiB
YAML
name: Setup Cytoplasm/Telodendria
|
|
description: Setup Cytoplasm or Telodendria out
|
|
|
|
inputs:
|
|
to_install:
|
|
description:
|
|
required: false
|
|
default: Cytoplasm
|
|
compiler:
|
|
description: Compiler to use as CC
|
|
required: false
|
|
default: gcc
|
|
ssl:
|
|
description: SSL library used
|
|
required: false
|
|
default: openssl
|
|
|
|
runs:
|
|
using: composite
|
|
steps:
|
|
- name: Downloading Cytoplasm/Telodendria
|
|
id: download-cyto-telo
|
|
if: "${{inputs.to_install == 'Cytoplasm' }}"
|
|
shell: bash
|
|
run: |
|
|
echo Downloading Cytoplasm...
|
|
# Shallow build, since we don't have to deal with that.
|
|
git clone --depth=1 https://git.telodendria.io/Telodendria/Cytoplasm Cytoplasm
|
|
- name: Downloading Cytoplasm/Telodendria
|
|
id: download-cyto-telo
|
|
if: "${{inputs.to_install == 'Telodendria' }}"
|
|
shell: bash
|
|
run: |
|
|
# Download the right branch of Telodendria.
|
|
echo Downloading Telodendria...
|
|
git clone https://git.telodendria.io/${{github.repository}} Telodendria
|
|
cd Telodendria
|
|
git checkout ${{github.ref_name}}
|
|
|
|
- name: Compiling ${{inputs.checkout}}
|
|
id: compile
|
|
shell: bash
|
|
run: |
|
|
echo Compiling ${{inputs.to_install}}...
|
|
cd ${{inputs.to_install}}
|
|
export CC="${{inputs.compiler}}"
|
|
|
|
# We need to tell the valid SSL library if we're dealing with Cytoplasm.
|
|
# TODO: Install Cytoplasm to some temporary directory instead of being
|
|
# invasive and putting it in /usr.
|
|
[ "${{inputs.to_install}}" = "Cytoplasm" ] && ./configure --prefix=/usr --no-static --with-${{inputs.ssl}}
|
|
[ "${{inputs.to_install}}" = "Cytoplasm" ] || ./configure --no-static
|
|
if ! make; then
|
|
# Fails? Do it again. Hopefully, it should have
|
|
# seen all of the schemas by then.
|
|
#
|
|
# TODO: Fix this in Telodendria!
|
|
./configure --prefix=/usr --no-static
|
|
make 2>&1
|
|
fi
|
|
[ "${{inputs.install}}" = "true" ] && make install
|
|
echo Done!
|