Raymond Toy pushed to branch issue-446-use-cc-to-get-errno at cmucl / cmucl

Commits:

7 changed files:

Changes:

  • .gitignore
    ... ... @@ -33,5 +33,6 @@ src/docs/cmu-user/*.tnd
    33 33
     src/docs/cmu-user/*.toc
    
    34 34
     src/docs/cmu-user/*.vdx
    
    35 35
     src/docs/cmu-user/*.vnd
    
    36
    -# Ignore generated errno.lisp
    
    36
    +# Ignore generated errno files
    
    37 37
     src/code/errno.lisp
    
    38
    +src/code/exports-errno.lisp

  • bin/build-world.sh
    ... ... @@ -53,6 +53,7 @@ $LISP "$@" -noinit -nositeinit <<EOF
    53 53
     (pushnew :no-clm *features*)
    
    54 54
     (pushnew :no-hemlock *features*)
    
    55 55
     
    
    56
    +(load "target:code/exports-errno")
    
    56 57
     (load "target:code/exports")
    
    57 58
     (load "target:tools/setup" :if-source-newer :load-source)
    
    58 59
     (comf "target:tools/setup" :load t)
    

  • bin/create-errno.sh
    ... ... @@ -48,6 +48,7 @@ done
    48 48
     
    
    49 49
     # Output file containing the final errno defintions
    
    50 50
     OUTPUT="src/code/errno.lisp"
    
    51
    +OUTPUT_PKG="src/code/exports-errno.lisp"
    
    51 52
     
    
    52 53
     # Default file containing errno definitions.
    
    53 54
     ERRNO_FILE="bin/errno-default.lisp"
    
    ... ... @@ -55,16 +56,12 @@ ERRNO_FILE="bin/errno-default.lisp"
    55 56
     # Template file containing the default def-unix-error forms and other
    
    56 57
     # support code.
    
    57 58
     TEMPLATE="bin/errno-template.lisp"
    
    58
    -
    
    59
    -# How to dump the macros.  This version works on Linux, Darwin, and
    
    60
    -# Solaris (with Sun C).  Update this below if we need some other way
    
    61
    -# for other OSes.
    
    62
    -DUMP_MACROS="cpp -dM -"
    
    59
    +TEMPLATE_PKG="bin/errno-pkg-template.lisp"
    
    63 60
     
    
    64 61
     # Set ERRNO_FILE to an OS-specific name if possible.  If not, use the
    
    65 62
     # default ERRNO_FILE value.
    
    66 63
     if [ -z "$DEFAULT" ]; then
    
    67
    -    case $(uname -s) in
    
    64
    +    case `uname -s` in
    
    68 65
     	Linux) ERRNO_FILE="bin/errno-linux.lisp"
    
    69 66
     	       ;;
    
    70 67
     	Darwin) ERRNO_FILE="bin/errno-darwin.lisp"
    
    ... ... @@ -84,9 +81,11 @@ fi
    84 81
     find_errno ()
    
    85 82
     {
    
    86 83
         # Create appropriate DEF-UNIX-ERROR forms by reading header files
    
    87
    -    # containing the C definitions.
    
    84
    +    # containing the C definitions.  This version with cpp works on
    
    85
    +    # Linux, Darwin, and Solaris (with Sun C) to dump the macros
    
    86
    +    # defined in errno.h.
    
    88 87
         echo '#include <errno.h>' |
    
    89
    -	${DUMP_MACROS} |
    
    88
    +	cpp -dM - |
    
    90 89
     	grep "#define[ \t]\{1,\}E[A-Z0-9]\{1,\}" |
    
    91 90
     	sed 's/#define \(.*\) \(.*\)$/(def-unix-error \1 \2)/' |
    
    92 91
     	sort -n -k 3
    
    ... ... @@ -111,6 +110,12 @@ fi
    111 110
     # OS-specific errno values (or the default).
    
    112 111
     cat "$TEMPLATE" "$ERRNO_FILE" > $OUTPUT
    
    113 112
     
    
    113
    +cut -d ' ' -f 2 "$ERRNO_FILE" |
    
    114
    +    sed 's/\(.*\)/   "\1"/' |
    
    115
    +    sort |
    
    116
    +    cat "$TEMPLATE_PKG" - > "$OUTPUT_PKG"
    
    117
    +echo "   ))" >> "$OUTPUT_PKG"
    
    118
    +
    
    114 119
     # If -S option given, cat the output file to stdout
    
    115 120
     if [ -n "$SHOW" ]; then
    
    116 121
         cat $OUTPUT
    

  • bin/errno-pkg-template.lisp
    1
    +;;; -*- Log: C.Log -*-
    
    2
    +;;;
    
    3
    +;;; **********************************************************************
    
    4
    +;;; This code was written as part of the CMU Common Lisp project at
    
    5
    +;;; Carnegie Mellon University, and has been placed in the public domain.
    
    6
    +;;;
    
    7
    +(ext:file-comment
    
    8
    +  "$Header: src/code/exports-errno.lisp $")
    
    9
    +;;;
    
    10
    +;;; **********************************************************************
    
    11
    +;;;
    
    12
    +;;; Defines the ERRNO package and all the exported symbols.
    
    13
    +;;;
    
    14
    +;;; This file is auto-generated via bin/create-errno.sh.
    
    15
    +;;;
    
    16
    +;;; DO NOT EDIT!
    
    17
    +;;;
    
    18
    +
    
    19
    +(in-package "LISP")
    
    20
    +
    
    21
    +(intl:textdomain "cmucl")
    
    22
    +
    
    23
    +(if (find-package "ERRNO")
    
    24
    +    (rename-package "ERRNO" "ERRNO" 'nil)
    
    25
    +    (make-package "ERRNO" :nicknames 'nil :use nil))
    
    26
    +
    
    27
    +(use-package '("LISP") "ERRNO")
    
    28
    +
    
    29
    +(defpackage "ERRNO"
    
    30
    +  (:export
    
    31
    +   "ESUCCESS"

  • src/code/exports.lisp
    ... ... @@ -200,450 +200,6 @@
    200 200
     	   "MULTIPLY-BIGNUM-AND-FIXNUM" "MULTIPLY-BIGNUMS" "MULTIPLY-FIXNUMS"
    
    201 201
     	   "NEGATE-BIGNUM" "SUBTRACT-BIGNUM"))
    
    202 202
     
    
    203
    -(defpackage "ERRNO"
    
    204
    -  #+linux
    
    205
    -  (:export "E2BIG"
    
    206
    -	   "EACCES"
    
    207
    -	   "EADDRINUSE"
    
    208
    -	   "EADDRNOTAVAIL"
    
    209
    -	   "EADV"
    
    210
    -	   "EAFNOSUPPORT"
    
    211
    -	   "EAGAIN"
    
    212
    -	   "EALREADY"
    
    213
    -	   "EBADE"
    
    214
    -	   "EBADF"
    
    215
    -	   "EBADFD"
    
    216
    -	   "EBADMSG"
    
    217
    -	   "EBADR"
    
    218
    -	   "EBADRQC"
    
    219
    -	   "EBADSLT"
    
    220
    -	   "EBFONT"
    
    221
    -	   "EBUSY"
    
    222
    -	   "ECHILD"
    
    223
    -	   "ECHRNG"
    
    224
    -	   "ECOMM"
    
    225
    -	   "ECONNABORTED"
    
    226
    -	   "ECONNREFUSED"
    
    227
    -	   "ECONNRESET"
    
    228
    -	   "EDEADLK"
    
    229
    -	   "EDEADLOCK"
    
    230
    -	   "EDESTADDRREQ"
    
    231
    -	   "EDOM"
    
    232
    -	   "EDOTDOT"
    
    233
    -	   "EDQUOT"
    
    234
    -	   "EEXIST"
    
    235
    -	   "EFAULT"
    
    236
    -	   "EFBIG"
    
    237
    -	   "EHOSTDOWN"
    
    238
    -	   "EHOSTUNREACH"
    
    239
    -	   "EIDRM"
    
    240
    -	   "EILSEQ"
    
    241
    -	   "EINPROGRESS"
    
    242
    -	   "EINTR"
    
    243
    -	   "EINVAL"
    
    244
    -	   "EIO"
    
    245
    -	   "EISCONN"
    
    246
    -	   "EISDIR"
    
    247
    -	   "EISNAM"
    
    248
    -	   "EL2HLT"
    
    249
    -	   "EL2NSYNC"
    
    250
    -	   "EL3HLT"
    
    251
    -	   "EL3RST"
    
    252
    -	   "ELIBACC"
    
    253
    -	   "ELIBBAD"
    
    254
    -	   "ELIBEXEC"
    
    255
    -	   "ELIBMAX"
    
    256
    -	   "ELIBSCN"
    
    257
    -	   "ELNRNG"
    
    258
    -	   "ELOOP"
    
    259
    -	   "EMFILE"
    
    260
    -	   "EMLINK"
    
    261
    -	   "EMSGSIZE"
    
    262
    -	   "EMULTIHOP"
    
    263
    -	   "ENAMETOOLONG"
    
    264
    -	   "ENAVAIL"
    
    265
    -	   "ENETDOWN"
    
    266
    -	   "ENETRESET"
    
    267
    -	   "ENETUNREACH"
    
    268
    -	   "ENFILE"
    
    269
    -	   "ENOANO"
    
    270
    -	   "ENOBUFS"
    
    271
    -	   "ENOCSI"
    
    272
    -	   "ENODATA"
    
    273
    -	   "ENODEV"
    
    274
    -	   "ENOENT"
    
    275
    -	   "ENOEXEC"
    
    276
    -	   "ENOLCK"
    
    277
    -	   "ENOLINK"
    
    278
    -	   "ENOMEM"
    
    279
    -	   "ENOMSG"
    
    280
    -	   "ENONET"
    
    281
    -	   "ENOPKG"
    
    282
    -	   "ENOPROTOOPT"
    
    283
    -	   "ENOSPC"
    
    284
    -	   "ENOSR"
    
    285
    -	   "ENOSTR"
    
    286
    -	   "ENOSYS"
    
    287
    -	   "ENOTBLK"
    
    288
    -	   "ENOTCONN"
    
    289
    -	   "ENOTDIR"
    
    290
    -	   "ENOTEMPTY"
    
    291
    -	   "ENOTNAM"
    
    292
    -	   "ENOTSOCK"
    
    293
    -	   "ENOTTY"
    
    294
    -	   "ENOTUNIQ"
    
    295
    -	   "ENXIO"
    
    296
    -	   "EOPNOTSUPP"
    
    297
    -	   "EOVERFLOW"
    
    298
    -	   "EPERM"
    
    299
    -	   "EPFNOSUPPORT"
    
    300
    -	   "EPIPE"
    
    301
    -	   "EPROTO"
    
    302
    -	   "EPROTONOSUPPORT"
    
    303
    -	   "EPROTOTYPE"
    
    304
    -	   "ERANGE"
    
    305
    -	   "EREMCHG"
    
    306
    -	   "EREMOTE"
    
    307
    -	   "EREMOTEIO"
    
    308
    -	   "ERESTART"
    
    309
    -	   "EROFS"
    
    310
    -	   "ESHUTDOWN"
    
    311
    -	   "ESOCKTNOSUPPORT"
    
    312
    -	   "ESPIPE"
    
    313
    -	   "ESRCH"
    
    314
    -	   "ESRMNT"
    
    315
    -	   "ESTALE"
    
    316
    -	   "ESTRPIPE"
    
    317
    -	   "ESUCCESS"
    
    318
    -	   "ETIME"
    
    319
    -	   "ETIMEDOUT"
    
    320
    -	   "ETOOMANYREFS"
    
    321
    -	   "ETXTBSY"
    
    322
    -	   "EUCLEAN"
    
    323
    -	   "EUNATCH"
    
    324
    -	   "EUSERS"
    
    325
    -	   "EWOULDBLOCK"
    
    326
    -	   "EXDEV"
    
    327
    -	   "EXFULL"
    
    328
    -	   )
    
    329
    -  #+(or bsd darwin)
    
    330
    -  (:export "E2BIG"
    
    331
    -	   "EACCES"
    
    332
    -	   "EADDRINUSE"
    
    333
    -	   "EADDRNOTAVAIL"
    
    334
    -	   "EAFNOSUPPORT"
    
    335
    -	   "EAGAIN"
    
    336
    -	   "EALREADY"
    
    337
    -	   "EBADF"
    
    338
    -	   "EBUSY"
    
    339
    -	   "ECHILD"
    
    340
    -	   "ECONNABORTED"
    
    341
    -	   "ECONNREFUSED"
    
    342
    -	   "ECONNRESET"
    
    343
    -	   "EDEADLK"
    
    344
    -	   "EDESTADDRREQ"
    
    345
    -	   "EDOM"
    
    346
    -	   "EDQUOT"
    
    347
    -	   "EEXIST"
    
    348
    -	   "EFAULT"
    
    349
    -	   "EFBIG"
    
    350
    -	   "EHOSTDOWN"
    
    351
    -	   "EHOSTUNREACH"
    
    352
    -	   "EINPROGRESS"
    
    353
    -	   "EINTR"
    
    354
    -	   "EINVAL"
    
    355
    -	   "EIO"
    
    356
    -	   "EISCONN"
    
    357
    -	   "EISDIR"
    
    358
    -	   "ELOCAL"
    
    359
    -	   "ELOOP"
    
    360
    -	   "EMFILE"
    
    361
    -	   "EMLINK"
    
    362
    -	   "EMSGSIZE"
    
    363
    -	   "ENAMETOOLONG"
    
    364
    -	   "ENETDOWN"
    
    365
    -	   "ENETRESET"
    
    366
    -	   "ENETUNREACH"
    
    367
    -	   "ENFILE"
    
    368
    -	   "ENOBUFS"
    
    369
    -	   "ENODEV"
    
    370
    -	   "ENOENT"
    
    371
    -	   "ENOEXEC"
    
    372
    -	   "ENOMEM"
    
    373
    -	   "ENOPROTOOPT"
    
    374
    -	   "ENOSPC"
    
    375
    -	   "ENOTBLK"
    
    376
    -	   "ENOTCONN"
    
    377
    -	   "ENOTDIR"
    
    378
    -	   "ENOTEMPTY"
    
    379
    -	   "ENOTSOCK"
    
    380
    -	   "ENOTTY"
    
    381
    -	   "ENXIO"
    
    382
    -	   "EOPNOTSUPP"
    
    383
    -	   "EPERM"
    
    384
    -	   "EPFNOSUPPORT"
    
    385
    -	   "EPIPE"
    
    386
    -	   "EPROCLIM"
    
    387
    -	   "EPROTONOSUPPORT"
    
    388
    -	   "EPROTOTYPE"
    
    389
    -	   "ERANGE"
    
    390
    -	   "EREMOTE"
    
    391
    -	   "EROFS"
    
    392
    -	   "ESHUTDOWN"
    
    393
    -	   "ESOCKTNOSUPPORT"
    
    394
    -	   "ESPIPE"
    
    395
    -	   "ESRCH"
    
    396
    -	   "ESUCCESS"
    
    397
    -	   "ETIMEDOUT"
    
    398
    -	   "ETOOMANYREFS"
    
    399
    -	   "ETXTBSY"
    
    400
    -	   "EUSERS"
    
    401
    -	   "EVICEERR"
    
    402
    -	   "EVICEOP"
    
    403
    -	   "EWOULDBLOCK"
    
    404
    -	   "EXDEV"
    
    405
    -	   )
    
    406
    -  #+solaris
    
    407
    -  (:export "E2BIG"
    
    408
    -	   "EACCES"
    
    409
    -	   "EADDRINUSE"
    
    410
    -	   "EADDRNOTAVAIL"
    
    411
    -	   "EADV"
    
    412
    -	   "EAFNOSUPPORT"
    
    413
    -	   "EAGAIN"
    
    414
    -	   "EALREADY"
    
    415
    -	   "EBADE"
    
    416
    -	   "EBADF"
    
    417
    -	   "EBADFD"
    
    418
    -	   "EBADMSG"
    
    419
    -	   "EBADR"
    
    420
    -	   "EBADRQC"
    
    421
    -	   "EBADSLT"
    
    422
    -	   "EBFONT"
    
    423
    -	   "EBUSY"
    
    424
    -	   "ECANCELED"
    
    425
    -	   "ECHILD"
    
    426
    -	   "ECHRNG"
    
    427
    -	   "ECOMM"
    
    428
    -	   "ECONNABORTED"
    
    429
    -	   "ECONNREFUSED"
    
    430
    -	   "ECONNRESET"
    
    431
    -	   "EDEADLK"
    
    432
    -	   "EDEADLOCK"
    
    433
    -	   "EDESTADDRREQ"
    
    434
    -	   "EDOM"
    
    435
    -	   "EEXIST"
    
    436
    -	   "EFAULT"
    
    437
    -	   "EFBIG"
    
    438
    -	   "EHOSTDOWN"
    
    439
    -	   "EHOSTUNREACH"
    
    440
    -	   "EIDRM"
    
    441
    -	   "EILSEQ"
    
    442
    -	   "EINPROGRESS"
    
    443
    -	   "EINTR"
    
    444
    -	   "EINVAL"
    
    445
    -	   "EIO"
    
    446
    -	   "EISCONN"
    
    447
    -	   "EISDIR"
    
    448
    -	   "EL2HLT"
    
    449
    -	   "EL2NSYNC"
    
    450
    -	   "EL3HLT"
    
    451
    -	   "EL3RST"
    
    452
    -	   "ELIBACC"
    
    453
    -	   "ELIBBAD"
    
    454
    -	   "ELIBEXEC"
    
    455
    -	   "ELIBMAX"
    
    456
    -	   "ELIBSCN"
    
    457
    -	   "ELNRNG"
    
    458
    -	   "ELOOP"
    
    459
    -	   "EMFILE"
    
    460
    -	   "EMLINK"
    
    461
    -	   "EMSGSIZE"
    
    462
    -	   "EMULTIHOP"
    
    463
    -	   "ENAMETOOLONG"
    
    464
    -	   "ENETDOWN"
    
    465
    -	   "ENETRESET"
    
    466
    -	   "ENETUNREACH"
    
    467
    -	   "ENFILE"
    
    468
    -	   "ENOANO"
    
    469
    -	   "ENOBUFS"
    
    470
    -	   "ENOCSI"
    
    471
    -	   "ENODATA"
    
    472
    -	   "ENODEV"
    
    473
    -	   "ENOENT"
    
    474
    -	   "ENOEXEC"
    
    475
    -	   "ENOLCK"
    
    476
    -	   "ENOLINK"
    
    477
    -	   "ENOMEM"
    
    478
    -	   "ENOMSG"
    
    479
    -	   "ENONET"
    
    480
    -	   "ENOPKG"
    
    481
    -	   "ENOPROTOOPT"
    
    482
    -	   "ENOSPC"
    
    483
    -	   "ENOSR"
    
    484
    -	   "ENOSTR"
    
    485
    -	   "ENOSYS"
    
    486
    -	   "ENOTBLK"
    
    487
    -	   "ENOTCONN"
    
    488
    -	   "ENOTDIR"
    
    489
    -	   "ENOTEMPTY"
    
    490
    -	   "ENOTSOCK"
    
    491
    -	   "ENOTSUP"
    
    492
    -	   "ENOTTY"
    
    493
    -	   "ENOTUNIQ"
    
    494
    -	   "ENXIO"
    
    495
    -	   "EOPNOTSUPP"
    
    496
    -	   "EOVERFLOW"
    
    497
    -	   "EPERM"
    
    498
    -	   "EPFNOSUPPORT"
    
    499
    -	   "EPIPE"
    
    500
    -	   "EPROTO"
    
    501
    -	   "EPROTONOSUPPORT"
    
    502
    -	   "EPROTOTYPE"
    
    503
    -	   "ERANGE"
    
    504
    -	   "EREMCHG"
    
    505
    -	   "EREMOTE"
    
    506
    -	   "ERESTART"
    
    507
    -	   "EROFS"
    
    508
    -	   "ESHUTDOWN"
    
    509
    -	   "ESOCKTNOSUPPORT"
    
    510
    -	   "ESPIPE"
    
    511
    -	   "ESRCH"
    
    512
    -	   "ESRMNT"
    
    513
    -	   "ESTALE"
    
    514
    -	   "ESTRPIPE"
    
    515
    -	   "ESUCCESS"
    
    516
    -	   "ETIME"
    
    517
    -	   "ETIMEDOUT"
    
    518
    -	   "ETOOMANYREFS"
    
    519
    -	   "ETXTBSY"
    
    520
    -	   "EUNATCH"
    
    521
    -	   "EUSERS"
    
    522
    -	   "EWOULDBLOCK"
    
    523
    -	   "EXDEV"
    
    524
    -	   "EXFULL"
    
    525
    -	   )
    
    526
    -  #-(or linux solaris bsd darwin)
    
    527
    -  (:export "E2BIG"
    
    528
    -	   "EACCES"
    
    529
    -	   "EADDRINUSE"
    
    530
    -	   "EADDRNOTAVAIL"
    
    531
    -	   "EADV"
    
    532
    -	   "EAFNOSUPPORT"
    
    533
    -	   "EAGAIN"
    
    534
    -	   "EALREADY"
    
    535
    -	   "EBADE"
    
    536
    -	   "EBADF"
    
    537
    -	   "EBADFD"
    
    538
    -	   "EBADMSG"
    
    539
    -	   "EBADR"
    
    540
    -	   "EBADRQC"
    
    541
    -	   "EBADSLT"
    
    542
    -	   "EBFONT"
    
    543
    -	   "EBUSY"
    
    544
    -	   "ECANCELED"
    
    545
    -	   "ECHILD"
    
    546
    -	   "ECHRNG"
    
    547
    -	   "ECOMM"
    
    548
    -	   "ECONNABORTED"
    
    549
    -	   "ECONNREFUSED"
    
    550
    -	   "ECONNRESET"
    
    551
    -	   "EDEADLK"
    
    552
    -	   "EDEADLOCK"
    
    553
    -	   "EDESTADDRREQ"
    
    554
    -	   "EDOM"
    
    555
    -	   "EEXIST"
    
    556
    -	   "EFAULT"
    
    557
    -	   "EFBIG"
    
    558
    -	   "EHOSTDOWN"
    
    559
    -	   "EHOSTUNREACH"
    
    560
    -	   "EIDRM"
    
    561
    -	   "EILSEQ"
    
    562
    -	   "EINPROGRESS"
    
    563
    -	   "EINTR"
    
    564
    -	   "EINVAL"
    
    565
    -	   "EIO"
    
    566
    -	   "EISCONN"
    
    567
    -	   "EISDIR"
    
    568
    -	   "EL2HLT"
    
    569
    -	   "EL2NSYNC"
    
    570
    -	   "EL3HLT"
    
    571
    -	   "EL3RST"
    
    572
    -	   "ELIBACC"
    
    573
    -	   "ELIBBAD"
    
    574
    -	   "ELIBEXEC"
    
    575
    -	   "ELIBMAX"
    
    576
    -	   "ELIBSCN"
    
    577
    -	   "ELNRNG"
    
    578
    -	   "ELOOP"
    
    579
    -	   "EMFILE"
    
    580
    -	   "EMLINK"
    
    581
    -	   "EMSGSIZE"
    
    582
    -	   "EMULTIHOP"
    
    583
    -	   "ENAMETOOLONG"
    
    584
    -	   "ENETDOWN"
    
    585
    -	   "ENETRESET"
    
    586
    -	   "ENETUNREACH"
    
    587
    -	   "ENFILE"
    
    588
    -	   "ENOANO"
    
    589
    -	   "ENOBUFS"
    
    590
    -	   "ENOCSI"
    
    591
    -	   "ENODATA"
    
    592
    -	   "ENODEV"
    
    593
    -	   "ENOENT"
    
    594
    -	   "ENOEXEC"
    
    595
    -	   "ENOLCK"
    
    596
    -	   "ENOLINK"
    
    597
    -	   "ENOMEM"
    
    598
    -	   "ENOMSG"
    
    599
    -	   "ENONET"
    
    600
    -	   "ENOPKG"
    
    601
    -	   "ENOPROTOOPT"
    
    602
    -	   "ENOSPC"
    
    603
    -	   "ENOSR"
    
    604
    -	   "ENOSTR"
    
    605
    -	   "ENOSYS"
    
    606
    -	   "ENOTBLK"
    
    607
    -	   "ENOTCONN"
    
    608
    -	   "ENOTDIR"
    
    609
    -	   "ENOTEMPTY"
    
    610
    -	   "ENOTSOCK"
    
    611
    -	   "ENOTSUP"
    
    612
    -	   "ENOTTY"
    
    613
    -	   "ENOTUNIQ"
    
    614
    -	   "ENXIO"
    
    615
    -	   "EOPNOTSUPP"
    
    616
    -	   "EOVERFLOW"
    
    617
    -	   "EPERM"
    
    618
    -	   "EPFNOSUPPORT"
    
    619
    -	   "EPIPE"
    
    620
    -	   "EPROTO"
    
    621
    -	   "EPROTONOSUPPORT"
    
    622
    -	   "EPROTOTYPE"
    
    623
    -	   "ERANGE"
    
    624
    -	   "EREMCHG"
    
    625
    -	   "EREMOTE"
    
    626
    -	   "ERESTART"
    
    627
    -	   "EROFS"
    
    628
    -	   "ESHUTDOWN"
    
    629
    -	   "ESOCKTNOSUPPORT"
    
    630
    -	   "ESPIPE"
    
    631
    -	   "ESRCH"
    
    632
    -	   "ESRMNT"
    
    633
    -	   "ESTALE"
    
    634
    -	   "ESTRPIPE"
    
    635
    -	   "ESUCCESS"
    
    636
    -	   "ETIME"
    
    637
    -	   "ETIMEDOUT"
    
    638
    -	   "ETOOMANYREFS"
    
    639
    -	   "ETXTBSY"
    
    640
    -	   "EUNATCH"
    
    641
    -	   "EUSERS"
    
    642
    -	   "EWOULDBLOCK"
    
    643
    -	   "EXDEV"
    
    644
    -	   "EXFULL"
    
    645
    -	   ))
    
    646
    -
    
    647 203
     (defpackage "UNIX"
    
    648 204
       (:export "UNIX-CURRENT-DIRECTORY"
    
    649 205
     	   "UNIX-OPEN"
    
    ... ... @@ -945,7 +501,7 @@
    945 501
       (do-external-symbols (sym "ERRNO")
    
    946 502
         (shadowing-import sym "UNIX")
    
    947 503
         (export sym "UNIX")))
    
    948
    -  
    
    504
    +
    
    949 505
     (defpackage "FORMAT")
    
    950 506
     
    
    951 507
     (defpackage "COMMON-LISP"
    

  • src/tools/worldcom.lisp
    ... ... @@ -315,6 +315,7 @@
    315 315
       (comf "target:code/multi-proc"))
    
    316 316
     
    
    317 317
     (comf "target:code/setf-funs")
    
    318
    +(comf "target:code/exports-errno" :proceed t)
    
    318 319
     (comf "target:code/exports" :proceed t)
    
    319 320
     
    
    320 321
     ;;; Compile basic macros that we assume are already in the compilation
    

  • src/tools/worldload.lisp
    ... ... @@ -78,6 +78,7 @@
    78 78
     
    
    79 79
     ;;; Make sure the package structure is correct.
    
    80 80
     ;;;
    
    81
    +(maybe-byte-load "code:exports-errno")
    
    81 82
     (maybe-byte-load "code:exports")
    
    82 83
     
    
    83 84
     ;;; Load random code sources.