ObjFW  Check-in [28e2425585]

Overview
Comment:.travis.yml: Re-add devkitPro builds using Docker
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 28e2425585a2207b1118895e7242a22288e69791d5e3e7e80983778f242ae768
User & Date: js on 2020-07-11 21:07:21
Other Links: manifest | tags
Context
2020-07-12
09:49
Make of_random() a function check-in: c1fe4b2b77 user: js tags: trunk
2020-07-11
21:07
.travis.yml: Re-add devkitPro builds using Docker check-in: 28e2425585 user: js tags: trunk
19:06
configure: Check for vstmdb instead of fstmfdd check-in: 168b1e2e3b user: js tags: trunk
Changes

Modified .travis.yml from [c7f58226e6] to [0b214ac062].

219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243



















244
245
246
247
248
249
250
219
220
221
222
223
224
225


















226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251







-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+








    # AmigaOS
    - os: linux
      dist: trusty
      env:
        - config=amigaos

    # Disabled as the devkitPro developers deliberately broke Travis.
    ## Nintendo 3DS
    #- os: linux
    #  dist: bionic
    #  env:
    #    - config=nintendo_3ds
    #
    ## Nintendo DS
    #- os: linux
    #  dist: bionic
    #  env:
    #    - config=nintendo_ds
    #
    ## Nintendo Wii
    #- os: linux
    #  dist: bionic
    #  env:
    #    - config=wii
    # Nintendo 3DS
    - os: linux
      dist: bionic
      env:
        - config=nintendo_3ds

    # Nintendo DS
    - os: linux
      dist: bionic
      env:
        - config=nintendo_ds

    # Nintendo Wii
    - os: linux
      dist: bionic
      env:
        - config=wii

services: docker

before_install:
  - if [ "$TRAVIS_OS_NAME" = "linux" -a -z "$config" ]; then
            case "$TRAVIS_CPU_ARCH" in
                    amd64 | s390x)
                            pkgs="gobjc-multilib";
                            ;;
265
266
267
268
269
270
271
272

273
274
275
276
277
278
279

280
281
282
283
284
285
286
287
288
289

290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305

306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
266
267
268
269
270
271
272

273







274






275
276
277

278
279
280
281
282
283
284
285
286
287
288
289
290
291

292

293













294
295
296
297
298
299
300







-
+
-
-
-
-
-
-
-
+
-
-
-
-
-
-



-
+













-

-
+
-
-
-
-
-
-
-
-
-
-
-
-
-







            fi;

            if grep precise /etc/lsb-release >/dev/null; then
                    sudo ipx_internal_net add 1234 123456;
            fi;
    fi

  - if [ "$config" = "nintendo_3ds" -o "$config" = "nintendo_ds"
  - if [ "$config" = "nintendo_3ds" -o "$config" = "nintendo_ds" ]; then
        -o "$config" = "wii" ]; then
            deb=devkitpro-pacman.amd64.deb;
            wget https://github.com/devkitPro/pacman/releases/download/v1.0.2/$deb;
            sudo apt install gdebi;
            sudo gdebi -n $deb;
    fi

            docker pull devkitpro/devkitarm;
  - if [ "$config" = "nintendo_3ds" ]; then
            sudo dkp-pacman --noconfirm -Syu 3ds-dev;
    fi

  - if [ "$config" = "nintendo_ds" ]; then
            sudo dkp-pacman --noconfirm -Syu nds-dev;
    fi

  - if [ "$config" = "wii" ]; then
            sudo dkp-pacman --noconfirm -Syu wii-dev;
            docker pull devkitpro/devkitppc;
    fi

  - if [ "$config" = "amigaos" ]; then
            wget -q https://franke.ms/download/amiga-gcc.tgz;
            tar -C / -xzf amiga-gcc.tgz;
    fi

script:
  - build() {
            if ! git clean -fxd >/tmp/clean_log 2>&1; then
                    cat /tmp/clean_log;
                    exit 1;
            fi;
            echo ">> Configuring with $@";
            ./autogen.sh;
            if ! ./configure ac_cv_path_TPUT= "$@"; then
            .travis/build.sh "$@";
                    cat config.log;
                    exit 1;
            fi;
            echo ">> Building (configured with $@)";
            if ! make -j4 >/tmp/make_log 2>&1; then
                    cat /tmp/make_log;
                    exit 1;
            fi;
            echo ">> Installing (configured with $@)";
            if ! sudo PATH="$PATH" make install >/tmp/install_log 2>&1; then
                    cat /tmp/install_log;
                    exit 1;
            fi;
    }

  - if [ "$TRAVIS_OS_NAME" = "linux" -a -z "$config" ]; then
            build_32_64() {
                    build OBJC="$CC" $@;

                    case "$TRAVIS_CPU_ARCH" in
422
423
424
425
426
427
428

429
430
431
432




433
434
435

436
437
438
439




440
441
442

443
444
445
446





447
397
398
399
400
401
402
403
404




405
406
407
408
409
410
411
412




413
414
415
416
417
418
419
420




421
422
423
424
425
426







+
-
-
-
-
+
+
+
+



+
-
-
-
-
+
+
+
+



+
-
-
-
-
+
+
+
+
+


            build --host=m68k-amigaos;
            build --host=m68k-amigaos --disable-amiga-lib;
            build --host=m68k-amigaos --enable-static;
    fi

  - if [ "$config" = "nintendo_3ds" ]; then
            ./autogen.sh;
            export DEVKITPRO="/opt/devkitpro";
            export PATH="$DEVKITPRO/devkitARM/bin:$PATH";

            build --host=arm-none-eabi --with-3ds;
            docker run -e DEVKITPRO=/opt/devkitpro
                    -e PATH="/opt/devkitpro/devkitARM/bin:$PATH"
                    -v $TRAVIS_BUILD_DIR:/objfw devkitpro/devkitarm
                    /objfw/.travis/build.sh --host=arm-none-eabi --with-3ds;
    fi

  - if [ "$config" = "nintendo_ds" ]; then
            ./autogen.sh;
            export DEVKITPRO="/opt/devkitpro";
            export PATH="$DEVKITPRO/devkitARM/bin:$PATH";

            build --host=arm-none-eabi --with-nds;
            docker run -e DEVKITPRO=/opt/devkitpro
                    -e PATH="/opt/devkitpro/devkitARM/bin:$PATH"
                    -v $TRAVIS_BUILD_DIR:/objfw devkitpro/devkitarm
                    /objfw/.travis/build.sh --host=arm-none-eabi --with-nds;
    fi

  - if [ "$config" = "wii" ]; then
            ./autogen.sh;
            export DEVKITPRO="/opt/devkitpro";
            export PATH="$DEVKITPRO/devkitPPC/bin:$PATH";

            build ac_cv_prog_wiiload= --host=powerpc-eabi --with-wii;
            docker run -e DEVKITPRO=/opt/devkitpro
                    -e PATH="/opt/devkitpro/devkitPPC/bin:$PATH"
                    -v $TRAVIS_BUILD_DIR:/objfw devkitpro/devkitppc
                    /objfw/.travis/build.sh ac_cv_prog_wiiload=
                    --host=powerpc-eabi --with-wii;
    fi

Added .travis/build.sh version [02fcddbdad].





















1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
#!/bin/sh
cd $(dirname $0)/..

echo ">> Configuring with $@"
if ! ./configure ac_cv_path_TPUT= "$@"; then
	cat config.log
	exit 1
fi

echo ">> Building (configured with $@)"
if ! make -j4 >/tmp/make_log 2>&1; then
	cat /tmp/make_log
	exit 1
fi

echo ">> Installing (configured with $@)"
if ! sudo PATH="$PATH" make install >/tmp/install_log 2>&1; then
	cat /tmp/install_log
	exit 1
fi

Modified Makefile from [4ae8b8a509] to [a860b9a6b0].

21
22
23
24
25
26
27
28

29
30
31
32
33
34
35
21
22
23
24
25
26
27

28
29
30
31
32
33
34
35







-
+







	doxygen >/dev/null

tarball: docs
	echo "Generating tarball for version ${PACKAGE_VERSION}..."
	rm -fr objfw-${PACKAGE_VERSION} objfw-${PACKAGE_VERSION}.tar \
		objfw-${PACKAGE_VERSION}.tar.gz
	fossil tarball --name objfw-${PACKAGE_VERSION} current - \
		--exclude '.fossil-settings/*,.gitignore,.travis.yml' | \
		--exclude '.cirrus*,.fossil-settings/*,.gitignore,.travis*' | \
		ofarc -ttgz -xq -
	cp configure config.h.in objfw-${PACKAGE_VERSION}/
	ofarc -cq objfw-${PACKAGE_VERSION}.tar \
		$$(find objfw-${PACKAGE_VERSION} | sort)
	rm -fr objfw-${PACKAGE_VERSION}
	gzip -9 objfw-${PACKAGE_VERSION}.tar
	rm -f objfw-${PACKAGE_VERSION}.tar