ObjFW  Diff

Differences From Artifact [a4ba9a887a]:

To Artifact [53acd6323f]:


1
2
3
4
5
6





7
8

9

10

11
12

13

14

15
16

17

18

19
20

21

























22
23
24
25

26
27
28
















29
30
31
32
33
34
35
1
2
3
4
5
6
7
8
9
10
11
12

13
14
15
16
17
18

19
20
21
22
23
24

25
26
27
28
29
30

31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64

65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87






+
+
+
+
+

-
+

+

+

-
+

+

+

-
+

+

+

-
+

+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+




+


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







language: c

matrix:
  include:
    # Linux
    - os: linux
      compiler: clang
      dist: precise
      sudo: required

    - os: linux
      compiler: gcc
      dist: bionic
      dist: precise
      sudo: required

    - os: linux
      arch: arm64
      compiler: clang
      dist: bionic
      dist: precise
      sudo: required

    - os: linux
      arch: arm64
      compiler: gcc
      dist: xenial
      dist: precise
      sudo: required

    - os: linux
      arch: ppc64le
      compiler: clang
      dist: xenial
      dist: precise
      sudo: required

    - os: linux
      arch: ppc64le
      compiler: gcc
      dist: precise
      sudo: required

    # Clang seems to have broken exceptions on s390x
    #- os: linux
    #  arch: s390x
    #  compiler: clang
    #  dist: precise
    #  sudo: required

    - os: linux
      arch: s390x
      compiler: gcc
      dist: precise
      sudo: required

    - os: linux
      compiler: clang
      dist: trusty
      sudo: required

    - os: linux
      compiler: gcc
      dist: trusty
      sudo: required

    - os: linux
      compiler: clang
      dist: trusty
      dist: xenial
      sudo: required

    - os: linux
      compiler: gcc
      dist: xenial
      sudo: required

    - os: linux
      compiler: clang
      dist: bionic
      sudo: required

    - os: linux
      compiler: gcc
      dist: bionic
      sudo: required

    # macOS
    - os: osx
      osx_image: xcode11.2
      language: objective-c
      env:
187
188
189
190
191
192
193
194
195
196













197

198

199
200
201




202
203
204
205
206
207
208
239
240
241
242
243
244
245



246
247
248
249
250
251
252
253
254
255
256
257
258
259
260

261

262
263
264
265
266
267
268
269
270
271
272
273
274







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

+
-
+
-


+
+
+
+







    - os: linux
      dist: trusty
      env:
        - config=wii

before_install:
  - if [ "$TRAVIS_OS_NAME" = "linux" -a -z "$config" ]; then
            if ! sudo apt-get -qq update >/tmp/apt_log 2>&1; then
                    cat /tmp/apt_log;
                    exit 1;
            case "$TRAVIS_CPU_ARCH" in
                    amd64 | s390x)
                            pkgs="gobjc-multilib";
                            ;;
                    *)
                            pkgs="gobjc";
                            ;;
            esac;

            pkgs="$pkgs libsctp-dev";

            if grep precise /etc/lsb-release >/dev/null; then
                    pkgs="$pkgs ipx";
            fi;

            if ! sudo apt-get -qq install -y gobjc-multilib >/tmp/apt_log 2>&1;
            if ! sudo apt-get -qq install -y $pkgs >/tmp/apt_log 2>&1; then
            then
                    cat /tmp/apt_log;
                    exit 1;
            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"
        -o "$config" = "wii" ]; then
            wget https://github.com/devkitPro/pacman/releases/download/devkitpro-pacman-1.0.1/devkitpro-pacman.deb;
            sudo dpkg -i devkitpro-pacman.deb;
222
223
224
225
226
227
228



229




230
231
232
233
234
235
236
288
289
290
291
292
293
294
295
296
297

298
299
300
301
302
303
304
305
306
307
308







+
+
+
-
+
+
+
+








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

script:
  # This needs to use ed on macOS, as it has no GNU sed, and sed on Linux, as
  # some Travis hosts have no ed.
  - if [ "$TRAVIS_OS_NAME" = "osx" ]; then
  - echo -e '%s/-DSTDOUT$/&_SIMPLE/\nwq' | ed -s tests/Makefile
            echo -e '%s/-DSTDOUT$/&_SIMPLE/\nwq' | ed -s tests/Makefile;
    else
            sed -i 's/-DSTDOUT$/&_SIMPLE/' tests/Makefile;
    fi

  - build() {
            if ! git clean -fxd >/tmp/clean_log 2>&1; then
                    cat /tmp/clean_log;
                    exit 1;
            fi;
            echo ">> Configuring with $@";
250
251
252
253
254
255
256



257








258
259
260
261




262
263
264
265
266
267
268
269
270










271
272


273
274
275
276
277
278
279
322
323
324
325
326
327
328
329
330
331

332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347









348
349
350
351
352
353
354
355
356
357


358
359
360
361
362
363
364
365
366







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




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







                    exit 1;
            fi;
    }

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

                    case "$TRAVIS_CPU_ARCH" in
                            amd64)
                    build OBJC="$CC -m32" --host=i686-pc-linux-gnu $@;
                                    build OBJC="$CC -m32"
                                          --host=i686-pc-linux-gnu $@;
                                    ;;
                            s390x)
                                    build OBJC="$CC -m31"
                                          --host=s390-pc-linux-gnu $@;
                                    ;;
                    esac
            };

            build_32_64;
            build_32_64 --enable-seluid24;
            build_32_64 --disable-compiler-tls;

            true The following are not CPU-dependent, so only run them on amd64;
            if [ "$TRAVIS_CPU_ARCH" = "amd64" ]; then
            build_32_64 --disable-threads;
            build_32_64 --disable-threads --disable-sockets;
            build_32_64 --disable-threads --disable-files;
            build_32_64 --disable-threads --disable-sockets --disable-files;
            build_32_64 --disable-sockets;
            build_32_64 --disable-sockets --disable-files;
            build_32_64 --disable-files;
            build_32_64 --disable-shared;
            build_32_64 --disable-shared --enable-seluid24;
                    build_32_64 --disable-threads;
                    build_32_64 --disable-threads --disable-sockets;
                    build_32_64 --disable-threads --disable-files;
                    build_32_64 --disable-threads --disable-sockets
                                --disable-files;
                    build_32_64 --disable-sockets;
                    build_32_64 --disable-sockets --disable-files;
                    build_32_64 --disable-files;
                    build_32_64 --disable-shared;
                    build_32_64 --disable-shared --enable-seluid24;
            build_32_64 --disable-compiler-tls;
            build_32_64 --disable-compiler-tls --disable-threads;
                    build_32_64 --disable-compiler-tls --disable-threads;
            fi;
    fi

  - if [ "$TRAVIS_OS_NAME" = "osx" -a -z "$config" ]; then
            build_mac_32_64() {
                    build $@;
                    if [ -z "$no32bit" ]; then
                            build OBJC="clang -m32" --host=i386-apple-darwin $@;