1c72fcc34Sopenharmony_ciname: Build alsa-utils
2c72fcc34Sopenharmony_ci
3c72fcc34Sopenharmony_cion: [push, pull_request]
4c72fcc34Sopenharmony_ci
5c72fcc34Sopenharmony_cijobs:
6c72fcc34Sopenharmony_ci  fedora_latest_build:
7c72fcc34Sopenharmony_ci    runs-on: ubuntu-latest
8c72fcc34Sopenharmony_ci    container:
9c72fcc34Sopenharmony_ci      image: fedora:latest
10c72fcc34Sopenharmony_ci    steps:
11c72fcc34Sopenharmony_ci    - name: Prepare environment
12c72fcc34Sopenharmony_ci      run: |
13c72fcc34Sopenharmony_ci        dnf -y upgrade
14c72fcc34Sopenharmony_ci        dnf -y install @development-tools libtool bzip2 gettext-devel ncurses-devel
15c72fcc34Sopenharmony_ci
16c72fcc34Sopenharmony_ci    - name: Checkout alsa-lib
17c72fcc34Sopenharmony_ci      uses: actions/checkout@v3
18c72fcc34Sopenharmony_ci      with:
19c72fcc34Sopenharmony_ci        repository: alsa-project/alsa-lib
20c72fcc34Sopenharmony_ci        ref: master
21c72fcc34Sopenharmony_ci        path: alsa-lib
22c72fcc34Sopenharmony_ci    - name: Configure alsa-lib
23c72fcc34Sopenharmony_ci      run: |
24c72fcc34Sopenharmony_ci        cd alsa-lib
25c72fcc34Sopenharmony_ci        head -5 configure.ac
26c72fcc34Sopenharmony_ci        libtoolize --force --copy --automake
27c72fcc34Sopenharmony_ci        aclocal
28c72fcc34Sopenharmony_ci        autoheader
29c72fcc34Sopenharmony_ci        automake --foreign --copy --add-missing
30c72fcc34Sopenharmony_ci        autoconf
31c72fcc34Sopenharmony_ci        export CFLAGS="-O2 -Wall -W -Wunused-const-variable=0 -pipe -g"
32c72fcc34Sopenharmony_ci        ./configure
33c72fcc34Sopenharmony_ci        echo "Version: $(cat version)"
34c72fcc34Sopenharmony_ci    - name: Build alsa-lib
35c72fcc34Sopenharmony_ci      run: |
36c72fcc34Sopenharmony_ci        cd alsa-lib
37c72fcc34Sopenharmony_ci        make
38c72fcc34Sopenharmony_ci    - name: Install alsa-lib
39c72fcc34Sopenharmony_ci      run: |
40c72fcc34Sopenharmony_ci        cd alsa-lib
41c72fcc34Sopenharmony_ci        make install
42c72fcc34Sopenharmony_ci
43c72fcc34Sopenharmony_ci    - name: Checkout
44c72fcc34Sopenharmony_ci      uses: actions/checkout@v3
45c72fcc34Sopenharmony_ci      with:
46c72fcc34Sopenharmony_ci        path: alsa-utils
47c72fcc34Sopenharmony_ci    - name: Checkout all tags
48c72fcc34Sopenharmony_ci      run: |
49c72fcc34Sopenharmony_ci        cd alsa-utils
50c72fcc34Sopenharmony_ci        git fetch --prune --tags --force
51c72fcc34Sopenharmony_ci        git fetch --prune --unshallow --force
52c72fcc34Sopenharmony_ci    - name: Modify version
53c72fcc34Sopenharmony_ci      run: |
54c72fcc34Sopenharmony_ci        cd alsa-utils
55c72fcc34Sopenharmony_ci        mv configure.ac configure.ac.old
56c72fcc34Sopenharmony_ci        version=$(git describe | sed -e 's/v//')
57c72fcc34Sopenharmony_ci        if test -z "$version"; then version=$(git describe --tags | sed -e 's/v//'); fi
58c72fcc34Sopenharmony_ci        if test -z "$version"; then version1=$(cat configure.ac.old | grep "AC_INIT(.*)" | cut -d ' ' -f 2 | sed -e 's/)//'); version2=$(git rev-parse --short HEAD); version="${version1}-g${version2}"; fi
59c72fcc34Sopenharmony_ci        echo "Version: ${version}"
60c72fcc34Sopenharmony_ci        sed -r "s/AC_INIT\(alsa-utils,.*\)/AC_INIT(alsa-utils, ${version})/" < configure.ac.old > configure.ac.tmp
61c72fcc34Sopenharmony_ci        sed -e 's;po/Makefile.in;;' < configure.ac.tmp > configure.ac
62c72fcc34Sopenharmony_ci        grep AC_INIT configure.ac
63c72fcc34Sopenharmony_ci    - name: Configure
64c72fcc34Sopenharmony_ci      run: |
65c72fcc34Sopenharmony_ci        cd alsa-utils
66c72fcc34Sopenharmony_ci        head -5 configure.ac
67c72fcc34Sopenharmony_ci        aclocal
68c72fcc34Sopenharmony_ci        gettextize -c -f --no-changelog
69c72fcc34Sopenharmony_ci        libtoolize --force --copy --automake
70c72fcc34Sopenharmony_ci        aclocal -I m4
71c72fcc34Sopenharmony_ci        autoheader
72c72fcc34Sopenharmony_ci        automake --foreign --copy --add-missing
73c72fcc34Sopenharmony_ci        autoconf
74c72fcc34Sopenharmony_ci        export CFLAGS="-O2 -Wall -W -Wunused-const-variable=0 -pipe -g"
75c72fcc34Sopenharmony_ci        ./configure
76c72fcc34Sopenharmony_ci        echo "Version: $(cat version)"
77c72fcc34Sopenharmony_ci    - name: Build
78c72fcc34Sopenharmony_ci      run: |
79c72fcc34Sopenharmony_ci        cd alsa-utils
80c72fcc34Sopenharmony_ci        make
81c72fcc34Sopenharmony_ci    - name: Install test
82c72fcc34Sopenharmony_ci      run: |
83c72fcc34Sopenharmony_ci        cd alsa-utils
84c72fcc34Sopenharmony_ci        make install
85c72fcc34Sopenharmony_ci    - name: Create package
86c72fcc34Sopenharmony_ci      run: |
87c72fcc34Sopenharmony_ci        cd alsa-utils
88c72fcc34Sopenharmony_ci        make dist-bzip2
89c72fcc34Sopenharmony_ci    - name: Unpack package
90c72fcc34Sopenharmony_ci      run: |
91c72fcc34Sopenharmony_ci        mkdir artifacts
92c72fcc34Sopenharmony_ci        cd alsa-utils
93c72fcc34Sopenharmony_ci        tar xjf alsa-utils-$(cat version).tar.bz2
94c72fcc34Sopenharmony_ci        cp alsa-utils-$(cat version).tar.bz2 ../artifacts
95c72fcc34Sopenharmony_ci    - name: Configure package
96c72fcc34Sopenharmony_ci      run: |
97c72fcc34Sopenharmony_ci        cd alsa-utils
98c72fcc34Sopenharmony_ci        cd alsa-utils-$(cat version)
99c72fcc34Sopenharmony_ci        export CFLAGS="-O2 -Wall -W -Wunused-const-variable=0 -pipe -g"
100c72fcc34Sopenharmony_ci        ./configure
101c72fcc34Sopenharmony_ci    - name: Build package
102c72fcc34Sopenharmony_ci      run: |
103c72fcc34Sopenharmony_ci        cd alsa-utils
104c72fcc34Sopenharmony_ci        cd alsa-utils-$(cat version)
105c72fcc34Sopenharmony_ci        make
106c72fcc34Sopenharmony_ci    - name: Install package
107c72fcc34Sopenharmony_ci      run: |
108c72fcc34Sopenharmony_ci        cd alsa-utils
109c72fcc34Sopenharmony_ci        cd alsa-utils-$(cat version)
110c72fcc34Sopenharmony_ci        make install
111c72fcc34Sopenharmony_ci    - name: Archive package
112c72fcc34Sopenharmony_ci      uses: actions/upload-artifact@v1
113c72fcc34Sopenharmony_ci      with:
114c72fcc34Sopenharmony_ci        name: alsa-utils-test-package
115c72fcc34Sopenharmony_ci        path: artifacts/
116c72fcc34Sopenharmony_ci
117c72fcc34Sopenharmony_ci  ubuntu_last_build:
118c72fcc34Sopenharmony_ci    runs-on: ubuntu-latest
119c72fcc34Sopenharmony_ci    container:
120c72fcc34Sopenharmony_ci      image: ubuntu:latest
121c72fcc34Sopenharmony_ci    steps:
122c72fcc34Sopenharmony_ci    - name: Prepare
123c72fcc34Sopenharmony_ci      run: |
124c72fcc34Sopenharmony_ci        export DEBIAN_FRONTEND=noninteractive
125c72fcc34Sopenharmony_ci        apt-get update
126c72fcc34Sopenharmony_ci        apt-get -y install apt-utils
127c72fcc34Sopenharmony_ci        apt-get -y full-upgrade
128c72fcc34Sopenharmony_ci        apt-get install -y git build-essential pkg-config m4 autoconf automake libtool gettext ncurses-dev
129c72fcc34Sopenharmony_ci
130c72fcc34Sopenharmony_ci    - name: Checkout alsa-lib
131c72fcc34Sopenharmony_ci      uses: actions/checkout@v3
132c72fcc34Sopenharmony_ci      with:
133c72fcc34Sopenharmony_ci        repository: alsa-project/alsa-lib
134c72fcc34Sopenharmony_ci        ref: master
135c72fcc34Sopenharmony_ci    - name: Configure alsa-lib
136c72fcc34Sopenharmony_ci      run: |
137c72fcc34Sopenharmony_ci        libtoolize --force --copy --automake
138c72fcc34Sopenharmony_ci        aclocal
139c72fcc34Sopenharmony_ci        autoheader
140c72fcc34Sopenharmony_ci        automake --foreign --copy --add-missing
141c72fcc34Sopenharmony_ci        autoconf
142c72fcc34Sopenharmony_ci        export CFLAGS="-O2 -Wall -W -Wunused-const-variable=0 -pipe -g"
143c72fcc34Sopenharmony_ci        ./configure
144c72fcc34Sopenharmony_ci    - name: Build alsa-lib
145c72fcc34Sopenharmony_ci      run: |
146c72fcc34Sopenharmony_ci        make
147c72fcc34Sopenharmony_ci    - name: Install alsa-lib
148c72fcc34Sopenharmony_ci      run: |
149c72fcc34Sopenharmony_ci        make install
150c72fcc34Sopenharmony_ci
151c72fcc34Sopenharmony_ci    - name: Checkout
152c72fcc34Sopenharmony_ci      uses: actions/checkout@v3
153c72fcc34Sopenharmony_ci    - name: Configure
154c72fcc34Sopenharmony_ci      run: |
155c72fcc34Sopenharmony_ci        mv configure.ac configure.ac.old
156c72fcc34Sopenharmony_ci        sed -e 's;po/Makefile.in;;' < configure.ac.old > configure.ac
157c72fcc34Sopenharmony_ci        aclocal
158c72fcc34Sopenharmony_ci        gettextize -c -f --no-changelog
159c72fcc34Sopenharmony_ci        libtoolize --force --copy --automake
160c72fcc34Sopenharmony_ci        aclocal -I m4
161c72fcc34Sopenharmony_ci        autoheader
162c72fcc34Sopenharmony_ci        automake --foreign --copy --add-missing
163c72fcc34Sopenharmony_ci        autoconf
164c72fcc34Sopenharmony_ci        export CFLAGS="-O2 -Wall -W -Wunused-const-variable=0 -pipe -g"
165c72fcc34Sopenharmony_ci        ./configure
166c72fcc34Sopenharmony_ci    - name: Build
167c72fcc34Sopenharmony_ci      run: |
168c72fcc34Sopenharmony_ci        make
169c72fcc34Sopenharmony_ci    - name: Install
170c72fcc34Sopenharmony_ci      run: |
171c72fcc34Sopenharmony_ci        make install
172