diff -ur oldsrc/LICENSE src/LICENSE --- oldsrc/LICENSE 2005-04-21 18:53:53.000000000 +0400 +++ src/LICENSE 2006-01-05 19:58:38.000000000 +0300 @@ -1,32 +1,52 @@ - Copyright (c) 1987,1997,2001 Prentice Hall - All rights reserved. - Redistribution and use of the MINIX operating system in source and - binary forms, with or without modification, are permitted provided - that the following conditions are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials provided - with the distribution. - - * Neither the name of Prentice Hall nor the names of the software - authors or contributors may be used to endorse or promote - products derived from this software without specific prior - written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS, AUTHORS, AND - CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL PRENTICE HALL OR ANY AUTHORS OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR - BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE - OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, - EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +License + +Copyright (c) 1987, 1997, 2006, Vrije Universiteit, Amsterdam, +The Netherlands All rights reserved. Redistribution and use of the MINIX 3 +operating system in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the Vrije Universiteit nor the names of the + software authors or contributors may be used to endorse or promote + products derived from this software without specific prior written + permission. + + * Any deviations from these conditions require written permission + from the copyright holder in advance + + +Disclaimer + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS, AUTHORS, AND + CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN + NO EVENT SHALL PRENTICE HALL OR ANY AUTHORS OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +Aggregated Software + +In addition to MINIX 3 itself, the distribution CD-ROM and this Website +contain additional software that is not part of MINIX 3 and is not +covered by this license. The licensing condtions for this additional +software are stated in the various packages. In particular, some of the +additional software falls under the GPL, and you must take care to +observe the conditions of the GPL with respect to this software. As +clearly stated in Article 2 of the GPL, when GPL and nonGPL software are +distributed together on the same medium, this aggregation does not cause +the license of either part to apply to the other part. diff -ur oldsrc/Makefile src/Makefile --- oldsrc/Makefile 2005-10-23 01:43:43.000000000 +0400 +++ src/Makefile 2006-01-17 18:09:15.000000000 +0300 @@ -1,7 +1,6 @@ # Master Makefile to compile everything in /usr/src except the system. MAKE = exec make -$(MAKEFLAGS) -GMAKE = gmake usage: @echo "" @@ -38,8 +37,7 @@ cd include && $(MAKE) install gcc libraries: - cd lib && $(GMAKE) all - cd lib && $(GMAKE) install + cd lib && $(MAKE) all install cmds: if [ -f commands/Makefile ] ; then cd commands && $(MAKE) all; fi @@ -57,7 +55,7 @@ clean:: - cd lib && $(GMAKE) $@ + cd lib && $(MAKE) $@ test ! -f commands/Makefile || { cd commands && $(MAKE) $@; } etcfiles:: diff -ur oldsrc/boot/bootimage.c src/boot/bootimage.c --- oldsrc/boot/bootimage.c 2005-09-07 20:29:38.000000000 +0400 +++ src/boot/bootimage.c 2005-12-20 17:38:14.000000000 +0300 @@ -500,6 +500,12 @@ a_data+= a_text; } + /* Read the data segment. */ + if (!get_segment(&vsec, &a_data, &addr, limit)) return; + + /* Make space for bss and stack unless... */ + if (i != KERNEL && (k_flags & K_CLAIM)) a_bss= a_stack= 0; + printf("%07lx %07lx %8ld %8ld %8ld", procp->cs, procp->ds, hdr.process.a_text, hdr.process.a_data, @@ -509,12 +515,6 @@ printf(" %s\n", hdr.name); - /* Read the data segment. */ - if (!get_segment(&vsec, &a_data, &addr, limit)) return; - - /* Make space for bss and stack unless... */ - if (i != KERNEL && (k_flags & K_CLAIM)) a_bss= a_stack= 0; - /* Note that a_data may be negative now, but we can look at it * as -a_data bss bytes. */ diff -ur oldsrc/boot/installboot.c src/boot/installboot.c --- oldsrc/boot/installboot.c 2005-05-30 19:02:52.000000000 +0400 +++ src/boot/installboot.c 2005-11-15 15:12:00.000000000 +0300 @@ -367,7 +367,7 @@ * Note: *len == 0 when an image is read. It is set right afterwards. */ { - static char buf[MAX_BLOCK_SIZE]; /* Nonvolatile block buffer. */ + static char buf[_MAX_BLOCK_SIZE]; /* Nonvolatile block buffer. */ FILE *f; off_t sec; unsigned long devsize; @@ -424,7 +424,7 @@ * vector are added to the end of the device. */ { - char buf[MAX_BLOCK_SIZE + 256], *adrp, *parmp; + char buf[_MAX_BLOCK_SIZE + 256], *adrp, *parmp; struct fileaddr { off_t address; int count; @@ -695,7 +695,7 @@ FILE *masf; unsigned long size; struct stat st; - static char buf[MAX_BLOCK_SIZE]; + static char buf[_MAX_BLOCK_SIZE]; /* Open device. */ if ((rawfd= open(rawdev= device, O_RDWR)) < 0) fatal(device); diff -ur oldsrc/boot/rawfs.c src/boot/rawfs.c --- oldsrc/boot/rawfs.c 2005-05-31 15:14:37.000000000 +0400 +++ src/boot/rawfs.c 2005-11-15 15:12:00.000000000 +0300 @@ -53,9 +53,9 @@ #endif static struct inode curfil; /* Inode of file under examination */ -static char indir[MAX_BLOCK_SIZE]; /* Single indirect block. */ -static char dindir[MAX_BLOCK_SIZE]; /* Double indirect block. */ -static char dirbuf[MAX_BLOCK_SIZE]; /* Scratch/Directory block. */ +static char indir[_MAX_BLOCK_SIZE]; /* Single indirect block. */ +static char dindir[_MAX_BLOCK_SIZE]; /* Double indirect block. */ +static char dirbuf[_MAX_BLOCK_SIZE]; /* Scratch/Directory block. */ #define scratch dirbuf static block_t a_indir, a_dindir; /* Addresses of the indirects. */ @@ -83,8 +83,8 @@ if(super.s_magic == SUPER_V2) super.s_block_size = 1024; *bs = block_size = super.s_block_size; - if(block_size < MIN_BLOCK_SIZE || - block_size > MAX_BLOCK_SIZE) { + if(block_size < _MIN_BLOCK_SIZE || + block_size > _MAX_BLOCK_SIZE) { return 0; } nr_dzones= V2_NR_DZONES; diff -ur oldsrc/drivers/Makefile src/drivers/Makefile --- oldsrc/drivers/Makefile 2005-10-22 03:18:00.000000000 +0400 +++ src/drivers/Makefile 2006-01-17 19:16:12.000000000 +0300 @@ -16,7 +16,6 @@ build: all all install depend clean: cd ./libdriver && $(MAKE) $@ - cd ./libpci && $(MAKE) $@ cd ./tty && $(MAKE) $@ cd ./memory && $(MAKE) $@ cd ./at_wini && $(MAKE) $@ @@ -29,17 +28,19 @@ cd ./bios_wini && $(MAKE) $@ cd ./cmos && $(MAKE) $@ cd ./random && $(MAKE) $@ + cd ./rescue && $(MAKE) $@ cd ./dp8390 && $(MAKE) $@ cd ./sb16 && $(MAKE) $@ cd ./lance && $(MAKE) $@ - cd ./rescue && $(MAKE) $@ + cd ./pci && $(MAKE) $@ + cd ./ti1225 && $(MAKE) $@ image: cd ./libdriver && $(MAKE) build - cd ./libpci && $(MAKE) build cd ./tty && $(MAKE) build cd ./memory && $(MAKE) build cd ./at_wini && $(MAKE) build cd ./floppy && $(MAKE) build cd ./bios_wini && $(MAKE) build cd ./log && $(MAKE) build + cd ./pci && $(MAKE) build diff -ur oldsrc/drivers/at_wini/.depend src/drivers/at_wini/.depend --- oldsrc/drivers/at_wini/.depend 2005-10-23 05:16:49.000000000 +0400 +++ src/drivers/at_wini/.depend 2006-02-20 19:10:37.000000000 +0300 @@ -2,12 +2,12 @@ at_wini.o: ../drivers.h at_wini.o: ../libdriver/driver.h at_wini.o: ../libdriver/drvlib.h -at_wini.o: ../libpci/pci.h at_wini.o: /usr/include/ansi.h at_wini.o: /usr/include/errno.h at_wini.o: /usr/include/ibm/bios.h at_wini.o: /usr/include/ibm/interrupt.h at_wini.o: /usr/include/ibm/partition.h +at_wini.o: /usr/include/ibm/pci.h at_wini.o: /usr/include/ibm/ports.h at_wini.o: /usr/include/limits.h at_wini.o: /usr/include/minix/bitmap.h diff -ur oldsrc/drivers/at_wini/Makefile src/drivers/at_wini/Makefile --- oldsrc/drivers/at_wini/Makefile 2005-08-25 12:19:09.000000000 +0400 +++ src/drivers/at_wini/Makefile 2005-12-02 17:45:09.000000000 +0300 @@ -19,18 +19,14 @@ OBJ = at_wini.o LIBDRIVER = $d/libdriver/driver.o $d/libdriver/drvlib.o -LIBPCI = $p/pci.o $p/pci_table.o # build local binary all build: $(DRIVER) -$(DRIVER): $(OBJ) $(LIBDRIVER) $(LIBPCI) - $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBDRIVER) $(LIBS) $(LIBPCI) +$(DRIVER): $(OBJ) $(LIBDRIVER) + $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBDRIVER) $(LIBS) install -S 8k $(DRIVER) -$(LIBPCI): - cd $p && $(MAKE) - $(LIBDRIVER): cd $d/libdriver && $(MAKE) diff -ur oldsrc/drivers/at_wini/at_wini.c src/drivers/at_wini/at_wini.c --- oldsrc/drivers/at_wini/at_wini.c 2005-10-21 00:26:01.000000000 +0400 +++ src/drivers/at_wini/at_wini.c 2006-01-17 20:43:34.000000000 +0300 @@ -15,11 +15,11 @@ */ #include "at_wini.h" -#include "../libpci/pci.h" #include #include #include +#include #define ATAPI_DEBUG 0 /* To debug ATAPI code. */ @@ -297,7 +297,7 @@ sa.sa_handler = SIG_MESS; sigemptyset(&sa.sa_mask); sa.sa_flags = 0; - if (sigaction(SIGTERM,&sa,NULL)<0) panic("RS","sigaction failed", errno); + if (sigaction(SIGTERM,&sa,NULL)<0) panic("AT","sigaction failed", errno); /* Set special disk parameters then call the generic main loop. */ init_params(); @@ -416,6 +416,10 @@ pci_attr_r8(devind, PCI_SCR) != 0x01) { continue; } + + printf("init_params_pci: found device %04x/%04x at index %d\n", + vid, did, devind); + /* Found a controller. * Programming interface register tells us more. */ Only in src/drivers: audio diff -ur oldsrc/drivers/bios_wini/Makefile src/drivers/bios_wini/Makefile --- oldsrc/drivers/bios_wini/Makefile 2005-08-05 22:57:19.000000000 +0400 +++ src/drivers/bios_wini/Makefile 2006-02-15 14:18:20.000000000 +0300 @@ -24,7 +24,7 @@ all build: $(DRIVER) $(DRIVER): $(OBJ) $(LIBDRIVER) $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBDRIVER) $(LIBS) - install -S 256w $(DRIVER) + install -S 4k $(DRIVER) $(LIBDRIVER): cd $d/libdriver && $(MAKE) diff -ur oldsrc/drivers/bios_wini/bios_wini.c src/drivers/bios_wini/bios_wini.c --- oldsrc/drivers/bios_wini/bios_wini.c 2005-10-22 16:24:30.000000000 +0400 +++ src/drivers/bios_wini/bios_wini.c 2006-01-17 20:43:35.000000000 +0300 @@ -98,12 +98,11 @@ { long v; struct sigaction sa; - + sa.sa_handler = SIG_MESS; sigemptyset(&sa.sa_mask); sa.sa_flags = 0; - if (sigaction(SIGTERM,&sa,NULL)<0) panic("bios_wini","sigaction failed", errno); - signal(SIGTERM, SIG_IGN); + if (sigaction(SIGTERM,&sa,NULL)<0) panic("BIOS","sigaction failed", errno); v= 0; env_parse("bios_remap_first", "d", 0, &v, 0, 1); diff -ur oldsrc/drivers/dp8390/.depend src/drivers/dp8390/.depend --- oldsrc/drivers/dp8390/.depend 2005-10-23 05:16:51.000000000 +0400 +++ src/drivers/dp8390/.depend 2006-02-20 19:10:38.000000000 +0300 @@ -100,12 +100,12 @@ ne2000.o: ne2000.h rtl8029.o: ../drivers.h -rtl8029.o: ../libpci/pci.h rtl8029.o: /usr/include/ansi.h rtl8029.o: /usr/include/assert.h rtl8029.o: /usr/include/errno.h rtl8029.o: /usr/include/ibm/bios.h rtl8029.o: /usr/include/ibm/interrupt.h +rtl8029.o: /usr/include/ibm/pci.h rtl8029.o: /usr/include/ibm/ports.h rtl8029.o: /usr/include/limits.h rtl8029.o: /usr/include/minix/bitmap.h @@ -167,67 +167,3 @@ wdeth.o: local.h wdeth.o: wdeth.c wdeth.o: wdeth.h - -../libpci/pci.o: ../libpci/../drivers.h -../libpci/pci.o: ../libpci/pci.c -../libpci/pci.o: ../libpci/pci.h -../libpci/pci.o: ../libpci/pci_amd.h -../libpci/pci.o: ../libpci/pci_intel.h -../libpci/pci.o: ../libpci/pci_sis.h -../libpci/pci.o: ../libpci/pci_via.h -../libpci/pci.o: /usr/include/ansi.h -../libpci/pci.o: /usr/include/assert.h -../libpci/pci.o: /usr/include/errno.h -../libpci/pci.o: /usr/include/ibm/bios.h -../libpci/pci.o: /usr/include/ibm/interrupt.h -../libpci/pci.o: /usr/include/ibm/ports.h -../libpci/pci.o: /usr/include/limits.h -../libpci/pci.o: /usr/include/minix/bitmap.h -../libpci/pci.o: /usr/include/minix/callnr.h -../libpci/pci.o: /usr/include/minix/com.h -../libpci/pci.o: /usr/include/minix/config.h -../libpci/pci.o: /usr/include/minix/const.h -../libpci/pci.o: /usr/include/minix/devio.h -../libpci/pci.o: /usr/include/minix/dmap.h -../libpci/pci.o: /usr/include/minix/ipc.h -../libpci/pci.o: /usr/include/minix/sys_config.h -../libpci/pci.o: /usr/include/minix/syslib.h -../libpci/pci.o: /usr/include/minix/sysutil.h -../libpci/pci.o: /usr/include/minix/type.h -../libpci/pci.o: /usr/include/signal.h -../libpci/pci.o: /usr/include/stddef.h -../libpci/pci.o: /usr/include/stdio.h -../libpci/pci.o: /usr/include/stdlib.h -../libpci/pci.o: /usr/include/string.h -../libpci/pci.o: /usr/include/sys/dir.h -../libpci/pci.o: /usr/include/sys/types.h -../libpci/pci.o: /usr/include/unistd.h - -../libpci/pci_table.o: ../libpci/../drivers.h -../libpci/pci_table.o: ../libpci/pci.h -../libpci/pci_table.o: ../libpci/pci_table.c -../libpci/pci_table.o: /usr/include/ansi.h -../libpci/pci_table.o: /usr/include/errno.h -../libpci/pci_table.o: /usr/include/ibm/bios.h -../libpci/pci_table.o: /usr/include/ibm/interrupt.h -../libpci/pci_table.o: /usr/include/ibm/ports.h -../libpci/pci_table.o: /usr/include/limits.h -../libpci/pci_table.o: /usr/include/minix/bitmap.h -../libpci/pci_table.o: /usr/include/minix/callnr.h -../libpci/pci_table.o: /usr/include/minix/com.h -../libpci/pci_table.o: /usr/include/minix/config.h -../libpci/pci_table.o: /usr/include/minix/const.h -../libpci/pci_table.o: /usr/include/minix/devio.h -../libpci/pci_table.o: /usr/include/minix/dmap.h -../libpci/pci_table.o: /usr/include/minix/ipc.h -../libpci/pci_table.o: /usr/include/minix/sys_config.h -../libpci/pci_table.o: /usr/include/minix/syslib.h -../libpci/pci_table.o: /usr/include/minix/sysutil.h -../libpci/pci_table.o: /usr/include/minix/type.h -../libpci/pci_table.o: /usr/include/signal.h -../libpci/pci_table.o: /usr/include/stddef.h -../libpci/pci_table.o: /usr/include/stdlib.h -../libpci/pci_table.o: /usr/include/string.h -../libpci/pci_table.o: /usr/include/sys/dir.h -../libpci/pci_table.o: /usr/include/sys/types.h -../libpci/pci_table.o: /usr/include/unistd.h diff -ur oldsrc/drivers/dp8390/Makefile src/drivers/dp8390/Makefile --- oldsrc/drivers/dp8390/Makefile 2005-09-30 17:02:17.000000000 +0400 +++ src/drivers/dp8390/Makefile 2005-12-02 17:45:09.000000000 +0300 @@ -16,17 +16,13 @@ LIBS = -lsys -lsysutil -ltimers OBJ = 3c503.o dp8390.o ne2000.o rtl8029.o wdeth.o -LIBPCI = $d/libpci/pci.o $d/libpci/pci_table.o # build local binary all build: $(DRIVER) -$(DRIVER): $(OBJ) $(LIBPCI) - $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBPCI) $(LIBS) +$(DRIVER): $(OBJ) + $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBS) install -S 4096 $(DRIVER) -$(LIBPCI): - cd $d/libpci && $(MAKE) - # install with other drivers install: /usr/sbin/$(DRIVER) /usr/sbin/$(DRIVER): $(DRIVER) @@ -37,7 +33,7 @@ rm -f *.o *.bak $(DRIVER) depend: - /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c ../libpci/*.c > .depend + /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c > .depend # Include generated dependencies. include .depend diff -ur oldsrc/drivers/dp8390/rtl8029.c src/drivers/dp8390/rtl8029.c --- oldsrc/drivers/dp8390/rtl8029.c 2005-08-09 15:23:41.000000000 +0400 +++ src/drivers/dp8390/rtl8029.c 2005-12-02 17:45:09.000000000 +0300 @@ -12,9 +12,9 @@ #include #include #include +#include #include "assert.h" -#include "../libpci/pci.h" #include "local.h" #include "dp8390.h" diff -ur oldsrc/drivers/floppy/floppy.c src/drivers/floppy/floppy.c --- oldsrc/drivers/floppy/floppy.c 2005-10-22 16:25:55.000000000 +0400 +++ src/drivers/floppy/floppy.c 2005-10-12 18:31:39.000000000 +0400 @@ -292,13 +292,6 @@ struct floppy *fp; int s; - struct sigaction sa; - - sa.sa_handler = SIG_MESS; - sigemptyset(&sa.sa_mask); - sa.sa_flags = 0; - if (sigaction(SIGTERM,&sa,NULL)<0) panic("floppy","sigaction failed", errno); - signal(SIGTERM, SIG_IGN); f_next_timeout = TMR_NEVER; tmr_inittimer(&f_tmr_timeout); diff -ur oldsrc/drivers/fxp/.depend src/drivers/fxp/.depend --- oldsrc/drivers/fxp/.depend 2005-10-23 05:16:49.000000000 +0400 +++ src/drivers/fxp/.depend 2006-02-20 19:10:37.000000000 +0300 @@ -1,11 +1,11 @@ fxp.o: ../drivers.h -fxp.o: ../libpci/pci.h fxp.o: /usr/include/ansi.h fxp.o: /usr/include/assert.h fxp.o: /usr/include/errno.h fxp.o: /usr/include/ibm/bios.h fxp.o: /usr/include/ibm/interrupt.h +fxp.o: /usr/include/ibm/pci.h fxp.o: /usr/include/ibm/ports.h fxp.o: /usr/include/limits.h fxp.o: /usr/include/minix/bitmap.h @@ -63,67 +63,3 @@ mii.o: /usr/include/unistd.h mii.o: mii.c mii.o: mii.h - -../libpci/pci.o: ../libpci/../drivers.h -../libpci/pci.o: ../libpci/pci.c -../libpci/pci.o: ../libpci/pci.h -../libpci/pci.o: ../libpci/pci_amd.h -../libpci/pci.o: ../libpci/pci_intel.h -../libpci/pci.o: ../libpci/pci_sis.h -../libpci/pci.o: ../libpci/pci_via.h -../libpci/pci.o: /usr/include/ansi.h -../libpci/pci.o: /usr/include/assert.h -../libpci/pci.o: /usr/include/errno.h -../libpci/pci.o: /usr/include/ibm/bios.h -../libpci/pci.o: /usr/include/ibm/interrupt.h -../libpci/pci.o: /usr/include/ibm/ports.h -../libpci/pci.o: /usr/include/limits.h -../libpci/pci.o: /usr/include/minix/bitmap.h -../libpci/pci.o: /usr/include/minix/callnr.h -../libpci/pci.o: /usr/include/minix/com.h -../libpci/pci.o: /usr/include/minix/config.h -../libpci/pci.o: /usr/include/minix/const.h -../libpci/pci.o: /usr/include/minix/devio.h -../libpci/pci.o: /usr/include/minix/dmap.h -../libpci/pci.o: /usr/include/minix/ipc.h -../libpci/pci.o: /usr/include/minix/sys_config.h -../libpci/pci.o: /usr/include/minix/syslib.h -../libpci/pci.o: /usr/include/minix/sysutil.h -../libpci/pci.o: /usr/include/minix/type.h -../libpci/pci.o: /usr/include/signal.h -../libpci/pci.o: /usr/include/stddef.h -../libpci/pci.o: /usr/include/stdio.h -../libpci/pci.o: /usr/include/stdlib.h -../libpci/pci.o: /usr/include/string.h -../libpci/pci.o: /usr/include/sys/dir.h -../libpci/pci.o: /usr/include/sys/types.h -../libpci/pci.o: /usr/include/unistd.h - -../libpci/pci_table.o: ../libpci/../drivers.h -../libpci/pci_table.o: ../libpci/pci.h -../libpci/pci_table.o: ../libpci/pci_table.c -../libpci/pci_table.o: /usr/include/ansi.h -../libpci/pci_table.o: /usr/include/errno.h -../libpci/pci_table.o: /usr/include/ibm/bios.h -../libpci/pci_table.o: /usr/include/ibm/interrupt.h -../libpci/pci_table.o: /usr/include/ibm/ports.h -../libpci/pci_table.o: /usr/include/limits.h -../libpci/pci_table.o: /usr/include/minix/bitmap.h -../libpci/pci_table.o: /usr/include/minix/callnr.h -../libpci/pci_table.o: /usr/include/minix/com.h -../libpci/pci_table.o: /usr/include/minix/config.h -../libpci/pci_table.o: /usr/include/minix/const.h -../libpci/pci_table.o: /usr/include/minix/devio.h -../libpci/pci_table.o: /usr/include/minix/dmap.h -../libpci/pci_table.o: /usr/include/minix/ipc.h -../libpci/pci_table.o: /usr/include/minix/sys_config.h -../libpci/pci_table.o: /usr/include/minix/syslib.h -../libpci/pci_table.o: /usr/include/minix/sysutil.h -../libpci/pci_table.o: /usr/include/minix/type.h -../libpci/pci_table.o: /usr/include/signal.h -../libpci/pci_table.o: /usr/include/stddef.h -../libpci/pci_table.o: /usr/include/stdlib.h -../libpci/pci_table.o: /usr/include/string.h -../libpci/pci_table.o: /usr/include/sys/dir.h -../libpci/pci_table.o: /usr/include/sys/types.h -../libpci/pci_table.o: /usr/include/unistd.h diff -ur oldsrc/drivers/fxp/Makefile src/drivers/fxp/Makefile --- oldsrc/drivers/fxp/Makefile 2005-09-30 17:02:17.000000000 +0400 +++ src/drivers/fxp/Makefile 2005-12-02 17:45:09.000000000 +0300 @@ -16,17 +16,13 @@ LIBS = -lsys -lsysutil -ltimers OBJ = fxp.o mii.o -LIBPCI = $d/libpci/pci.o $d/libpci/pci_table.o # build local binary all build: $(DRIVER) -$(DRIVER): $(OBJ) $(LIBPCI) - $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBPCI) $(LIBS) +$(DRIVER): $(OBJ) + $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBS) install -S 4096 $(DRIVER) -$(LIBPCI): - cd $d/libpci && $(MAKE) - # install with other drivers install: /usr/sbin/$(DRIVER) /usr/sbin/$(DRIVER): $(DRIVER) @@ -37,7 +33,7 @@ rm -f *.o *.bak $(DRIVER) depend: - /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c ../libpci/*.c > .depend + /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c > .depend # Include generated dependencies. include .depend diff -ur oldsrc/drivers/fxp/fxp.c src/drivers/fxp/fxp.c --- oldsrc/drivers/fxp/fxp.c 2005-10-21 22:20:26.000000000 +0400 +++ src/drivers/fxp/fxp.c 2005-12-02 17:45:09.000000000 +0300 @@ -46,6 +46,7 @@ #include #include #include +#include #include @@ -58,7 +59,6 @@ #define vm_1phys2bus(p) (p) #include "assert.h" -#include "../libpci/pci.h" #include "fxp.h" #include "mii.h" @@ -551,7 +551,7 @@ pci_reserve(devind); bar= pci_attr_r32(devind, PCI_BAR_2) & 0xffffffe0; - if ((bar & 0x3ff) >= 0x100-32 || bar < 0x400) + if (bar < 0x400) { panic("FXP","fxp_probe: base address is not properly configured", NO_NUM); @@ -585,12 +585,24 @@ case FXP_REV_82559C: str= "82559C"; /* 0x08 */ fp->fxp_type= FT_82559; break; - case FXP_REV_82559ERA: str= "82559ER-A"; break; /* 0x09 */ - case FXP_REV_82550_1: str= "82550(1)"; break; /* 0x0C */ - case FXP_REV_82550_2: str= "82550(2)"; break; /* 0x0D */ - case FXP_REV_82550_3: str= "82550(3)"; break; /* 0x0E */ - case FXP_REV_82551_1: str= "82551(1)"; break; /* 0x0F */ - case FXP_REV_82551_2: str= "82551(2)"; break; /* 0x10 */ + case FXP_REV_82559ERA: str= "82559ER-A"; /* 0x09 */ + fp->fxp_type= FT_82559; + break; + case FXP_REV_82550_1: str= "82550(1)"; /* 0x0C */ + fp->fxp_type= FT_82559; + break; + case FXP_REV_82550_2: str= "82550(2)"; /* 0x0D */ + fp->fxp_type= FT_82559; + break; + case FXP_REV_82550_3: str= "82550(3)"; /* 0x0E */ + fp->fxp_type= FT_82559; + break; + case FXP_REV_82551_1: str= "82551(1)"; /* 0x0F */ + fp->fxp_type= FT_82559; + break; + case FXP_REV_82551_2: str= "82551(2)"; /* 0x10 */ + fp->fxp_type= FT_82559; + break; } #if VERBOSE diff -ur oldsrc/drivers/lance/.depend src/drivers/lance/.depend --- oldsrc/drivers/lance/.depend 2005-10-23 05:16:51.000000000 +0400 +++ src/drivers/lance/.depend 2006-02-20 19:10:38.000000000 +0300 @@ -1,11 +1,11 @@ lance.o: ../drivers.h -lance.o: ../libpci/pci.h lance.o: /usr/include/ansi.h lance.o: /usr/include/assert.h lance.o: /usr/include/errno.h lance.o: /usr/include/ibm/bios.h lance.o: /usr/include/ibm/interrupt.h +lance.o: /usr/include/ibm/pci.h lance.o: /usr/include/ibm/ports.h lance.o: /usr/include/limits.h lance.o: /usr/include/minix/bitmap.h @@ -35,67 +35,3 @@ lance.o: /usr/include/unistd.h lance.o: lance.c lance.o: lance.h - -../libpci/pci.o: ../libpci/../drivers.h -../libpci/pci.o: ../libpci/pci.c -../libpci/pci.o: ../libpci/pci.h -../libpci/pci.o: ../libpci/pci_amd.h -../libpci/pci.o: ../libpci/pci_intel.h -../libpci/pci.o: ../libpci/pci_sis.h -../libpci/pci.o: ../libpci/pci_via.h -../libpci/pci.o: /usr/include/ansi.h -../libpci/pci.o: /usr/include/assert.h -../libpci/pci.o: /usr/include/errno.h -../libpci/pci.o: /usr/include/ibm/bios.h -../libpci/pci.o: /usr/include/ibm/interrupt.h -../libpci/pci.o: /usr/include/ibm/ports.h -../libpci/pci.o: /usr/include/limits.h -../libpci/pci.o: /usr/include/minix/bitmap.h -../libpci/pci.o: /usr/include/minix/callnr.h -../libpci/pci.o: /usr/include/minix/com.h -../libpci/pci.o: /usr/include/minix/config.h -../libpci/pci.o: /usr/include/minix/const.h -../libpci/pci.o: /usr/include/minix/devio.h -../libpci/pci.o: /usr/include/minix/dmap.h -../libpci/pci.o: /usr/include/minix/ipc.h -../libpci/pci.o: /usr/include/minix/sys_config.h -../libpci/pci.o: /usr/include/minix/syslib.h -../libpci/pci.o: /usr/include/minix/sysutil.h -../libpci/pci.o: /usr/include/minix/type.h -../libpci/pci.o: /usr/include/signal.h -../libpci/pci.o: /usr/include/stddef.h -../libpci/pci.o: /usr/include/stdio.h -../libpci/pci.o: /usr/include/stdlib.h -../libpci/pci.o: /usr/include/string.h -../libpci/pci.o: /usr/include/sys/dir.h -../libpci/pci.o: /usr/include/sys/types.h -../libpci/pci.o: /usr/include/unistd.h - -../libpci/pci_table.o: ../libpci/../drivers.h -../libpci/pci_table.o: ../libpci/pci.h -../libpci/pci_table.o: ../libpci/pci_table.c -../libpci/pci_table.o: /usr/include/ansi.h -../libpci/pci_table.o: /usr/include/errno.h -../libpci/pci_table.o: /usr/include/ibm/bios.h -../libpci/pci_table.o: /usr/include/ibm/interrupt.h -../libpci/pci_table.o: /usr/include/ibm/ports.h -../libpci/pci_table.o: /usr/include/limits.h -../libpci/pci_table.o: /usr/include/minix/bitmap.h -../libpci/pci_table.o: /usr/include/minix/callnr.h -../libpci/pci_table.o: /usr/include/minix/com.h -../libpci/pci_table.o: /usr/include/minix/config.h -../libpci/pci_table.o: /usr/include/minix/const.h -../libpci/pci_table.o: /usr/include/minix/devio.h -../libpci/pci_table.o: /usr/include/minix/dmap.h -../libpci/pci_table.o: /usr/include/minix/ipc.h -../libpci/pci_table.o: /usr/include/minix/sys_config.h -../libpci/pci_table.o: /usr/include/minix/syslib.h -../libpci/pci_table.o: /usr/include/minix/sysutil.h -../libpci/pci_table.o: /usr/include/minix/type.h -../libpci/pci_table.o: /usr/include/signal.h -../libpci/pci_table.o: /usr/include/stddef.h -../libpci/pci_table.o: /usr/include/stdlib.h -../libpci/pci_table.o: /usr/include/string.h -../libpci/pci_table.o: /usr/include/sys/dir.h -../libpci/pci_table.o: /usr/include/sys/types.h -../libpci/pci_table.o: /usr/include/unistd.h diff -ur oldsrc/drivers/lance/Makefile src/drivers/lance/Makefile --- oldsrc/drivers/lance/Makefile 2005-10-22 15:07:23.000000000 +0400 +++ src/drivers/lance/Makefile 2005-12-02 17:45:09.000000000 +0300 @@ -17,16 +17,12 @@ #-lutils -ltimers OBJ = lance.o -LIBPCI = $d/libpci/pci.o $d/libpci/pci_table.o # build local binary all build: $(DRIVER) -$(DRIVER): $(OBJ) $(LIBPCI) - $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBPCI) $(LIBS) - install -S 8k $(DRIVER) - -$(LIBPCI): - cd $d/libpci && $(MAKE) +$(DRIVER): $(OBJ) + $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBS) + install -S 1k $(DRIVER) # install with other drivers install: /usr/sbin/$(DRIVER) @@ -38,7 +34,7 @@ rm -f *.o *.bak $(DRIVER) depend: - /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c ../libpci/*.c > .depend + /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c > .depend # Include generated dependencies. include .depend diff -ur oldsrc/drivers/lance/lance.c src/drivers/lance/lance.c --- oldsrc/drivers/lance/lance.c 2005-10-21 22:20:44.000000000 +0400 +++ src/drivers/lance/lance.c 2005-12-02 17:45:09.000000000 +0300 @@ -52,9 +52,9 @@ #include #include +#include #include "lance.h" -#include "../libpci/pci.h" /*#include "proc.h"*/ #include Only in oldsrc/drivers: libpci diff -ur oldsrc/drivers/memory/.depend src/drivers/memory/.depend --- oldsrc/drivers/memory/.depend 2005-10-23 05:16:49.000000000 +0400 +++ src/drivers/memory/.depend 2006-02-20 19:10:37.000000000 +0300 @@ -1,4 +1,8 @@ +imgrd.o: /usr/include/stddef.h +imgrd.o: imgrd.c +imgrd.o: local.h + memory.o: ../../kernel/config.h memory.o: ../../kernel/const.h memory.o: ../../kernel/type.h @@ -34,7 +38,9 @@ memory.o: /usr/include/sys/dir.h memory.o: /usr/include/sys/ioc_memory.h memory.o: /usr/include/sys/types.h +memory.o: /usr/include/sys/vm.h memory.o: /usr/include/unistd.h +memory.o: local.h memory.o: memory.c ../libdriver/driver.o: ../libdriver/../drivers.h diff -ur oldsrc/drivers/memory/Makefile src/drivers/memory/Makefile --- oldsrc/drivers/memory/Makefile 2005-10-12 19:05:59.000000000 +0400 +++ src/drivers/memory/Makefile 2006-02-17 18:03:38.000000000 +0300 @@ -16,32 +16,39 @@ LDFLAGS = -i LIBS = -lsys -lsysutil -OBJ = memory.o +OBJ = memory.o imgrd.o LIBDRIVER = $d/libdriver/driver.o # build local binary all build: $(DRIVER) -$(DRIVER): $(OBJ) $(LIBDRIVER) + +$(DRIVER): ramdisk_image $(OBJ) $(LIBDRIVER) $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBDRIVER) $(LIBS) install -S 1024w $(DRIVER) +imgrd.o: ramdisk/image.c + $(LIBDRIVER): cd $d/libdriver && $(MAKE) +ramdisk_image: + cd ramdisk && make + binsizes big # install with other drivers -install: /sbin/$(DRIVER) -/sbin/$(DRIVER): $(DRIVER) +install: /usr/sbin/$(DRIVER) +/usr/sbin/$(DRIVER): $(DRIVER) install -o root -cs $? $@ # clean up local files clean: rm -f $(DRIVER) *.o *.bak - + cd ramdisk && make clean depend: /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c ../libdriver/*.c > .depend + cd ramdisk && make depend # Include generated dependencies. include .depend Only in src/drivers/memory: imgrd.c Only in src/drivers/memory: local.h diff -ur oldsrc/drivers/memory/memory.c src/drivers/memory/memory.c --- oldsrc/drivers/memory/memory.c 2005-10-22 00:04:00.000000000 +0400 +++ src/drivers/memory/memory.c 2006-02-15 14:18:20.000000000 +0300 @@ -21,9 +21,13 @@ #include "../../kernel/config.h" #include "../../kernel/type.h" +#include + #include "assert.h" -#define NR_DEVS 6 /* number of minor devices */ +#include "local.h" + +#define NR_DEVS 7 /* number of minor devices */ PRIVATE struct device m_geom[NR_DEVS]; /* base and size of each device */ PRIVATE int m_seg[NR_DEVS]; /* segment index of each device */ @@ -73,6 +77,13 @@ PUBLIC int main(void) { /* Main program. Initialize the memory driver and start the main loop. */ + struct sigaction sa; + + sa.sa_handler = SIG_MESS; + sigemptyset(&sa.sa_mask); + sa.sa_flags = 0; + if (sigaction(SIGTERM,&sa,NULL)<0) panic("MEM","sigaction failed", errno); + m_init(); driver_task(&m_dtab); return(OK); @@ -182,6 +193,19 @@ } break; + case IMGRD_DEV: + if (position >= dv_size) return(OK); /* check for EOF */ + if (position + count > dv_size) count = dv_size - position; + + if (opcode == DEV_GATHER) { /* copy actual data */ + sys_vircopy(SELF, D, (vir_bytes)&imgrd[position], + proc_nr, D, user_vir, count); + } else { + sys_vircopy(proc_nr, D, user_vir, + SELF, D, (vir_bytes)&imgrd[position], count); + } + break; + /* Unknown (illegal) minor device. */ default: return(EINVAL); @@ -203,8 +227,20 @@ struct driver *dp; message *m_ptr; { + int r; + /* Check device number on open. */ if (m_prepare(m_ptr->DEVICE) == NIL_DEV) return(ENXIO); + if (m_device == MEM_DEV) + { + r = sys_enable_iop(m_ptr->PROC_NR); + if (r != OK) + { + printf("m_do_open: sys_enable_iop failed for %d: %d\n", + m_ptr->PROC_NR, r); + return r; + } + } return(OK); } @@ -257,6 +293,10 @@ printf("MEM stored retrieved details as new RAM disk\n"); } + /* Ramdisk image built into the memory driver */ + m_geom[IMGRD_DEV].dv_base= cvul64(0); + m_geom[IMGRD_DEV].dv_size= cvul64(imgrd_size); + /* Initialize /dev/zero. Simply write zeros into the buffer. */ for (i=0; iREQUEST) { case MIOCRAMSIZE: { - /* FS wants to create a new RAM disk with the given size. */ - phys_bytes ramdev_size; + /* Someone wants to create a new RAM disk with the given size. */ + static int first_time= 1; + + u32_t ramdev_size; phys_bytes ramdev_base; message m; int s; - /* Only FS can create RAM disk, and only on RAM disk device. */ - if (m_ptr->PROC_NR != FS_PROC_NR) return(EPERM); + /* A ramdisk can be created only once, and only on RAM disk device. */ + if (!first_time) return(EPERM); if (m_ptr->DEVICE != RAM_DEV) return(EINVAL); if ((dv = m_prepare(m_ptr->DEVICE)) == NIL_DEV) return(ENXIO); +#if 0 + ramdev_size= m_ptr->POSITION; +#else + /* Get request structure */ + s= sys_vircopy(m_ptr->PROC_NR, D, (vir_bytes)m_ptr->ADDRESS, + SELF, D, (vir_bytes)&ramdev_size, sizeof(ramdev_size)); + if (s != OK) + return s; +#endif + printf("allocating ramdisk of size 0x%x\n", ramdev_size); + /* Try to allocate a piece of memory for the RAM disk. */ - ramdev_size = m_ptr->POSITION; if (allocmem(ramdev_size, &ramdev_base) < 0) { report("MEM", "warning, allocmem failed", errno); return(ENOMEM); @@ -326,8 +378,10 @@ if (OK != (s = _taskcall(DS_PROC_NR, DS_PUBLISH, &m))) { panic("MEM","Couldn't store RAM disk details at DS.",s); } +#if DEBUG printf("MEM stored size %u and base %u at DS, status %d\n", ramdev_size, ramdev_base, s); +#endif if (OK != (s=sys_segctl(&m_seg[RAM_DEV], (u16_t *) &s, (vir_bytes *) &s, ramdev_base, ramdev_size))) { @@ -336,8 +390,29 @@ dv->dv_base = cvul64(ramdev_base); dv->dv_size = cvul64(ramdev_size); + /* first_time= 0; */ break; } + case MIOCMAP: + case MIOCUNMAP: { + int r, do_map; + struct mapreq mapreq; + + if ((*dp->dr_prepare)(m_ptr->DEVICE) == NIL_DEV) return(ENXIO); + if (m_device != MEM_DEV) + return ENOTTY; + + do_map= (m_ptr->REQUEST == MIOCMAP); /* else unmap */ + + /* Get request structure */ + r= sys_vircopy(m_ptr->PROC_NR, D, (vir_bytes)m_ptr->ADDRESS, + SELF, D, (vir_bytes)&mapreq, sizeof(mapreq)); + if (r != OK) + return r; + r= sys_vm_map(m_ptr->PROC_NR, do_map, + (phys_bytes)mapreq.base, mapreq.size, mapreq.offset); + return r; + } default: return(do_diocntl(&m_dtab, m_ptr)); Only in src/drivers/memory: ramdisk Only in src/drivers: pci diff -ur oldsrc/drivers/rtl8139/.depend src/drivers/rtl8139/.depend --- oldsrc/drivers/rtl8139/.depend 2005-10-23 05:16:49.000000000 +0400 +++ src/drivers/rtl8139/.depend 2006-02-20 19:10:37.000000000 +0300 @@ -3,7 +3,6 @@ rtl8139.o: ../../kernel/const.h rtl8139.o: ../../kernel/type.h rtl8139.o: ../drivers.h -rtl8139.o: ../libpci/pci.h rtl8139.o: /usr/include/ansi.h rtl8139.o: /usr/include/assert.h rtl8139.o: /usr/include/errno.h @@ -11,6 +10,7 @@ rtl8139.o: /usr/include/ibm/bios.h rtl8139.o: /usr/include/ibm/cpu.h rtl8139.o: /usr/include/ibm/interrupt.h +rtl8139.o: /usr/include/ibm/pci.h rtl8139.o: /usr/include/ibm/portio.h rtl8139.o: /usr/include/ibm/ports.h rtl8139.o: /usr/include/limits.h @@ -43,67 +43,3 @@ rtl8139.o: /usr/include/unistd.h rtl8139.o: rtl8139.c rtl8139.o: rtl8139.h - -../libpci/pci.o: ../libpci/../drivers.h -../libpci/pci.o: ../libpci/pci.c -../libpci/pci.o: ../libpci/pci.h -../libpci/pci.o: ../libpci/pci_amd.h -../libpci/pci.o: ../libpci/pci_intel.h -../libpci/pci.o: ../libpci/pci_sis.h -../libpci/pci.o: ../libpci/pci_via.h -../libpci/pci.o: /usr/include/ansi.h -../libpci/pci.o: /usr/include/assert.h -../libpci/pci.o: /usr/include/errno.h -../libpci/pci.o: /usr/include/ibm/bios.h -../libpci/pci.o: /usr/include/ibm/interrupt.h -../libpci/pci.o: /usr/include/ibm/ports.h -../libpci/pci.o: /usr/include/limits.h -../libpci/pci.o: /usr/include/minix/bitmap.h -../libpci/pci.o: /usr/include/minix/callnr.h -../libpci/pci.o: /usr/include/minix/com.h -../libpci/pci.o: /usr/include/minix/config.h -../libpci/pci.o: /usr/include/minix/const.h -../libpci/pci.o: /usr/include/minix/devio.h -../libpci/pci.o: /usr/include/minix/dmap.h -../libpci/pci.o: /usr/include/minix/ipc.h -../libpci/pci.o: /usr/include/minix/sys_config.h -../libpci/pci.o: /usr/include/minix/syslib.h -../libpci/pci.o: /usr/include/minix/sysutil.h -../libpci/pci.o: /usr/include/minix/type.h -../libpci/pci.o: /usr/include/signal.h -../libpci/pci.o: /usr/include/stddef.h -../libpci/pci.o: /usr/include/stdio.h -../libpci/pci.o: /usr/include/stdlib.h -../libpci/pci.o: /usr/include/string.h -../libpci/pci.o: /usr/include/sys/dir.h -../libpci/pci.o: /usr/include/sys/types.h -../libpci/pci.o: /usr/include/unistd.h - -../libpci/pci_table.o: ../libpci/../drivers.h -../libpci/pci_table.o: ../libpci/pci.h -../libpci/pci_table.o: ../libpci/pci_table.c -../libpci/pci_table.o: /usr/include/ansi.h -../libpci/pci_table.o: /usr/include/errno.h -../libpci/pci_table.o: /usr/include/ibm/bios.h -../libpci/pci_table.o: /usr/include/ibm/interrupt.h -../libpci/pci_table.o: /usr/include/ibm/ports.h -../libpci/pci_table.o: /usr/include/limits.h -../libpci/pci_table.o: /usr/include/minix/bitmap.h -../libpci/pci_table.o: /usr/include/minix/callnr.h -../libpci/pci_table.o: /usr/include/minix/com.h -../libpci/pci_table.o: /usr/include/minix/config.h -../libpci/pci_table.o: /usr/include/minix/const.h -../libpci/pci_table.o: /usr/include/minix/devio.h -../libpci/pci_table.o: /usr/include/minix/dmap.h -../libpci/pci_table.o: /usr/include/minix/ipc.h -../libpci/pci_table.o: /usr/include/minix/sys_config.h -../libpci/pci_table.o: /usr/include/minix/syslib.h -../libpci/pci_table.o: /usr/include/minix/sysutil.h -../libpci/pci_table.o: /usr/include/minix/type.h -../libpci/pci_table.o: /usr/include/signal.h -../libpci/pci_table.o: /usr/include/stddef.h -../libpci/pci_table.o: /usr/include/stdlib.h -../libpci/pci_table.o: /usr/include/string.h -../libpci/pci_table.o: /usr/include/sys/dir.h -../libpci/pci_table.o: /usr/include/sys/types.h -../libpci/pci_table.o: /usr/include/unistd.h diff -ur oldsrc/drivers/rtl8139/Makefile src/drivers/rtl8139/Makefile --- oldsrc/drivers/rtl8139/Makefile 2005-07-19 17:21:49.000000000 +0400 +++ src/drivers/rtl8139/Makefile 2005-12-02 17:45:10.000000000 +0300 @@ -17,18 +17,13 @@ LIBS = -lsys -lsysutil -ltimers OBJ = rtl8139.o -LIBPCI = $d/libpci/pci.o $d/libpci/pci_table.o - # build local binary all build: $(DRIVER) -$(DRIVER): $(OBJ) $(PCI) - $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBPCI) $(LIBS) +$(DRIVER): $(OBJ) + $(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBS) install -S 50kw $(DRIVER) -$(PCI): - cd $d/libpci && $(MAKE) - # install with other drivers install: /usr/sbin/$(DRIVER) /usr/sbin/$(DRIVER): $(DRIVER) @@ -39,7 +34,7 @@ rm -f $(DRIVER) *.o *.bak depend: - /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c ../libpci/*.c > .depend + /usr/bin/mkdep "$(CC) -E $(CPPFLAGS)" *.c > .depend # Include generated dependencies. include .depend diff -ur oldsrc/drivers/rtl8139/rtl8139.c src/drivers/rtl8139/rtl8139.c --- oldsrc/drivers/rtl8139/rtl8139.c 2005-10-21 18:39:21.000000000 +0400 +++ src/drivers/rtl8139/rtl8139.c 2005-12-02 17:45:10.000000000 +0300 @@ -64,6 +64,7 @@ #include #include #include +#include #include #include @@ -81,9 +82,8 @@ #define printW() ((void)0) #define vm_1phys2bus(p) (p) -#define VERBOSE 0 /* display message during init */ +#define VERBOSE 1 /* display message during init */ -#include "../libpci/pci.h" #include "rtl8139.h" #define RX_BUFSIZE RL_RCR_RBLEN_64K_SIZE @@ -182,14 +182,14 @@ FORWARD _PROTOTYPE( unsigned my_inw, (U16_t port) ); FORWARD _PROTOTYPE( unsigned my_inl, (U16_t port) ); static unsigned my_inb(U16_t port) { - U8_t value; + u32_t value; int s; if ((s=sys_inb(port, &value)) !=OK) printf("RTL8139: warning, sys_inb failed: %d\n", s); return value; } static unsigned my_inw(U16_t port) { - U16_t value; + u32_t value; int s; if ((s=sys_inw(port, &value)) !=OK) printf("RTL8139: warning, sys_inw failed: %d\n", s); @@ -648,9 +648,11 @@ pci_reserve(devind); /* printf("cr = 0x%x\n", pci_attr_r16(devind, PCI_CR)); */ bar= pci_attr_r32(devind, PCI_BAR) & 0xffffffe0; - if ((bar & 0x3ff) >= 0x100-32 || bar < 0x400) - panic("rtl_probe", - "base address is not properly configured", NO_NUM); + if (bar < 0x400) + { + panic("rtl_probe", + "base address is not properly configured", NO_NUM); + } rep->re_base_port= bar; ilr= pci_attr_r8(devind, PCI_ILR); @@ -773,7 +775,7 @@ printf("RTL8139: error, couldn't enable interrupts: %d\n", s); #if VERBOSE /* stay silent during startup, can always get status later */ - if (rep->re_mode) { + if (rep->re_model) { printf("%s: model %s\n", rep->re_name, rep->re_model); } else { @@ -823,14 +825,18 @@ #endif /* Reset the device */ + printf("rl_reset_hw: (before reset) port = 0x%x, RL_CR = 0x%x\n", + port, rl_inb(port, RL_CR)); rl_outb(port, RL_CR, RL_CR_RST); getuptime(&t0); do { if (!(rl_inb(port, RL_CR) & RL_CR_RST)) break; } while (getuptime(&t1)==OK && (t1-t0) < HZ); + printf("rl_reset_hw: (after reset) port = 0x%x, RL_CR = 0x%x\n", + port, rl_inb(port, RL_CR)); if (rl_inb(port, RL_CR) & RL_CR_RST) - panic("rtl8139","reset failed to complete", NO_NUM); + printf("rtl8139: reset failed to complete"); t= rl_inl(port, RL_TCR); switch(t & (RL_TCR_HWVER_AM | RL_TCR_HWVER_BM)) Only in src/drivers: ti1225 diff -ur oldsrc/drivers/tty/.depend src/drivers/tty/.depend --- oldsrc/drivers/tty/.depend 2005-10-23 05:16:49.000000000 +0400 +++ src/drivers/tty/.depend 2006-02-20 19:10:37.000000000 +0300 @@ -17,17 +17,29 @@ console.o: /usr/include/minix/const.h console.o: /usr/include/minix/devio.h console.o: /usr/include/minix/dmap.h +console.o: /usr/include/minix/ioctl.h console.o: /usr/include/minix/ipc.h console.o: /usr/include/minix/sys_config.h console.o: /usr/include/minix/syslib.h console.o: /usr/include/minix/sysutil.h console.o: /usr/include/minix/type.h +console.o: /usr/include/net/ioctl.h console.o: /usr/include/signal.h console.o: /usr/include/stddef.h console.o: /usr/include/stdlib.h console.o: /usr/include/string.h console.o: /usr/include/sys/dir.h +console.o: /usr/include/sys/ioc_cmos.h +console.o: /usr/include/sys/ioc_disk.h +console.o: /usr/include/sys/ioc_file.h +console.o: /usr/include/sys/ioc_memory.h +console.o: /usr/include/sys/ioc_scsi.h +console.o: /usr/include/sys/ioc_sound.h +console.o: /usr/include/sys/ioc_tape.h +console.o: /usr/include/sys/ioc_tty.h +console.o: /usr/include/sys/ioctl.h console.o: /usr/include/sys/types.h +console.o: /usr/include/sys/vm.h console.o: /usr/include/termios.h console.o: /usr/include/timers.h console.o: /usr/include/unistd.h @@ -55,17 +67,29 @@ keyboard.o: /usr/include/minix/const.h keyboard.o: /usr/include/minix/devio.h keyboard.o: /usr/include/minix/dmap.h +keyboard.o: /usr/include/minix/ioctl.h keyboard.o: /usr/include/minix/ipc.h keyboard.o: /usr/include/minix/keymap.h keyboard.o: /usr/include/minix/sys_config.h keyboard.o: /usr/include/minix/syslib.h keyboard.o: /usr/include/minix/sysutil.h keyboard.o: /usr/include/minix/type.h +keyboard.o: /usr/include/net/ioctl.h keyboard.o: /usr/include/signal.h keyboard.o: /usr/include/stddef.h keyboard.o: /usr/include/stdlib.h keyboard.o: /usr/include/string.h keyboard.o: /usr/include/sys/dir.h +keyboard.o: /usr/include/sys/ioc_cmos.h +keyboard.o: /usr/include/sys/ioc_disk.h +keyboard.o: /usr/include/sys/ioc_file.h +keyboard.o: /usr/include/sys/ioc_memory.h +keyboard.o: /usr/include/sys/ioc_scsi.h +keyboard.o: /usr/include/sys/ioc_sound.h +keyboard.o: /usr/include/sys/ioc_tape.h +keyboard.o: /usr/include/sys/ioc_tty.h +keyboard.o: /usr/include/sys/ioctl.h +keyboard.o: /usr/include/sys/kbdio.h keyboard.o: /usr/include/sys/select.h keyboard.o: /usr/include/sys/time.h keyboard.o: /usr/include/sys/types.h diff -ur oldsrc/drivers/tty/console.c src/drivers/tty/console.c --- oldsrc/drivers/tty/console.c 2005-09-30 17:01:34.000000000 +0400 +++ src/drivers/tty/console.c 2005-11-09 18:45:48.000000000 +0300 @@ -18,6 +18,8 @@ #include "../drivers.h" #include +#include +#include #include #include #include "tty.h" @@ -48,6 +50,9 @@ #define VID_ORG 12 /* 6845's origin register */ #define CURSOR 14 /* 6845's cursor register */ +/* The clock task should provide an interface for this */ +#define TIMER_FREQ 1193182L /* clock frequency for timer in PC and AT */ + /* Beeper. */ #define BEEP_FREQ 0x0533 /* value to put into timer to set beep freq */ #define B_TIME 3 /* length of CTRL-G beep is ticks */ @@ -130,6 +135,7 @@ FORWARD _PROTOTYPE( void cons_org0, (void) ); FORWARD _PROTOTYPE( int ga_program, (struct sequence *seq) ); FORWARD _PROTOTYPE( int cons_ioctl, (tty_t *tp, int) ); +PRIVATE _PROTOTYPE( void ser_putc, (char c) ); /*===========================================================================* * cons_write * @@ -761,6 +767,105 @@ } } + +/*===========================================================================* + * do_video * + *===========================================================================*/ +PUBLIC void do_video(message *m) +{ + int i, n, r, ops, watch; + unsigned char c; + + /* Execute the requested device driver function. */ + r= EINVAL; /* just in case */ + switch (m->m_type) { + case DEV_OPEN: + /* Should grant IOPL */ + r= OK; + break; + case DEV_CLOSE: + r= OK; + break; + case DEV_IOCTL: + if (m->TTY_REQUEST == MIOCMAP || m->TTY_REQUEST == MIOCUNMAP) + { + int r, do_map; + struct mapreq mapreq; + + do_map= (m->REQUEST == MIOCMAP); /* else unmap */ + + /* Get request structure */ + r= sys_vircopy(m->PROC_NR, D, + (vir_bytes)m->ADDRESS, + SELF, D, (vir_bytes)&mapreq, sizeof(mapreq)); + if (r != OK) + { + tty_reply(TASK_REPLY, m->m_source, m->PROC_NR, + r); + return; + } + r= sys_vm_map(m->PROC_NR, do_map, + (phys_bytes)mapreq.base, mapreq.size, + mapreq.offset); + tty_reply(TASK_REPLY, m->m_source, m->PROC_NR, r); + return; + } + r= ENOTTY; + break; + + default: + printf( + "Warning, TTY(video) got unexpected request %d from %d\n", + m->m_type, m->m_source); + r= EINVAL; + } + tty_reply(TASK_REPLY, m->m_source, m->PROC_NR, r); +} + + +/*===========================================================================* + * beep_x * + *===========================================================================*/ +PUBLIC void beep_x(freq, dur) +unsigned freq; +clock_t dur; +{ +/* Making a beeping sound on the speaker. + * This routine works by turning on the bits 0 and 1 in port B of the 8255 + * chip that drive the speaker. + */ + static timer_t tmr_stop_beep; + pvb_pair_t char_out[3]; + clock_t now; + int port_b_val, s; + + unsigned long ival= TIMER_FREQ / freq; + if (ival == 0 || ival > 0xffff) + return; /* Frequency out of range */ + + /* Fetch current time in advance to prevent beeping delay. */ + if ((s=getuptime(&now)) != OK) + panic("TTY","Console couldn't get clock's uptime.", s); + if (!beeping) { + /* Set timer channel 2, square wave, with given frequency. */ + pv_set(char_out[0], TIMER_MODE, 0xB6); + pv_set(char_out[1], TIMER2, (ival >> 0) & BYTE); + pv_set(char_out[2], TIMER2, (ival >> 8) & BYTE); + if (sys_voutb(char_out, 3)==OK) { + if (sys_inb(PORT_B, &port_b_val)==OK && + sys_outb(PORT_B, (port_b_val|3))==OK) + beeping = TRUE; + } + } + /* Add a timer to the timers list. Possibly reschedule the alarm. */ + tmrs_settimer(&tty_timers, &tmr_stop_beep, now+dur, stop_beep, NULL); + if (tty_timers->tmr_exp_time != tty_next_timeout) { + tty_next_timeout = tty_timers->tmr_exp_time; + if ((s=sys_setalarm(tty_next_timeout, 1)) != OK) + panic("TTY","Console couldn't set alarm.", s); + } +} + /*===========================================================================* * stop_beep * *===========================================================================*/ @@ -797,9 +902,6 @@ cons->c_tty = tp; tp->tty_priv = cons; - /* Initialize the keyboard driver. */ - kb_init(tp); - /* Fill in TTY function hooks. */ tp->tty_devwrite = cons_write; tp->tty_echo = cons_echo; @@ -876,12 +978,16 @@ PUBLIC void kputc(c) int c; { -#if 0 - cons_putk(c); -#else /* Accumulate a single character for a kernel message. Send a notification * the to output driver if an END_OF_KMESS is encountered. */ +#if 0 + ser_putc(c); + return; +#endif + + if (panicing) + cons_putk(c); if (c != 0) { kmess.km_buf[kmess.km_next] = c; /* put normal char in buffer */ if (kmess.km_size < KMESS_BUF_SIZE) @@ -890,7 +996,6 @@ } else { notify(LOG_PROC_NR); } -#endif } /*===========================================================================* @@ -1137,3 +1242,25 @@ tp->tty_winsize.ws_xpixel= scr_width * 8; tp->tty_winsize.ws_ypixel= scr_lines * font_lines; } + +#define COM1_BASE 0x3F8 +#define COM1_THR (COM1_BASE + 0) +#define LSR_THRE 0x20 +#define COM1_LSR (COM1_BASE + 5) + +PRIVATE void ser_putc(char c) +{ + unsigned long b; + int i; + int lsr, thr; + + lsr= COM1_LSR; + thr= COM1_THR; + for (i= 0; i<100; i++) + { + sys_inb(lsr, &b); + if (b & LSR_THRE) + break; + } + sys_outb(thr, c); +} diff -ur oldsrc/drivers/tty/keyboard.c src/drivers/tty/keyboard.c --- oldsrc/drivers/tty/keyboard.c 2005-10-17 17:19:48.000000000 +0400 +++ src/drivers/tty/keyboard.c 2006-02-06 18:03:51.000000000 +0300 @@ -7,6 +7,8 @@ */ #include "../drivers.h" +#include +#include #include #include #include @@ -23,6 +25,7 @@ #include "../../kernel/proc.h" int irq_hook_id = -1; +int aux_irq_hook_id = -1; /* Standard and AT keyboard. (PS/2 MCA implies AT throughout.) */ #define KEYBD 0x60 /* I/O port for keyboard data */ @@ -31,13 +34,23 @@ #define KB_COMMAND 0x64 /* I/O port for commands on AT */ #define KB_STATUS 0x64 /* I/O port for status on AT */ #define KB_ACK 0xFA /* keyboard ack response */ +#define KB_AUX_BYTE 0x20 /* Auxiliary Device Output Buffer Full */ #define KB_OUT_FULL 0x01 /* status bit set when keypress char pending */ #define KB_IN_FULL 0x02 /* status bit set when not ready to receive */ +#define KBC_RD_RAM_CCB 0x20 /* Read controller command byte */ +#define KBC_WR_RAM_CCB 0x60 /* Write controller command byte */ +#define KBC_DI_AUX 0xA7 /* Disable Auxiliary Device */ +#define KBC_EN_AUX 0xA8 /* Enable Auxiliary Device */ +#define KBC_DI_KBD 0xAD /* Disable Keybard Interface */ +#define KBC_EN_KBD 0xAE /* Enable Keybard Interface */ +#define KBC_WRITE_AUX 0xD4 /* Write to Auxiliary Device */ #define LED_CODE 0xED /* command to keyboard to set LEDs */ #define MAX_KB_ACK_RETRIES 0x1000 /* max #times to wait for kb ack */ #define MAX_KB_BUSY_RETRIES 0x1000 /* max #times to loop while kb busy */ #define KBIT 0x80 /* bit used to ack characters to keyboard */ +#define KBC_IN_DELAY 7 /* wait 7 microseconds when polling */ + /* Miscellaneous. */ #define ESC_SCAN 0x01 /* reboot key when panicking */ #define SLASH_SCAN 0x35 /* to recognize numeric slash */ @@ -46,6 +59,13 @@ #define INS_SCAN 0x52 /* INS for use in CTRL-ALT-INS reboot */ #define DEL_SCAN 0x53 /* DEL for use in CTRL-ALT-DEL reboot */ +#define KBD_BUFSZ 1024 /* Buffer size for raw scan codes */ +#define KBD_OUT_BUFSZ 16 /* Output buffer to sending data to the + * keyboard. + */ + +#define MICROS_TO_TICKS(m) (((m)*HZ/1000000)+1) + #define CONSOLE 0 /* line number for console */ #define KB_IN_BYTES 32 /* size of keyboard input buffer */ PRIVATE char ibuf[KB_IN_BYTES]; /* input buffer */ @@ -81,15 +101,309 @@ PRIVATE obs_t fkey_obs[12]; /* observers for F1-F12 */ PRIVATE obs_t sfkey_obs[12]; /* observers for SHIFT F1-F12 */ +PRIVATE struct kbd +{ + int minor; + int nr_open; + char buf[KBD_BUFSZ]; + int offset; + int avail; + int req_size; + int req_proc; + vir_bytes req_addr; + int incaller; + int select_ops; + int select_proc; +} kbd, kbdaux; + +/* Data that is to be sent to the keyboard. Each byte is ACKed by the + * keyboard. + */ +PRIVATE struct kbd_outack +{ + unsigned char buf[KBD_OUT_BUFSZ]; + int offset; + int avail; + int expect_ack; +} kbdout; + +PRIVATE int kbd_watchdog_set= 0; +PRIVATE int kbd_alive= 1; +PRIVATE timer_t tmr_kbd_wd; + +FORWARD _PROTOTYPE( void handle_req, (struct kbd *kbdp, message *m) ); +FORWARD _PROTOTYPE( int handle_status, (struct kbd *kbdp, message *m) ); +FORWARD _PROTOTYPE( void kbc_cmd0, (int cmd) ); +FORWARD _PROTOTYPE( void kbc_cmd1, (int cmd, int data) ); +FORWARD _PROTOTYPE( int kbc_read, (void) ); +FORWARD _PROTOTYPE( void kbd_send, (void) ); FORWARD _PROTOTYPE( int kb_ack, (void) ); FORWARD _PROTOTYPE( int kb_wait, (void) ); FORWARD _PROTOTYPE( int func_key, (int scode) ); -FORWARD _PROTOTYPE( int scan_keyboard, (void) ); +FORWARD _PROTOTYPE( int scan_keyboard, (unsigned char *bp, int *isauxp) ); FORWARD _PROTOTYPE( unsigned make_break, (int scode) ); FORWARD _PROTOTYPE( void set_leds, (void) ); FORWARD _PROTOTYPE( void show_key_mappings, (void) ); FORWARD _PROTOTYPE( int kb_read, (struct tty *tp, int try) ); FORWARD _PROTOTYPE( unsigned map_key, (int scode) ); +FORWARD _PROTOTYPE( void micro_delay, (unsigned long usecs) ); +FORWARD _PROTOTYPE( void kbd_watchdog, (timer_t *tmrp) ); + +/*===========================================================================* + * do_kbd * + *===========================================================================*/ +PUBLIC void do_kbd(message *m) +{ + handle_req(&kbd, m); +} + + +/*===========================================================================* + * kbd_status * + *===========================================================================*/ +PUBLIC int kbd_status(message *m) +{ + int r; + + r= handle_status(&kbd, m); + if (r) + return r; + return handle_status(&kbdaux, m); +} + + +/*===========================================================================* + * do_kbdaux * + *===========================================================================*/ +PUBLIC void do_kbdaux(message *m) +{ + handle_req(&kbdaux, m); +} + + +/*===========================================================================* + * handle_req * + *===========================================================================*/ +PRIVATE void handle_req(kbdp, m) +struct kbd *kbdp; +message *m; +{ + int i, n, r, ops, watch; + unsigned char c; + + /* Execute the requested device driver function. */ + r= EINVAL; /* just in case */ + switch (m->m_type) { + case DEV_OPEN: + kbdp->nr_open++; + r= OK; + break; + case DEV_CLOSE: + kbdp->nr_open--; + if (kbdp->nr_open < 0) + { + printf("TTY(kbd): open count is negative\n"); + kbdp->nr_open= 0; + } + if (kbdp->nr_open == 0) + kbdp->avail= 0; + r= OK; + break; + case DEV_READ: + if (kbdp->req_size) + { + /* We handle only request at a time */ + r= EIO; + break; + } + if (kbdp->avail == 0) + { + /* Should record proc */ + kbdp->req_size= m->COUNT; + kbdp->req_proc= m->PROC_NR; + kbdp->req_addr= (vir_bytes)m->ADDRESS; + kbdp->incaller= m->m_source; + r= SUSPEND; + break; + } + + /* Handle read request */ + n= kbdp->avail; + if (n > m->COUNT) + n= m->COUNT; + if (kbdp->offset + n > KBD_BUFSZ) + n= KBD_BUFSZ-kbdp->offset; + if (n <= 0) + panic("TTY", "do_kbd(READ): bad n", n); + r= sys_vircopy(SELF, D, (vir_bytes)&kbdp->buf[kbdp->offset], + m->PROC_NR, D, (vir_bytes) m->ADDRESS, n); + if (r == OK) + { + kbdp->offset= (kbdp->offset+n) % KBD_BUFSZ; + kbdp->avail -= n; + r= n; + } + + break; + + case DEV_WRITE: + if (kbdp != &kbdaux) + { + printf("write to keyboard not implemented\n"); + r= EINVAL; + break; + } + + /* Assume that output to AUX only happens during + * initialization and we can afford to lose input. This should + * be fixed at a later time. + */ + for (i= 0; iCOUNT; i++) + { + r= sys_vircopy(m->PROC_NR, D, (vir_bytes) m->ADDRESS+i, + SELF, D, (vir_bytes)&c, 1); + if (r != OK) + break; + kbc_cmd1(KBC_WRITE_AUX, c); + } + r= i; + break; + + case CANCEL: + kbdp->req_size= 0; + r= OK; + break; + case DEV_SELECT: + ops = m->PROC_NR & (SEL_RD|SEL_WR|SEL_ERR); + watch = (m->PROC_NR & SEL_NOTIFY) ? 1 : 0; + + r= 0; + if (kbdp->avail && (ops & SEL_RD)) + { + r |= SEL_RD; + break; + } + + if (ops && watch) + { + kbdp->select_ops |= ops; + kbdp->select_proc= m->m_source; + } + break; + case DEV_IOCTL: + if (kbdp == &kbd && m->TTY_REQUEST == KIOCSLEDS) + { + kio_leds_t leds; + unsigned char b; + + r= sys_vircopy(m->PROC_NR, D, (vir_bytes) m->ADDRESS, + SELF, D, (vir_bytes)&leds, sizeof(leds)); + if (r != OK) + break; + b= 0; + if (leds.kl_bits & KBD_LEDS_NUM) b |= NUM_LOCK; + if (leds.kl_bits & KBD_LEDS_CAPS) b |= CAPS_LOCK; + if (leds.kl_bits & KBD_LEDS_SCROLL) b |= SCROLL_LOCK; + if (kbdout.avail == 0) + kbdout.offset= 0; + if (kbdout.offset + kbdout.avail + 2 > KBD_OUT_BUFSZ) + { + /* Output buffer is full. Ignore this command. + * Reset ACK flag. + */ + kbdout.expect_ack= 0; + } + else + { + kbdout.buf[kbdout.offset+kbdout.avail]= + LED_CODE; + kbdout.buf[kbdout.offset+kbdout.avail+1]= b; + kbdout.avail += 2; + } + if (!kbdout.expect_ack) + kbd_send(); + r= OK; + break; + } + if (kbdp == &kbd && m->TTY_REQUEST == KIOCBELL) + { + kio_bell_t bell; + clock_t ticks; + + r= sys_vircopy(m->PROC_NR, D, (vir_bytes) m->ADDRESS, + SELF, D, (vir_bytes)&bell, sizeof(bell)); + if (r != OK) + break; + + ticks= bell.kb_duration.tv_usec * HZ / 1000000; + ticks += bell.kb_duration.tv_sec * HZ; + if (!ticks) + ticks++; + beep_x(bell.kb_pitch, ticks); + + r= OK; + break; + } + r= ENOTTY; + break; + + default: + printf("Warning, TTY(kbd) got unexpected request %d from %d\n", + m->m_type, m->m_source); + r= EINVAL; + } + tty_reply(TASK_REPLY, m->m_source, m->PROC_NR, r); +} + + +/*===========================================================================* + * handle_status * + *===========================================================================*/ +PRIVATE int handle_status(kbdp, m) +struct kbd *kbdp; +message *m; +{ + int n, r; + + if (kbdp->avail && kbdp->req_size && m->m_source == kbdp->incaller) + { + /* Handle read request */ + n= kbdp->avail; + if (n > kbdp->req_size) + n= kbdp->req_size; + if (kbdp->offset + n > KBD_BUFSZ) + n= KBD_BUFSZ-kbdp->offset; + if (n <= 0) + panic("TTY", "kbd_status: bad n", n); + kbdp->req_size= 0; + r= sys_vircopy(SELF, D, (vir_bytes)&kbdp->buf[kbdp->offset], + kbdp->req_proc, D, kbdp->req_addr, n); + if (r == OK) + { + kbdp->offset= (kbdp->offset+n) % KBD_BUFSZ; + kbdp->avail -= n; + r= n; + } + + m->m_type = DEV_REVIVE; + m->REP_PROC_NR= kbdp->req_proc; + m->REP_STATUS= r; + return 1; + } + if (kbdp->avail && (kbdp->select_ops & SEL_RD) && + m->m_source == kbdp->select_proc) + { + m->m_type = DEV_IO_READY; + m->DEV_MINOR = kbdp->minor; + m->DEV_SEL_OPS = SEL_RD; + + kbdp->select_ops &= ~SEL_RD; + return 1; + } + + return 0; +} + /*===========================================================================* * map_key0 * @@ -137,11 +451,40 @@ message *m_ptr; { /* A keyboard interrupt has occurred. Process it. */ - int scode; + int o, isaux; + unsigned char scode; + struct kbd *kbdp; static timer_t timer; /* timer must be static! */ /* Fetch the character from the keyboard hardware and acknowledge it. */ - scode = scan_keyboard(); + if (!scan_keyboard(&scode, &isaux)) + return; + + if (isaux) + kbdp= &kbdaux; + else if (kbd.nr_open && !panicing) + kbdp= &kbd; + else + kbdp= NULL; + + if (kbdp) + { + /* raw scan codes or aux data */ + if (kbdp->avail >= KBD_BUFSZ) + { + printf("kbd_interrupt: %s buffer is full\n", + isaux ? "kbdaux" : "keyboard"); + return; /* Buffer is full */ + } + o= (kbdp->offset + kbdp->avail) % KBD_BUFSZ; + kbdp->buf[o]= scode; + kbdp->avail++; + if (kbdp->req_size) + notify(kbdp->incaller); + if (kbdp->select_ops & SEL_RD) + notify(kbdp->select_proc); + return; + } /* Store the scancode in memory so the task can get at it later. */ if (icount < KB_IN_BYTES) { @@ -227,6 +570,62 @@ } /*===========================================================================* + * kbd_send * + *===========================================================================*/ +PRIVATE void kbd_send() +{ + unsigned long sb; + int r; + clock_t now; + + if (!kbdout.avail) + return; + if (kbdout.expect_ack) + return; + + sys_inb(KB_STATUS, &sb); + if (sb & (KB_OUT_FULL|KB_IN_FULL)) + { + printf("not sending 1: sb = 0x%x\n", sb); + return; + } + micro_delay(KBC_IN_DELAY); + sys_inb(KB_STATUS, &sb); + if (sb & (KB_OUT_FULL|KB_IN_FULL)) + { + printf("not sending 2: sb = 0x%x\n", sb); + return; + } + + /* Okay, buffer is really empty */ +#if 0 + printf("sending byte 0x%x to keyboard\n", kbdout.buf[kbdout.offset]); +#endif + sys_outb(KEYBD, kbdout.buf[kbdout.offset]); + kbdout.offset++; + kbdout.avail--; + kbdout.expect_ack= 1; + + kbd_alive= 1; + if (kbd_watchdog_set) + { + /* Add a timer to the timers list. Possibly reschedule the + * alarm. + */ + if ((r= getuptime(&now)) != OK) + panic("TTY","Keyboard couldn't get clock's uptime.", r); + tmrs_settimer(&tty_timers, &tmr_kbd_wd, now+HZ, kbd_watchdog, + NULL); + if (tty_timers->tmr_exp_time != tty_next_timeout) { + tty_next_timeout = tty_timers->tmr_exp_time; + if ((r= sys_setalarm(tty_next_timeout, 1)) != OK) + panic("TTY","Keyboard couldn't set alarm.", r); + } + kbd_watchdog_set= 1; + } +} + +/*===========================================================================* * make_break * *===========================================================================*/ PRIVATE unsigned make_break(scode) @@ -326,20 +725,104 @@ } /*===========================================================================* + * kbc_cmd0 * + *===========================================================================*/ +PRIVATE void kbc_cmd0(cmd) +int cmd; +{ + kb_wait(); + sys_outb(KB_COMMAND, cmd); +} + +/*===========================================================================* + * kbc_cmd1 * + *===========================================================================*/ +PRIVATE void kbc_cmd1(cmd, data) +int cmd; +int data; +{ + kb_wait(); + sys_outb(KB_COMMAND, cmd); + kb_wait(); + sys_outb(KEYBD, data); +} + + +/*===========================================================================* +* kbc_read * +*===========================================================================*/ +PRIVATE int kbc_read() +{ + int i; + unsigned long byte, st; +#if 0 + struct micro_state ms; +#endif + +#if DEBUG + printf("in kbc_read\n"); +#endif + + /* Wait at most 1 second for a byte from the keyboard or + * the kbd controller, return -1 on a timeout. + */ + for (i= 0; i<1000; i++) + #if 0 + micro_start(&ms); + do +#endif + { + sys_inb(KB_STATUS, &st); + if (st & KB_OUT_FULL) + { + micro_delay(KBC_IN_DELAY); + sys_inb(KEYBD, &byte); + if (st & KB_AUX_BYTE) + { +#if DEBUG + printf( + "keyboard`kbc_read: ignoring byte (0x%x) from aux device.\n", + byte); +#endif + continue; + } +#if DEBUG + printf("keyboard`kbc_read: returning byte 0x%x\n", + byte); +#endif + return byte; + } + } +#if 0 + while (micro_elapsed(&ms) < 1000000); +#endif + panic("TTY", "kbc_read failed to complete", NO_NUM); +} + + + +/*===========================================================================* * kb_wait * *===========================================================================*/ PRIVATE int kb_wait() { /* Wait until the controller is ready; return zero if this times out. */ - int retries, status, temp; - int s; + int retries; + unsigned long status, temp; + int s, isaux; + unsigned char byte; retries = MAX_KB_BUSY_RETRIES + 1; /* wait until not busy */ do { s = sys_inb(KB_STATUS, &status); if (status & KB_OUT_FULL) { - s = sys_inb(KEYBD, &temp); /* discard value */ + if (scan_keyboard(&byte, &isaux)) + { +#if 0 + printf("ignoring %sbyte in kb_wait\n", isaux ? "AUX " : ""); +#endif + } } if (! (status & (KB_IN_FULL|KB_OUT_FULL)) ) break; /* wait until ready */ @@ -355,7 +838,8 @@ /* Wait until kbd acknowledges last command; return zero if this times out. */ int retries, s; - u8_t u8val; + unsigned long u8val; + retries = MAX_KB_ACK_RETRIES + 1; do { @@ -384,9 +868,10 @@ PUBLIC void kb_init_once(void) { int i; + u8_t ccb; set_leds(); /* turn off numlock led */ - scan_keyboard(); /* discard leftover keystroke */ + scan_keyboard(NULL, NULL); /* discard leftover keystroke */ /* Clear the function key observers array. Also see func_key(). */ for (i=0; i<12; i++) { @@ -396,6 +881,9 @@ sfkey_obs[i].events = 0; /* Shift F1-F12 observers */ } + kbd.minor= KBD_MINOR; + kbdaux.minor= KBDAUX_MINOR; + /* Set interrupt handler and enable keyboard IRQ. */ irq_hook_id = KEYBOARD_IRQ; /* id to be returned on interrupt */ if ((i=sys_irqsetpolicy(KEYBOARD_IRQ, IRQ_REENABLE, &irq_hook_id)) != OK) @@ -403,6 +891,32 @@ if ((i=sys_irqenable(&irq_hook_id)) != OK) panic("TTY", "Couldn't enable keyboard IRQs", i); kbd_irq_set |= (1 << KEYBOARD_IRQ); + + /* Set AUX interrupt handler and enable AUX IRQ. */ + aux_irq_hook_id = KBD_AUX_IRQ; /* id to be returned on interrupt */ + if ((i=sys_irqsetpolicy(KBD_AUX_IRQ, IRQ_REENABLE, + &aux_irq_hook_id)) != OK) + panic("TTY", "Couldn't set AUX IRQ policy", i); + if ((i=sys_irqenable(&aux_irq_hook_id)) != OK) + panic("TTY", "Couldn't enable AUX IRQs", i); + kbd_irq_set |= (1 << KBD_AUX_IRQ); + + /* Disable the keyboard and aux */ + kbc_cmd0(KBC_DI_KBD); + kbc_cmd0(KBC_DI_AUX); + + /* Get the current configuration byte */ + kbc_cmd0(KBC_RD_RAM_CCB); + ccb= kbc_read(); + + /* Enable both interrupts. */ + kbc_cmd1(KBC_WR_RAM_CCB, ccb | 3); + + /* Re-enable the keyboard device. */ + kbc_cmd0(KBC_EN_KBD); + + /* Enable the aux device. */ + kbc_cmd0(KBC_EN_AUX); } /*===========================================================================* @@ -610,8 +1124,11 @@ /*===========================================================================* * scan_keyboard * *===========================================================================*/ -PRIVATE int scan_keyboard() +PRIVATE int scan_keyboard(bp, isauxp) +unsigned char *bp; +int *isauxp; { +#if 0 /* Is this old XT code? It doesn't match the PS/2 hardware */ /* Fetch the character from the keyboard hardware and acknowledge it. */ pvb_pair_t byte_in[2], byte_out[2]; @@ -624,6 +1141,41 @@ sys_voutb(byte_out, 2); /* request actual output */ return(byte_in[0].value); /* return scan code */ +#else + unsigned long b, sb; + + sys_inb(KB_STATUS, &sb); + if (!(sb & KB_OUT_FULL)) + { + if (kbdout.avail && !kbdout.expect_ack) + kbd_send(); + return 0; + } + sys_inb(KEYBD, &b); +#if 0 + printf("got byte 0x%x from %s\n", b, (sb & KB_AUX_BYTE) ? "AUX" : "keyboard"); +#endif + if (!(sb & KB_AUX_BYTE) && b == KB_ACK && kbdout.expect_ack) + { +#if 1 + printf("got ACK from keyboard\n"); +#endif + kbdout.expect_ack= 0; + micro_delay(KBC_IN_DELAY); + kbd_send(); + return 0; + } + if (bp) + *bp= b; + if (isauxp) + *isauxp= !!(sb & KB_AUX_BYTE); + if (kbdout.avail && !kbdout.expect_ack) + { + micro_delay(KBC_IN_DELAY); + kbd_send(); + } + return 1; +#endif } /*===========================================================================* @@ -633,13 +1185,13 @@ message *m; /* request message to TTY */ { /* Wait for keystrokes for printing debugging info and reboot. */ - int quiet, code; + unsigned char code; + int isaux; /* A panic! Allow debug dumps until user wants to shutdown. */ printf("\nHit ESC to reboot, DEL to shutdown, F-keys for debug dumps\n"); - (void) scan_keyboard(); /* ack any old input */ - quiet = scan_keyboard();/* quiescent value (0 on PC, last code on AT)*/ + (void) scan_keyboard(NULL, NULL); /* ack any old input */ for (;;) { tickdelay(10); /* See if there are pending request for output, but don't block. @@ -654,16 +1206,51 @@ } tickdelay(1); /* allow more */ } - code = scan_keyboard(); - if (code != quiet) { - /* A key has been pressed. */ - switch (code) { /* possibly abort MINIX */ - case ESC_SCAN: sys_abort(RBT_REBOOT); return; - case DEL_SCAN: sys_abort(RBT_HALT); return; - } - (void) func_key(code); /* check for function key */ - quiet = scan_keyboard(); + if (!scan_keyboard(&code, &isaux)) + continue; + if (isaux) + continue; + + /* A key has been pressed. */ + switch (code) { /* possibly abort MINIX */ + case ESC_SCAN: sys_abort(RBT_REBOOT); return; + case DEL_SCAN: sys_abort(RBT_HALT); return; } + (void) func_key(code); /* check for function key */ } } +static void micro_delay(unsigned long usecs) +{ + tickdelay(MICROS_TO_TICKS(usecs)); +} + +/*===========================================================================* + * kbd_watchdog * + *===========================================================================*/ +PRIVATE void kbd_watchdog(tmrp) +timer_t *tmrp; +{ + int r; + clock_t now; + + kbd_watchdog_set= 0; + if (!kbdout.avail) + return; /* Watchdog is no longer needed */ + if (!kbd_alive) + { + printf("kbd_watchdog: should reset keyboard\n"); + } + kbd_alive= 0; + + if ((r= getuptime(&now)) != OK) + panic("TTY","Keyboard couldn't get clock's uptime.", r); + tmrs_settimer(&tty_timers, &tmr_kbd_wd, now+HZ, kbd_watchdog, + NULL); + if (tty_timers->tmr_exp_time != tty_next_timeout) { + tty_next_timeout = tty_timers->tmr_exp_time; + if ((r= sys_setalarm(tty_next_timeout, 1)) != OK) + panic("TTY","Keyboard couldn't set alarm.", r); + } + kbd_watchdog_set= 1; +} diff -ur oldsrc/drivers/tty/keymaps/Makefile src/drivers/tty/keymaps/Makefile --- oldsrc/drivers/tty/keymaps/Makefile 2005-04-21 18:55:47.000000000 +0400 +++ src/drivers/tty/keymaps/Makefile 2006-01-23 12:28:04.000000000 +0300 @@ -10,6 +10,7 @@ @rm -f a.out all: \ + dvorak.map \ french.map \ german.map \ italian.map \ @@ -25,6 +26,7 @@ install: \ $(LK) \ + $(LK)/dvorak.map \ $(LK)/french.map \ $(LK)/german.map \ $(LK)/italian.map \ @@ -44,6 +46,9 @@ $(LK): install -d $@ +$(LK)/dvorak.map: dvorak.map + install -c $? $@ + $(LK)/french.map: french.map install -c $? $@ Only in src/drivers/tty/keymaps: dvorak.src diff -ur oldsrc/drivers/tty/rs232.c src/drivers/tty/rs232.c --- oldsrc/drivers/tty/rs232.c 2005-09-11 21:09:11.000000000 +0400 +++ src/drivers/tty/rs232.c 2005-10-24 17:57:19.000000000 +0400 @@ -886,7 +886,11 @@ } } - if (rs->icount == buflen(rs->ibuf)) return; /* input buffer full, discard */ + if (rs->icount == buflen(rs->ibuf)) + { + printf("in_int: discarding byte\n"); + return; /* input buffer full, discard */ + } if (++rs->icount == RS_IHIGHWATER && rs->idevready) istop(rs); *rs->ihead = c; @@ -895,6 +899,8 @@ rs->tty->tty_events = 1; force_timeout(); } + else + printf("in_int: icount = %d\n", rs->icount); } /*===========================================================================* diff -ur oldsrc/drivers/tty/tty.c src/drivers/tty/tty.c --- oldsrc/drivers/tty/tty.c 2005-10-22 06:19:16.000000000 +0400 +++ src/drivers/tty/tty.c 2006-02-17 13:23:16.000000000 +0300 @@ -45,8 +45,6 @@ * |-------------+---------+---------+---------+---------+---------+---------| * | DEV_CLOSE |minor dev| proc nr | | | | | * |-------------+---------+---------+---------+---------+---------+---------| - * | DEV_SELECT | | | | | | | - * |-------------+---------+---------+---------+---------+---------+---------| * | DEV_STATUS | | | | | | | * |-------------+---------+---------+---------+---------+---------+---------| * | CANCEL |minor dev| proc nr | | | | | @@ -59,6 +57,7 @@ */ #include "../drivers.h" +#include "../drivers.h" #include #if ENABLE_SRCCOMPAT || ENABLE_BINCOMPAT #include @@ -167,14 +166,25 @@ register struct proc *rp; register tty_t *tp; - /* Initialize the TTY driver. */ - tty_init(); +#if DEBUG + kputc('H'); + kputc('e'); + kputc('l'); + kputc('l'); + kputc('o'); + kputc(','); + kputc(' '); + printf("TTY\n"); +#endif /* Get kernel environment (protected_mode, pc_at and ega are needed). */ if (OK != (s=sys_getmachine(&machine))) { panic("TTY","Couldn't obtain kernel environment.", s); } + /* Initialize the TTY driver. */ + tty_init(); + /* Final one-time keyboard initialization. */ kb_init_once(); @@ -258,7 +268,16 @@ continue; } line = tty_mess.TTY_LINE; - if ((line - CONS_MINOR) < NR_CONS) { + if (line == KBD_MINOR) { + do_kbd(&tty_mess); + continue; + } else if (line == KBDAUX_MINOR) { + do_kbdaux(&tty_mess); + continue; + } else if (line == VIDEO_MINOR) { + do_video(&tty_mess); + continue; + } else if ((line - CONS_MINOR) < NR_CONS) { tp = tty_addr(line - CONS_MINOR); } else if (line == LOG_MINOR) { tp = tty_addr(0); @@ -365,6 +384,8 @@ if (!event_found) event_found = pty_status(m_ptr); #endif + if (!event_found) + event_found= kbd_status(m_ptr); if (! event_found) { /* No events of interest were found. Return an empty message. */ @@ -387,18 +408,22 @@ /* A process wants to read from a terminal. */ int r, status; phys_bytes phys_addr; + int more_verbose= (tp == tty_addr(NR_CONS)); /* Check if there is already a process hanging in a read, check if the * parameters are correct, do I/O. */ if (tp->tty_inleft > 0) { + if (more_verbose) printf("do_read: EIO\n"); r = EIO; } else if (m_ptr->COUNT <= 0) { + if (more_verbose) printf("do_read: EINVAL\n"); r = EINVAL; } else if (sys_umap(m_ptr->PROC_NR, D, (vir_bytes) m_ptr->ADDRESS, m_ptr->COUNT, &phys_addr) != OK) { + if (more_verbose) printf("do_read: EFAULT\n"); r = EFAULT; } else { /* Copy information from the message to the tty struct. */ @@ -448,6 +473,7 @@ tp->tty_inrepcode = REVIVE; } } + if (more_verbose) printf("do_read: replying %d\n", r); tty_reply(TASK_REPLY, m_ptr->m_source, m_ptr->PROC_NR, r); if (tp->tty_select_ops) select_retry(tp); @@ -831,13 +857,12 @@ if (tp->tty_outleft > 0) ready_ops |= SEL_WR; else if ((*tp->tty_devwrite)(tp, 1)) ready_ops |= SEL_WR; } - return ready_ops; } PUBLIC int select_retry(struct tty *tp) { - if (select_try(tp, tp->tty_select_ops)) + if (tp->tty_select_ops && select_try(tp, tp->tty_select_ops)) notify(tp->tty_select_proc); return OK; } @@ -893,7 +918,9 @@ } } if (tp->tty_select_ops) + { select_retry(tp); + } #if NR_PTYS > 0 if (ispty(tp)) select_retry_pty(tp); @@ -1522,6 +1549,10 @@ tty_devnop; if (tp < tty_addr(NR_CONS)) { scr_init(tp); + + /* Initialize the keyboard driver. */ + kb_init(tp); + tp->tty_minor = CONS_MINOR + s; } else if (tp < tty_addr(NR_CONS+NR_RS_LINES)) { @@ -1542,6 +1573,9 @@ if (sigaction(SIGKMESS,&sa,NULL)<0) panic("TTY","sigaction failed", errno); if (sigaction(SIGKSTOP,&sa,NULL)<0) panic("TTY","sigaction failed", errno); #endif +#if DEBUG + printf("end of tty_init\n"); +#endif } /*===========================================================================* diff -ur oldsrc/drivers/tty/tty.h src/drivers/tty/tty.h --- oldsrc/drivers/tty/tty.h 2005-09-30 17:01:34.000000000 +0400 +++ src/drivers/tty/tty.h 2005-11-09 18:45:48.000000000 +0300 @@ -11,6 +11,9 @@ #define CONS_MINOR 0 #define LOG_MINOR 15 #define RS232_MINOR 16 +#define KBD_MINOR 127 +#define KBDAUX_MINOR 126 +#define VIDEO_MINOR 125 #define TTYPX_MINOR 128 #define PTYPX_MINOR 192 @@ -101,6 +104,8 @@ extern unsigned long kbd_irq_set; extern unsigned long rs_irq_set; +extern int panicing; /* From panic.c in sysutil */ + /* Values for the fields. */ #define NOT_ESCAPED 0 /* previous character is not LNEXT (^V) */ #define ESCAPED 1 /* previous character was LNEXT (^V) */ @@ -162,6 +167,8 @@ _PROTOTYPE( void toggle_scroll, (void) ); _PROTOTYPE( int con_loadfont, (message *m) ); _PROTOTYPE( void select_console, (int cons_line) ); +_PROTOTYPE( void beep_x, ( unsigned freq, clock_t dur) ); +_PROTOTYPE( void do_video, (message *m) ); /* keyboard.c */ _PROTOTYPE( void kb_init, (struct tty *tp) ); @@ -170,6 +177,9 @@ _PROTOTYPE( void do_panic_dumps, (message *m) ); _PROTOTYPE( void do_fkey_ctl, (message *m) ); _PROTOTYPE( void kbd_interrupt, (message *m) ); +_PROTOTYPE( void do_kbd, (message *m) ); +_PROTOTYPE( void do_kbdaux, (message *m) ); +_PROTOTYPE( int kbd_status, (message *m_ptr) ); /* pty.c */ _PROTOTYPE( void do_pty, (struct tty *tp, message *m_ptr) ); diff -ur oldsrc/etc/ast/.ashrc src/etc/ast/.ashrc --- oldsrc/etc/ast/.ashrc 2005-10-21 15:49:26.000000000 +0400 +++ src/etc/ast/.ashrc 2005-11-14 21:40:36.000000000 +0300 @@ -7,7 +7,7 @@ # Favourite editor and pager, search path for binaries, etc. export EDITOR=vi export PAGER=more -export PATH=$HOME/bin:/usr/local/bin:/bin:/usr/bin +export PATH=$HOME/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin } # End of no-repeat. diff -ur oldsrc/etc/binary_sizes src/etc/binary_sizes --- oldsrc/etc/binary_sizes 2005-08-30 20:56:46.000000000 +0400 +++ src/etc/binary_sizes 2006-01-18 13:29:48.000000000 +0300 @@ -3,5 +3,5 @@ /usr/lib/em_cemcom.ansi 624004 /usr/lib/em_led 538122 /usr/lib/em_opt 148044 -/usr/lib/i386/as 39922 +/usr/lib/i386/as 45000 /usr/lib/i386/cg 50655 diff -ur oldsrc/etc/binary_sizes.big src/etc/binary_sizes.big --- oldsrc/etc/binary_sizes.big 2005-09-05 19:59:17.000000000 +0400 +++ src/etc/binary_sizes.big 2006-02-15 14:18:20.000000000 +0300 @@ -1,7 +1,10 @@ /usr/lib/cpp.ansi 1416004 -/usr/lib/cv 1738570 -/usr/lib/em_cemcom.ansi 4683676 -/usr/lib/em_led 3078088 +/usr/lib/cv 3738570 +/usr/lib/em_cemcom.ansi 10683676 +/usr/lib/em_led 4078088 /usr/lib/em_opt 1370162 /usr/lib/i386/as 1239922 /usr/lib/i386/cg 1285513 +/usr/bin/make 2000000 +/bin/sh 1000000 +/usr/bin/lex 1000000 diff -ur oldsrc/etc/group src/etc/group --- oldsrc/etc/group 2005-04-21 18:55:48.000000000 +0400 +++ src/etc/group 2006-01-25 16:00:13.000000000 +0300 @@ -8,4 +8,6 @@ ftp:*:7: kmem:*:8: www:*:9: +driver:*:10: +server:*:11: nogroup:*:99: diff -ur oldsrc/etc/mtree/minix.tree src/etc/mtree/minix.tree --- oldsrc/etc/mtree/minix.tree 2005-10-21 14:00:34.000000000 +0400 +++ src/etc/mtree/minix.tree 2006-02-17 18:14:46.000000000 +0300 @@ -32,6 +32,8 @@ 755 root operator /usr/sbin 775 bin operator /usr/local 775 bin operator /usr/local/bin +775 bin operator /usr/local/etc +775 bin operator /usr/local/etc/rc.d 775 bin operator /usr/local/include 775 bin operator /usr/local/info 775 bin operator /usr/local/lib @@ -45,6 +47,7 @@ 755 bin operator /usr/local/man/man7 755 bin operator /usr/local/man/man8 755 bin operator /usr/local/man/man9 +775 bin operator /usr/local/packages 775 bin operator /usr/local/src 755 bin operator /usr/man 755 bin operator /usr/man/man1 @@ -65,9 +68,11 @@ 700 root operator /usr/spool/crontabs 775 root uucp /usr/spool/locks 700 daemon daemon /usr/spool/lpd +755 root operator /usr/spool/mail 755 bin operator /usr/src 1777 root operator /usr/tmp 755 root operator /var +/var/log -> /usr/log 755 root operator /usr/log 755 root operator /var/run 755 bin operator /usr/gnu/ diff -ur oldsrc/etc/mtree.sh src/etc/mtree.sh --- oldsrc/etc/mtree.sh 2005-05-03 19:41:02.000000000 +0400 +++ src/etc/mtree.sh 2006-01-25 16:00:13.000000000 +0300 @@ -1,4 +1,4 @@ #!/bin/sh cat $1 | while read line -do echo $line | awk '{ print "mkdir -p "$4" || exit 1; chmod "$1" "$4" || exit 1; chown "$2" "$4" || exit 1; chgrp "$3" "$4" || exit 1" }' | sh || exit 1 +do echo $line | awk 'NF==4 { print "mkdir -p "$4" || exit 1; chmod "$1" "$4" || exit 1; chown "$2" "$4" || exit 1; chgrp "$3" "$4" || exit 1" } NF==3 { print "rm "$1" ; ln -s "$3" "$1" || exit 1" } ' | sh || exit 1 done diff -ur oldsrc/etc/passwd src/etc/passwd --- oldsrc/etc/passwd 2005-09-07 13:21:47.000000000 +0400 +++ src/etc/passwd 2006-02-16 18:38:13.000000000 +0300 @@ -6,4 +6,7 @@ ftp:*:7:7:Anonymous FTP:/usr/ftp: ast:*:8:3:Andrew S. Tanenbaum:/home/ast: www:*:9:9:World Wide Web:/usr/www: +driver:*:10:10:Device Drivers:/: +server:*:11:11:OS Servers:/: +sshd:*:22:22:sshd:/: nobody:*:9999:99::/tmp: diff -ur oldsrc/etc/rc src/etc/rc --- oldsrc/etc/rc 2005-10-21 14:47:13.000000000 +0400 +++ src/etc/rc 2006-02-15 14:18:20.000000000 +0300 @@ -15,15 +15,11 @@ up() { service=$1 - args=$2 - device=$3 + shift # Function to dynamically start a system service - command="/sbin/$service" - if [ ! -z "$args" ]; then command="$command -args \"$args\""; fi - if [ ! -z "$device" ]; then command="$command -dev \"$device\""; fi echo -n " $service" - eval service up $command + service up /sbin/$service "$@" } while getopts 'saf' opt @@ -55,11 +51,11 @@ # Start crucial system services. The floppy driver *must* be loaded # first, as it needs memory below 16MB in order to do ISA DMA. if [ ! "`sysenv label`" = "FLOPPY" ] - then up floppy "" /dev/fd0 - else up at_wini "" /dev/c0d0 + then up floppy -dev /dev/fd0 -period 5HZ + else up at_wini -dev /dev/c0d0 -period 5HZ fi - up is "" - up cmos "" /dev/cmos + up is -period 5HZ + up cmos -dev /dev/cmos -period 5HZ echo . # Set timezone. @@ -90,11 +86,11 @@ # where it is based on sysenv (set by FS when probing for CD). if [ "$bootcd" = 1 ] then - imagedev="`/bin/sysenv cdproberoot`" - usrdev="`expr $imagedev + 1`" + #imagedev="`/bin/sysenv cdproberoot`" + #usrdev="`expr $imagedev + 1`" usr_roflag="-r" - usr="`/bin/dev2name $usrdev`" - echo "Setting /usr to mount readonly from cd: $usrdev -> $usr" + usr="$cddev"p2 + echo "Setting /usr on cd is $usr" fi # Mount the /usr partition unless this is a single floppy Minix. diff -ur oldsrc/etc/rc.rescue src/etc/rc.rescue --- oldsrc/etc/rc.rescue 2005-10-21 17:23:22.000000000 +0400 +++ src/etc/rc.rescue 2006-02-17 19:46:06.000000000 +0300 @@ -6,10 +6,9 @@ then exit fi -service up $DRIVERS/rescue -dev /dev/rescue -args 128 +service up $DRIVERS/rescue -dev /dev/rescue -args 128 -period 4HZ mkfs /dev/rescue || exit mount /dev/rescue $RESCUE || exit -cp $DRIVERS/memory $RESCUE label=`sysenv label` case "$label" in AT) @@ -25,4 +24,4 @@ ;; esac cp $DRIVERS/$d $RESCUE/driver -service rescue $RESCUE +service rescue $RESCUE diff -ur oldsrc/etc/usr/rc src/etc/usr/rc --- oldsrc/etc/usr/rc 2005-09-09 01:15:11.000000000 +0400 +++ src/etc/usr/rc 2006-02-20 18:11:41.000000000 +0300 @@ -55,8 +55,7 @@ up() { service=$1 - args=$2 - device=$3 + shift # Function to dynamically start a system service @@ -64,11 +63,8 @@ if disabled $service; then return; fi # Service is not disabled. Try to bring it up. - command="/usr/sbin/$service" - if [ ! -z "$args" ]; then command="$command -args \"$args\""; fi - if [ ! -z "$device" ]; then command="$command -dev \"$device\""; fi echo -n " $service" - eval service up $command + service up /usr/sbin/$service "$@" } case $action in @@ -81,7 +77,7 @@ # Start servers and drivers set at the boot monitor. echo -n "Starting services:" - up random "" /dev/random + up random -dev /dev/random -period 3HZ # load random number generator if [ -f $RANDOM_FILE ] @@ -97,11 +93,12 @@ if grep " $driver " /etc/inet.conf > /dev/null 2>&1 then eval arg=\$${driver}_arg - up $driver "$arg" + if [ ! -z "$arg" ]; then arg="-args \"$arg\""; fi + eval up $driver $arg -period 5HZ fi done - up inet "" - up printer "" /dev/lp + up inet + up printer -dev /dev/lp -period 10HZ echo . # Network initialization. @@ -157,11 +154,32 @@ ;; stop|down) - # Save random data. - if dd if=/dev/random of=$RANDOM_FILE.new bs=1024 count=1 2>/dev/null - then + # Save random data, if /usr is mounted rw. + if grep ' \/usr .*rw' /etc/mtab >/dev/null + then + if dd if=/dev/random of=$RANDOM_FILE.new bs=1024 count=1 2>/dev/null + then mv $RANDOM_FILE.new $RANDOM_FILE - else + else echo 'Failed to save random data.' + fi fi esac + +d=/usr/local/etc/rc.d +# Let packages run their own scripts +if [ -d "$d" ] +then if cd $d + then + echo -n "Local packages ($action): " + for f in * + do + if [ -x "$f" ] + then echo -n "$f " + sh "$f" "$action" + fi + done + echo " done." + fi +fi + diff -ur oldsrc/include/ctype.h src/include/ctype.h --- oldsrc/include/ctype.h 2005-04-21 18:55:49.000000000 +0400 +++ src/include/ctype.h 2005-11-09 18:43:39.000000000 +0300 @@ -35,6 +35,7 @@ _PROTOTYPE( int isxdigit,(int _c) ); /* hex digit [0-9], [a-f], [A-F] */ _PROTOTYPE( int tolower, (int _c) ); /* convert to lower-case */ _PROTOTYPE( int toupper, (int _c) ); /* convert to upper-case */ +_PROTOTYPE( int toascii, (int _c) ); /* convert to 7-bit ASCII */ /* Macros for identifying character classes. */ #define isalnum(c) ((__ctype+1)[c]&(_U|_L|_N)) @@ -51,4 +52,6 @@ #define isprint(c) ((unsigned) ((c)-' ') < 95) #define isascii(c) ((unsigned) (c) < 128) +#define toascii(c) ((c) & 0x7f) + #endif /* _CTYPE_H */ diff -ur oldsrc/include/dirent.h src/include/dirent.h --- oldsrc/include/dirent.h 2005-08-12 16:41:29.000000000 +0400 +++ src/include/dirent.h 2006-01-20 16:42:28.000000000 +0300 @@ -40,21 +40,21 @@ /* The block size must be at least 1024 bytes, because otherwise * the superblock (at 1024 bytes) overlaps with other filesystem data. */ -#define MIN_BLOCK_SIZE 1024 +#define _MIN_BLOCK_SIZE 1024 /* The below is allocated in some parts of the system as the largest * a filesystem block can be. For instance, the boot monitor allocates * 3 of these blocks and has to fit within 64kB, so this can't be * increased without taking that into account. */ -#define MAX_BLOCK_SIZE 4096 +#define _MAX_BLOCK_SIZE 4096 /* This is the block size for the fixed versions of the filesystem (V1/V2) */ -#define STATIC_BLOCK_SIZE 1024 +#define _STATIC_BLOCK_SIZE 1024 -#define STATIC_FLEX_PER_BLOCK (STATIC_BLOCK_SIZE/sizeof(struct _fl_direct)) -#define FLEX_PER_V7 (_EXTENT(DIRSIZ) + 1) -#define FLEX_PER_BLOCK (STATIC_BLOCK_SIZE/sizeof(struct _fl_direct)) +#define _STATIC_FLEX_PER_BLOCK (_STATIC_BLOCK_SIZE/sizeof(struct _fl_direct)) +#define _FLEX_PER_V7 (_EXTENT(DIRSIZ) + 1) +#define _FLEX_PER_BLOCK (_STATIC_BLOCK_SIZE/sizeof(struct _fl_direct)) /* Definitions for the directory(3) routines: */ typedef struct { @@ -63,8 +63,8 @@ short _count; /* This many objects in buf */ off_t _pos; /* Position in directory file */ struct _fl_direct *_ptr; /* Next slot in buf */ - struct _fl_direct _buf[FLEX_PER_BLOCK]; /* One block of a directory file */ - struct _fl_direct _v7f[FLEX_PER_V7]; /* V7 entry transformed to flex */ + struct _fl_direct _buf[_FLEX_PER_BLOCK]; /* One block of a directory file */ + struct _fl_direct _v7f[_FLEX_PER_V7]; /* V7 entry transformed to flex */ } DIR; #define _DIRENT_NAME_LEN 61 @@ -84,6 +84,9 @@ #ifdef _MINIX _PROTOTYPE( int seekdir, (DIR *_dirp, off_t _loc) ); _PROTOTYPE( off_t telldir, (DIR *_dirp) ); + +#define dirfd(dirp) ((dirp)->_fd) + #endif #endif /* _DIRENT_H */ diff -ur oldsrc/include/errno.h src/include/errno.h --- oldsrc/include/errno.h 2005-10-21 00:34:34.000000000 +0400 +++ src/include/errno.h 2006-02-17 16:43:50.000000000 +0300 @@ -73,6 +73,7 @@ #define ENOLCK (_SIGN 37) /* no locks available */ #define ENOSYS (_SIGN 38) /* function not implemented */ #define ENOTEMPTY (_SIGN 39) /* directory not empty */ +#define ELOOP (_SIGN 40) /* too many levels of symlinks detected */ /* The following errors relate to networking. */ #define EPACKSIZE (_SIGN 50) /* invalid packet size for some protocol */ @@ -99,7 +100,8 @@ #define EADDRNOTAVAIL (_SIGN 71) /* Can't assign requested address */ #define EALREADY (_SIGN 72) /* Connection already in progress */ #define EMSGSIZE (_SIGN 73) /* Message too long */ -#define ELOOP (_SIGN 74) /* Too many levels of symbolic links */ +#define ENOTSOCK (_SIGN 74) /* Socket operation on non-socket */ +#define ENOPROTOOPT (_SIGN 75) /* Protocol not available */ /* The following are not POSIX errors, but they can still happen. * All of these are generated by the kernel and relate to message passing. diff -ur oldsrc/include/fcntl.h src/include/fcntl.h --- oldsrc/include/fcntl.h 2005-08-22 19:23:45.000000000 +0400 +++ src/include/fcntl.h 2006-01-11 20:14:49.000000000 +0300 @@ -23,6 +23,7 @@ #define F_GETLK 5 /* get record locking information */ #define F_SETLK 6 /* set record locking information */ #define F_SETLKW 7 /* set record locking info; wait if blocked */ +#define F_FREESP 8 /* free a section of a regular file */ /* File descriptor flags used for fcntl(). POSIX Table 6-2. */ #define FD_CLOEXEC 1 /* close on exec flag for third arg of fcntl */ @@ -64,4 +65,12 @@ _PROTOTYPE( int fcntl, (int _filedes, int _cmd, ...) ); _PROTOTYPE( int open, (const char *_path, int _oflag, ...) ); +/* For locking files. */ +#define LOCK_SH F_RDLCK /* Shared lock */ +#define LOCK_EX F_WRLCK /* Exclusive lock */ +#define LOCK_NB 0x0080 /* Do not block when locking */ +#define LOCK_UN F_UNLCK /* Unlock */ + +_PROTOTYPE( int flock, (int fd, int mode) ); + #endif /* _FCNTL_H */ Only in src/include: fts.h diff -ur oldsrc/include/ibm/interrupt.h src/include/ibm/interrupt.h --- oldsrc/include/ibm/interrupt.h 2005-08-22 19:23:45.000000000 +0400 +++ src/include/ibm/interrupt.h 2005-10-24 17:52:53.000000000 +0400 @@ -46,6 +46,7 @@ #define XT_WINI_IRQ 5 /* xt winchester */ #define FLOPPY_IRQ 6 /* floppy disk */ #define PRINTER_IRQ 7 +#define KBD_AUX_IRQ 12 /* AUX (PS/2 mouse) port in kbd controller */ #define AT_WINI_0_IRQ 14 /* at winchester controller 0 */ #define AT_WINI_1_IRQ 15 /* at winchester controller 1 */ Only in src/include/ibm: pci.h diff -ur oldsrc/include/limits.h src/include/limits.h --- oldsrc/include/limits.h 2005-09-16 18:23:14.000000000 +0400 +++ src/include/limits.h 2006-02-13 13:32:05.000000000 +0300 @@ -47,7 +47,7 @@ #define _POSIX_LINK_MAX 8 /* a file may have 8 links */ #define _POSIX_MAX_CANON 255 /* size of the canonical input queue */ #define _POSIX_MAX_INPUT 255 /* you can type 255 chars ahead */ -#define _POSIX_NAME_MAX DIRSIZ /* a file name may have 14 chars */ +#define _POSIX_NAME_MAX DIRSIZ /* max. file name length */ #define _POSIX_NGROUPS_MAX 0 /* supplementary group IDs are optional */ #define _POSIX_OPEN_MAX 16 /* a process may have 16 files open */ #define _POSIX_PATH_MAX 255 /* a pathname may contain 255 chars */ @@ -67,7 +67,7 @@ #define ARG_MAX 4096 /* args + environ on small machines */ #endif #define CHILD_MAX _NO_LIMIT /* MINIX does not limit children */ -#define OPEN_MAX 20 /* # open files a process may have */ +#define OPEN_MAX 30 /* # open files a process may have */ #if 0 /* V1 file system */ #define LINK_MAX CHAR_MAX /* # links a file may have */ #else /* V2 or better file system */ diff -ur oldsrc/include/math.h src/include/math.h --- oldsrc/include/math.h 2005-07-11 17:00:42.000000000 +0400 +++ src/include/math.h 2005-11-04 20:14:59.000000000 +0300 @@ -35,6 +35,7 @@ _PROTOTYPE( double sqrt, (double _x) ); _PROTOTYPE( double tan, (double _x) ); _PROTOTYPE( double tanh, (double _x) ); +_PROTOTYPE( double hypot, (double _x, double _y) ); #ifdef _POSIX_SOURCE /* STD-C? */ #include diff -ur oldsrc/include/minix/callnr.h src/include/minix/callnr.h --- oldsrc/include/minix/callnr.h 2005-08-04 23:23:02.000000000 +0400 +++ src/include/minix/callnr.h 2006-01-11 20:14:50.000000000 +0300 @@ -1,4 +1,4 @@ -#define NCALLS 91 /* number of system calls allowed */ +#define NCALLS 95 /* number of system calls allowed */ #define EXIT 1 #define FORK 2 @@ -39,9 +39,12 @@ #define DUP 41 #define PIPE 42 #define TIMES 43 +#define SYMLINK 45 #define SETGID 46 #define GETGID 47 #define SIGNAL 48 +#define RDLNK 49 +#define LSTAT 50 #define IOCTL 54 #define FCNTL 55 #define EXEC 59 @@ -79,3 +82,7 @@ #define GETPRIORITY 88 /* to PM */ #define SETPRIORITY 89 /* to PM */ #define GETTIMEOFDAY 90 /* to PM */ +#define SETEUID 91 /* to PM */ +#define SETEGID 92 /* to PM */ +#define TRUNCATE 93 /* to FS */ +#define FTRUNCATE 94 /* to FS */ diff -ur oldsrc/include/minix/com.h src/include/minix/com.h --- oldsrc/include/minix/com.h 2005-10-22 00:04:01.000000000 +0400 +++ src/include/minix/com.h 2006-02-15 17:21:56.000000000 +0300 @@ -37,9 +37,8 @@ #define MEM_PROC_NR 3 /* memory driver (RAM disk, null, etc.) */ #define LOG_PROC_NR 4 /* log device driver */ #define TTY_PROC_NR 5 /* terminal (TTY) driver */ -#define DRVR_PROC_NR 6 /* device driver for boot medium */ -#define DS_PROC_NR 7 /* data store server */ -#define INIT_PROC_NR 8 /* init -- goes multiuser */ +#define DS_PROC_NR 6 /* data store server */ +#define INIT_PROC_NR 7 /* init -- goes multiuser */ /* Number of processes contained in the system image. */ #define NR_BOOT_PROCS (NR_TASKS + INIT_PROC_NR + 1) @@ -71,6 +70,57 @@ #define NOTIFY_FLAGS m2_i1 /*===========================================================================* + * Messages for BUS controller drivers * + *===========================================================================*/ +#define BUSC_RQ_BASE 0x300 /* base for request types */ +#define BUSC_RS_BASE 0x380 /* base for response types */ + +#define BUSC_PCI_INIT (BUSC_RQ_BASE + 0) /* First message to + * PCI driver + */ +#define BUSC_PCI_FIRST_DEV (BUSC_RQ_BASE + 1) /* Get index (and + * vid/did) of the + * first PCI device + */ +#define BUSC_PCI_NEXT_DEV (BUSC_RQ_BASE + 2) /* Get index (and + * vid/did) of the + * next PCI device + */ +#define BUSC_PCI_FIND_DEV (BUSC_RQ_BASE + 3) /* Get index of a + * PCI device based on + * bus/dev/function + */ +#define BUSC_PCI_IDS (BUSC_RQ_BASE + 4) /* Get vid/did from an + * index + */ +#define BUSC_PCI_DEV_NAME (BUSC_RQ_BASE + 5) /* Get the name of a + * PCI device + */ +#define BUSC_PCI_SLOT_NAME (BUSC_RQ_BASE + 6) /* Get the name of a + * PCI slot + */ +#define BUSC_PCI_RESERVE (BUSC_RQ_BASE + 7) /* Reserve a PCI dev */ +#define BUSC_PCI_ATTR_R8 (BUSC_RQ_BASE + 8) /* Read 8-bit + * attribute value + */ +#define BUSC_PCI_ATTR_R16 (BUSC_RQ_BASE + 9) /* Read 16-bit + * attribute value + */ +#define BUSC_PCI_ATTR_R32 (BUSC_RQ_BASE + 10) /* Read 32-bit + * attribute value + */ +#define BUSC_PCI_ATTR_W8 (BUSC_RQ_BASE + 11) /* Write 8-bit + * attribute value + */ +#define BUSC_PCI_ATTR_W16 (BUSC_RQ_BASE + 12) /* Write 16-bit + * attribute value + */ +#define BUSC_PCI_ATTR_W32 (BUSC_RQ_BASE + 13) /* Write 32-bit + * attribute value + */ +#define BUSC_PCI_RESCAN (BUSC_RQ_BASE + 14) /* Rescan bus */ + +/*===========================================================================* * Messages for BLOCK and CHARACTER device drivers * *===========================================================================*/ @@ -222,8 +272,17 @@ # define SYS_GETINFO (KERNEL_CALL + 26) /* sys_getinfo() */ # define SYS_ABORT (KERNEL_CALL + 27) /* sys_abort() */ # define SYS_IOPENABLE (KERNEL_CALL + 28) /* sys_enable_iop() */ +# define SYS_VM_SETBUF (KERNEL_CALL + 29) /* sys_vm_setbuf() */ +# define SYS_VM_MAP (KERNEL_CALL + 30) /* sys_vm_map() */ + +#define NR_SYS_CALLS 31 /* number of system calls */ -#define NR_SYS_CALLS 29 /* number of system calls */ +/* Subfunctions for SYS_PRIVCTL */ +#define SYS_PRIV_INIT 1 /* Initialize a privilege structure */ +#define SYS_PRIV_ADD_IO 2 /* Add I/O range (struct io_range) */ +#define SYS_PRIV_ADD_MEM 3 /* Add memory range (struct mem_range) + */ +#define SYS_PRIV_ADD_IRQ 4 /* Add IRQ */ /* Field names for SYS_MEMSET, SYS_SEGCTL. */ #define MEM_PTR m2_p1 /* base */ @@ -323,11 +382,13 @@ # define GET_MACHINE 12 /* get machine information */ # define GET_LOCKTIMING 13 /* get lock()/unlock() latency timing */ # define GET_BIOSBUFFER 14 /* get a buffer for BIOS calls */ +# define GET_LOADINFO 15 /* get load average information */ #define I_PROC_NR m7_i4 /* calling process */ #define I_VAL_PTR m7_p1 /* virtual address at caller */ #define I_VAL_LEN m7_i1 /* max length of value */ #define I_VAL_PTR2 m7_p2 /* second virtual address */ #define I_VAL_LEN2 m7_i2 /* second length, or proc nr */ +# define GET_IRQACTIDS 16 /* get the IRQ masks */ /* Field names for SYS_TIMES. */ #define T_PROC_NR m4_l1 /* process to request time info for */ @@ -337,7 +398,7 @@ #define T_CHILD_STIME m4_l4 /* sys time consumed by process' children */ #define T_BOOT_TICKS m4_l5 /* number of clock ticks since boot time */ -/* Field names for SYS_TRACE, SYS_SVRCTL. */ +/* Field names for SYS_TRACE, SYS_PRIVCTL. */ #define CTL_PROC_NR m2_i1 /* process number of the caller */ #define CTL_REQUEST m2_i2 /* server control request */ #define CTL_MM_PRIV m2_i3 /* privilege as seen by PM */ diff -ur oldsrc/include/minix/config.h src/include/minix/config.h --- oldsrc/include/minix/config.h 2005-10-21 00:11:51.000000000 +0400 +++ src/include/minix/config.h 2006-01-18 12:49:53.000000000 +0300 @@ -3,7 +3,7 @@ /* Minix release and version numbers. */ #define OS_RELEASE "3" -#define OS_VERSION "1.1" +#define OS_VERSION "1.2" /* This file sets configuration parameters for the MINIX kernel, FS, and PM. * It is divided up into two main sections. The first section contains diff -ur oldsrc/include/minix/const.h src/include/minix/const.h --- oldsrc/include/minix/const.h 2005-09-30 16:47:03.000000000 +0400 +++ src/include/minix/const.h 2006-01-27 16:57:17.000000000 +0300 @@ -18,10 +18,6 @@ #define SUPER_USER (uid_t) 0 /* uid_t of superuser */ -/* Devices. */ -#define MAJOR 8 /* major device = (dev>>MAJOR) & 0377 */ -#define MINOR 0 /* minor device = (dev>>MINOR) & 0377 */ - #define NULL ((void *)0) /* null pointer */ #define CPVEC_NR 16 /* max # of entries in a SYS_VCOPY request */ #define CPVVEC_NR 64 /* max # of entries in a SYS_VCOPY request */ @@ -96,6 +92,7 @@ /* Flag bits for i_mode in the inode. */ #define I_TYPE 0170000 /* this field gives inode type */ +#define I_SYMBOLIC_LINK 0120000 /* file is a symbolic link */ #define I_REGULAR 0100000 /* regular file, not dir or special */ #define I_BLOCK_SPECIAL 0060000 /* block special file */ #define I_DIRECTORY 0040000 /* file is a directory */ @@ -119,6 +116,8 @@ #define MAX_INODE_NR ((ino_t) 037777777777) /* largest inode number */ #define MAX_FILE_POS ((off_t) 037777777777) /* largest legal file offset */ +#define MAX_SYM_LOOPS 8 /* how many symbolic links are recursed */ + #define NO_BLOCK ((block_t) 0) /* absence of a block number */ #define NO_ENTRY ((ino_t) 0) /* absence of a dir entry */ #define NO_ZONE ((zone_t) 0) /* absence of a zone number */ diff -ur oldsrc/include/minix/dmap.h src/include/minix/dmap.h --- oldsrc/include/minix/dmap.h 2005-10-21 14:56:47.000000000 +0400 +++ src/include/minix/dmap.h 2006-02-15 14:18:21.000000000 +0300 @@ -41,12 +41,14 @@ # define NULL_DEV 3 /* minor device for /dev/null */ # define BOOT_DEV 4 /* minor device for /dev/boot */ # define ZERO_DEV 5 /* minor device for /dev/zero */ +# define IMGRD_DEV 6 /* minor device for /dev/imgrd */ #define CTRLR(n) ((n)==0 ? 3 : (8 + 2*((n)-1))) /* magic formula */ /* Full device numbers that are special to the boot monitor and FS. */ # define DEV_RAM 0x0100 /* device number of /dev/ram */ # define DEV_BOOT 0x0104 /* device number of /dev/boot */ +# define DEV_IMGRD 0x0106 /* device number of /dev/imgrd */ #define FLOPPY_MAJOR 2 /* major device for floppy disks */ #define TTY_MAJOR 4 /* major device for ttys */ diff -ur oldsrc/include/minix/paths.h src/include/minix/paths.h --- oldsrc/include/minix/paths.h 2005-08-26 16:14:25.000000000 +0400 +++ src/include/minix/paths.h 2006-01-20 16:42:29.000000000 +0300 @@ -12,4 +12,7 @@ #define _PATH_MOTD "/etc/motd" #define _PATH_HOSTS "/etc/hosts" +#define _PATH_DEFTAPE "/dev/sa0" +#define _PATH_TMP "/tmp" + #endif Only in src/include/minix: queryparam.h diff -ur oldsrc/include/minix/sys_config.h src/include/minix/sys_config.h --- oldsrc/include/minix/sys_config.h 2005-10-13 16:45:09.000000000 +0400 +++ src/include/minix/sys_config.h 2006-02-10 19:53:51.000000000 +0300 @@ -68,4 +68,7 @@ error "_MINIX_MACHINE has incorrect value (0)" #endif +/* Kernel debug checks */ +#define DEBUG_LOCK_CHECK 0 /* Interrupt Lock/unlock sanity checking. */ + #endif /* _MINIX_SYS_CONFIG_H */ diff -ur oldsrc/include/minix/syslib.h src/include/minix/syslib.h --- oldsrc/include/minix/syslib.h 2005-10-22 00:04:01.000000000 +0400 +++ src/include/minix/syslib.h 2006-01-27 16:02:02.000000000 +0300 @@ -34,10 +34,14 @@ _PROTOTYPE( int sys_exit, (int proc)); _PROTOTYPE( int sys_trace, (int req, int proc, long addr, long *data_p)); -_PROTOTYPE( int sys_svrctl, (int proc, int req, int priv,vir_bytes argp)); +_PROTOTYPE( int sys_privctl, (int proc, int req, int i, void *p)); _PROTOTYPE( int sys_nice, (int proc, int priority)); _PROTOTYPE( int sys_int86, (struct reg86u *reg86p)); +_PROTOTYPE( int sys_vm_setbuf, (phys_bytes base, phys_bytes size, + phys_bytes high)); +_PROTOTYPE( int sys_vm_map, (int proc_nr, int do_map, + phys_bytes base, phys_bytes size, phys_bytes offset)); /* Shorthands for sys_sdevio() system call. */ #define sys_insb(port, proc_nr, buffer, count) \ @@ -102,6 +106,7 @@ /* Shorthands for sys_getinfo() system call. */ #define sys_getkmessages(dst) sys_getinfo(GET_KMESSAGES, dst, 0,0,0) #define sys_getkinfo(dst) sys_getinfo(GET_KINFO, dst, 0,0,0) +#define sys_getloadinfo(dst) sys_getinfo(GET_LOADINFO, dst, 0,0,0) #define sys_getmachine(dst) sys_getinfo(GET_MACHINE, dst, 0,0,0) #define sys_getproctab(dst) sys_getinfo(GET_PROCTAB, dst, 0,0,0) #define sys_getprivtab(dst) sys_getinfo(GET_PRIVTAB, dst, 0,0,0) @@ -109,6 +114,7 @@ #define sys_getrandomness(dst) sys_getinfo(GET_RANDOMNESS, dst, 0,0,0) #define sys_getimage(dst) sys_getinfo(GET_IMAGE, dst, 0,0,0) #define sys_getirqhooks(dst) sys_getinfo(GET_IRQHOOKS, dst, 0,0,0) +#define sys_getirqactids(dst) sys_getinfo(GET_IRQACTIDS, dst, 0,0,0) #define sys_getmonparams(v,vl) sys_getinfo(GET_MONPARAMS, v,vl, 0,0) #define sys_getschedinfo(v1,v2) sys_getinfo(GET_SCHEDINFO, v1,0, v2,0) #define sys_getlocktimings(dst) sys_getinfo(GET_LOCKTIMING, dst, 0,0,0) @@ -142,10 +148,29 @@ _PROTOTYPE(int sys_out, (int port, unsigned long value, int type) ); /* Shorthands for sys_in() system call. */ -#define sys_inb(p,v) sys_in((p), (unsigned long*) (v), DIO_BYTE) -#define sys_inw(p,v) sys_in((p), (unsigned long*) (v), DIO_WORD) -#define sys_inl(p,v) sys_in((p), (unsigned long*) (v), DIO_LONG) +#define sys_inb(p,v) sys_in((p), (v), DIO_BYTE) +#define sys_inw(p,v) sys_in((p), (v), DIO_WORD) +#define sys_inl(p,v) sys_in((p), (v), DIO_LONG) _PROTOTYPE(int sys_in, (int port, unsigned long *value, int type) ); +/* pci.c */ +_PROTOTYPE( void pci_init, (void) ); +_PROTOTYPE( void pci_init1, (char *name) ); +_PROTOTYPE( int pci_first_dev, (int *devindp, u16_t *vidp, u16_t *didp) ); +_PROTOTYPE( int pci_next_dev, (int *devindp, u16_t *vidp, u16_t *didp) ); +_PROTOTYPE( int pci_find_dev, (U8_t bus, U8_t dev, U8_t func, + int *devindp) ); +_PROTOTYPE( void pci_reserve, (int devind) ); +_PROTOTYPE( void pci_ids, (int devind, u16_t *vidp, u16_t *didp) ); +_PROTOTYPE( void pci_rescan_bus, (U8_t busnr) ); +_PROTOTYPE( u8_t pci_attr_r8, (int devind, int port) ); +_PROTOTYPE( u16_t pci_attr_r16, (int devind, int port) ); +_PROTOTYPE( u32_t pci_attr_r32, (int devind, int port) ); +_PROTOTYPE( void pci_attr_w8, (int devind, int port, U8_t value) ); +_PROTOTYPE( void pci_attr_w16, (int devind, int port, U16_t value) ); +_PROTOTYPE( void pci_attr_w32, (int devind, int port, u32_t value) ); +_PROTOTYPE( char *pci_dev_name, (U16_t vid, U16_t did) ); +_PROTOTYPE( char *pci_slot_name, (int devind) ); + #endif /* _SYSLIB_H */ diff -ur oldsrc/include/minix/type.h src/include/minix/type.h --- oldsrc/include/minix/type.h 2005-10-21 00:34:34.000000000 +0400 +++ src/include/minix/type.h 2006-02-10 19:53:51.000000000 +0300 @@ -104,7 +104,27 @@ int nr_tasks; /* number of kernel tasks */ char release[6]; /* kernel release number */ char version[6]; /* kernel version number */ - int relocking; /* relocking check (for debugging) */ +#if DEBUG_LOCK_CHECK + int relocking; /* interrupt locking depth (should be 0) */ +#endif +}; + +/* Load data accounted every this no. of seconds. */ +#define _LOAD_UNIT_SECS 6 + +/* Load data history is kept for this long. */ +#define _LOAD_HISTORY_MINUTES 15 +#define _LOAD_HISTORY_SECONDS (60*_LOAD_HISTORY_MINUTES) + +/* We need this many slots to store the load history. */ +#define _LOAD_HISTORY (_LOAD_HISTORY_SECONDS/_LOAD_UNIT_SECS) + +/* Runnable processes and other load-average information. */ +struct loadinfo { + u16_t procs_enqueued; /* current no. of runnable processes */ + u16_t proc_load_history[_LOAD_HISTORY]; /* history of proc_s_cur */ + u16_t proc_last_slot; + clock_t last_clock; }; struct machine { @@ -116,4 +136,16 @@ int vdu_vga; }; +struct io_range +{ + unsigned ior_base; /* Lowest I/O port in range */ + unsigned ior_limit; /* Highest I/O port in range */ +}; + +struct mem_range +{ + phys_bytes mr_base; /* Lowest memory address in range */ + phys_bytes mr_limit; /* Highest memory address in range */ +}; + #endif /* _TYPE_H */ diff -ur oldsrc/include/net/gen/nameser.h src/include/net/gen/nameser.h --- oldsrc/include/net/gen/nameser.h 2005-08-22 19:23:45.000000000 +0400 +++ src/include/net/gen/nameser.h 2005-11-17 04:29:08.000000000 +0300 @@ -39,6 +39,8 @@ u16_t dh_arcount; } dns_hdr_t; +typedef dns_hdr_t HEADER; + #define DHF_QR 0x80 #define DHF_OPCODE 0x78 #define DHF_AA 0x04 diff -ur oldsrc/include/netinet/in.h src/include/netinet/in.h --- oldsrc/include/netinet/in.h 2005-09-30 16:41:25.000000000 +0400 +++ src/include/netinet/in.h 2005-11-17 04:23:46.000000000 +0300 @@ -14,6 +14,8 @@ #define INADDR_ANY (uint32_t)0x00000000 #define INADDR_BROADCAST (uint32_t)0xFFFFFFFF +#define IPPORT_RESERVED 1024 + typedef uint16_t in_port_t; #ifndef _IN_ADDR_T @@ -29,7 +31,9 @@ /* Protocols */ #define IPPROTO_IP 0 /* Dummy protocol */ +#define IPPROTO_ICMP 1 /* ICMP */ #define IPPROTO_TCP 6 /* TCP */ +#define IPPROTO_EGP 8 /* exterior gateway protocol */ #define IPPROTO_UDP 17 /* UDP */ /* setsockopt options at IP level */ @@ -57,4 +61,14 @@ struct in_addr imr_interface; }; +/* Definitions that are not part of the Open Group Base Specifications */ +#define IN_CLASSA(i) (((uint32_t)(i) & 0x80000000) == 0) +#define IN_CLASSA_NET 0xff000000 + +#define IN_CLASSB(i) (((uint32_t)(i) & 0xc0000000) == 0x80000000) +#define IN_CLASSB_NET 0xffff0000 + +#define IN_CLASSC(i) (((u_int32_t)(i) & 0xe0000000) == 0xc0000000) +#define IN_CLASSC_NET 0xffffff00 + #endif /* _NETINET__IN_H */ diff -ur oldsrc/include/netinet/tcp.h src/include/netinet/tcp.h --- oldsrc/include/netinet/tcp.h 2005-07-11 17:00:43.000000000 +0400 +++ src/include/netinet/tcp.h 2006-02-17 16:43:50.000000000 +0300 @@ -0,0 +1,5 @@ +/* +netinet/tcp.h +*/ + +#define TCP_NODELAY 0x01 /* Avoid coalescing of small segments */ diff -ur oldsrc/include/signal.h src/include/signal.h --- oldsrc/include/signal.h 2005-10-03 16:03:57.000000000 +0400 +++ src/include/signal.h 2006-02-17 17:12:12.000000000 +0300 @@ -31,8 +31,7 @@ #define SIGILL 4 /* illegal instruction */ #define SIGTRAP 5 /* trace trap (not reset when caught) */ #define SIGABRT 6 /* IOT instruction */ -#define SIGIOT 6 /* SIGABRT for people who speak PDP-11 */ -#define SIGUNUSED 7 /* spare code */ +#define SIGBUS 7 /* bus error */ #define SIGFPE 8 /* floating point exception */ #define SIGKILL 9 /* kill (cannot be caught or ignored) */ #define SIGUSR1 10 /* user defined signal # 1 */ @@ -41,11 +40,9 @@ #define SIGPIPE 13 /* write on a pipe with no one to read it */ #define SIGALRM 14 /* alarm clock */ #define SIGTERM 15 /* software termination signal from kill */ +#define SIGEMT 16 /* EMT instruction */ #define SIGCHLD 17 /* child process terminated or stopped */ -#define SIGEMT 7 /* obsolete */ -#define SIGBUS 10 /* obsolete */ - /* MINIX specific signals. These signals are not used by user proceses, * but meant to inform system processes, like the PM, about system events. */ @@ -67,6 +64,10 @@ #define SIGTTIN 21 /* background process wants to read */ #define SIGTTOU 22 /* background process wants to write */ +#ifdef _MINIX +#define SIGIOT SIGABRT /* for people who speak PDP-11 */ +#endif + /* The sighandler_t type is not allowed unless _POSIX_SOURCE is defined. */ typedef void _PROTOTYPE( (*__sighandler_t), (int) ); diff -ur oldsrc/include/stdlib.h src/include/stdlib.h --- oldsrc/include/stdlib.h 2005-07-11 17:00:42.000000000 +0400 +++ src/include/stdlib.h 2005-11-14 18:58:07.000000000 +0300 @@ -71,6 +71,7 @@ _PROTOTYPE( long random, (void) ); _PROTOTYPE( char *setstate, (const char *state) ); _PROTOTYPE( void srandom, (unsigned seed) ); +_PROTOTYPE( int getloadavg, (double *, int) ); #endif #ifdef _MINIX diff -ur oldsrc/include/sys/ioc_memory.h src/include/sys/ioc_memory.h --- oldsrc/include/sys/ioc_memory.h 2005-10-22 00:04:01.000000000 +0400 +++ src/include/sys/ioc_memory.h 2005-09-30 16:47:03.000000000 +0400 @@ -10,5 +10,7 @@ #include #define MIOCRAMSIZE _IOW('m', 3, u32_t) +#define MIOCMAP _IOR('m', 4, struct mapreq) +#define MIOCUNMAP _IOR('m', 5, struct mapreq) #endif /* _S_I_MEMORY_H */ diff -ur oldsrc/include/sys/ioc_tty.h src/include/sys/ioc_tty.h --- oldsrc/include/sys/ioc_tty.h 2005-04-21 18:55:55.000000000 +0400 +++ src/include/sys/ioc_tty.h 2005-10-24 17:52:53.000000000 +0400 @@ -31,6 +31,8 @@ #define TIOCSETC _IOW('t', 4, struct tchars) /* Keyboard ioctls. */ +#define KIOCBELL _IOW('k', 1, struct kio_bell) +#define KIOCSLEDS _IOW('k', 2, struct kio_leds) #define KIOCSMAP _IOW('k', 3, keymap_t) #endif /* _S_I_TTY_H */ Only in src/include/sys: kbdio.h diff -ur oldsrc/include/sys/param.h src/include/sys/param.h --- oldsrc/include/sys/param.h 2005-07-11 17:00:43.000000000 +0400 +++ src/include/sys/param.h 2005-11-09 18:43:39.000000000 +0300 @@ -2,6 +2,4 @@ sys/param.h */ -/* Do we need this header file? Maybe an empty one is sufficient to avoid - * compilations errors. - */ +#define MAXHOSTNAMELEN 256 /* max hostname size */ diff -ur oldsrc/include/sys/socket.h src/include/sys/socket.h --- oldsrc/include/sys/socket.h 2005-09-30 16:41:25.000000000 +0400 +++ src/include/sys/socket.h 2006-02-17 16:43:50.000000000 +0300 @@ -26,6 +26,7 @@ #define SO_KEEPALIVE 0x0008 #define SO_SNDBUF 0x1001 /* send buffer size */ +#define SO_RCVBUF 0x1002 /* receive buffer size */ #define SO_ERROR 0x1007 /* get and clear error status */ /* The how argument to shutdown */ @@ -43,7 +44,7 @@ struct sockaddr { sa_family_t sa_family; - char sa_data[1]; + char sa_data[8]; /* Big enough for sockaddr_in */ }; _PROTOTYPE( int accept, (int _socket, @@ -61,6 +62,8 @@ socklen_t *_RESTRICT _address_len) ); _PROTOTYPE( int setsockopt,(int _socket, int _level, int _option_name, const void *_option_value, socklen_t _option_len) ); +_PROTOTYPE( int getsockopt, (int _socket, int _level, int _option_name, + void *_RESTRICT _option_value, socklen_t *_RESTRICT _option_len)); _PROTOTYPE( int listen, (int _socket, int _backlog) ); _PROTOTYPE( ssize_t recvfrom, (int _socket, void *_RESTRICT _buffer, size_t _length, int _flags, struct sockaddr *_RESTRICT _address, diff -ur oldsrc/include/sys/stat.h src/include/sys/stat.h --- oldsrc/include/sys/stat.h 2005-06-23 15:07:31.000000000 +0400 +++ src/include/sys/stat.h 2005-12-20 17:17:05.000000000 +0300 @@ -25,18 +25,15 @@ }; /* Traditional mask definitions for st_mode. */ -/* The ugly casts on only some of the definitions are to avoid suprising sign - * extensions such as S_IFREG != (mode_t) S_IFREG when ints are 32 bits. - */ -#define S_IFMT ((mode_t) 0170000) /* type of file */ -#define S_IFLNK ((mode_t) 0120000) /* symbolic link, not implemented */ -#define S_IFREG ((mode_t) 0100000) /* regular */ -#define S_IFBLK 0060000 /* block special */ -#define S_IFDIR 0040000 /* directory */ -#define S_IFCHR 0020000 /* character special */ -#define S_IFIFO 0010000 /* this is a FIFO */ -#define S_ISUID 0004000 /* set user id on execution */ -#define S_ISGID 0002000 /* set group id on execution */ +#define S_IFMT 0170000 /* type of file */ +#define S_IFLNK 0120000 /* symbolic link */ +#define S_IFREG 0100000 /* regular */ +#define S_IFBLK 0060000 /* block special */ +#define S_IFDIR 0040000 /* directory */ +#define S_IFCHR 0020000 /* character special */ +#define S_IFIFO 0010000 /* this is a FIFO */ +#define S_ISUID 0004000 /* set user id on execution */ +#define S_ISGID 0002000 /* set group id on execution */ /* next is reserved for future use */ #define S_ISVTX 01000 /* save swapped text even after use */ @@ -56,13 +53,18 @@ #define S_IWOTH 00002 /* others: -------w- */ #define S_IXOTH 00001 /* others: --------x */ +/* Synonyms for above. */ +#define S_IEXEC S_IXUSR +#define S_IWRITE S_IWUSR +#define S_IREAD S_IRUSR + /* The following macros test st_mode (from POSIX Sec. 5.6.1.1). */ #define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) /* is a reg file */ #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) /* is a directory */ #define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR) /* is a char spec */ #define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK) /* is a block spec */ +#define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK) /* is a symlink */ #define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO) /* is a pipe/FIFO */ -#define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK) /* is a sym link */ /* Function Prototypes. */ _PROTOTYPE( int chmod, (const char *_path, _mnx_Mode_t _mode) ); diff -ur oldsrc/include/sys/types.h src/include/sys/types.h --- oldsrc/include/sys/types.h 2005-09-16 18:23:14.000000000 +0400 +++ src/include/sys/types.h 2006-01-27 16:57:18.000000000 +0300 @@ -126,4 +126,21 @@ typedef unsigned long u_long; typedef char *caddr_t; +/* Devices. */ +#define MAJOR 8 /* major device = (dev>>MAJOR) & 0377 */ +#define MINOR 0 /* minor device = (dev>>MINOR) & 0377 */ + +#ifndef minor +#define minor(dev) (((dev) >> MINOR) & 0xff) +#endif + +#ifndef major +#define major(dev) (((dev) >> MAJOR) & 0xff) +#endif + +#ifndef makedev +#define makedev(major, minor) \ + ((dev_t) (((major) << MAJOR) | ((minor) << MINOR))) +#endif + #endif /* _TYPES_H */ Only in src/include/sys: vm.h Only in src/include: syslog.h diff -ur oldsrc/include/unistd.h src/include/unistd.h --- oldsrc/include/unistd.h 2005-10-21 00:34:34.000000000 +0400 +++ src/include/unistd.h 2006-02-13 18:00:48.000000000 +0300 @@ -42,6 +42,7 @@ #define SI_DMAP_TAB 3 /* get device <-> driver mappings */ #define SI_MEM_ALLOC 4 /* get memory allocation data */ #define SI_DATA_STORE 5 /* get copy of data store */ +#define SI_LOADINFO 6 /* get copy of load average structure */ /* NULL must be defined in according to POSIX Sec. 2.7.1. */ #define NULL ((void *)0) @@ -123,9 +124,11 @@ _PROTOTYPE( ssize_t read, (int _fd, void *_buf, size_t _n) ); _PROTOTYPE( int rmdir, (const char *_path) ); _PROTOTYPE( int setgid, (_mnx_Gid_t _gid) ); +_PROTOTYPE( int setegid, (_mnx_Gid_t _gid) ); _PROTOTYPE( int setpgid, (pid_t _pid, pid_t _pgid) ); _PROTOTYPE( pid_t setsid, (void) ); _PROTOTYPE( int setuid, (_mnx_Uid_t _uid) ); +_PROTOTYPE( int seteuid, (_mnx_Uid_t _uid) ); _PROTOTYPE( unsigned int sleep, (unsigned int _seconds) ); _PROTOTYPE( long sysconf, (int _name) ); _PROTOTYPE( pid_t tcgetpgrp, (int _fd) ); @@ -133,9 +136,12 @@ _PROTOTYPE( char *ttyname, (int _fd) ); _PROTOTYPE( int unlink, (const char *_path) ); _PROTOTYPE( ssize_t write, (int _fd, const void *_buf, size_t _n) ); +_PROTOTYPE( int truncate, (const char *_path, off_t _length) ); +_PROTOTYPE( int ftruncate, (int _fd, off_t _length) ); /* Open Group Base Specifications Issue 6 (not complete) */ _PROTOTYPE( int symlink, (const char *path1, const char *path2) ); +_PROTOTYPE( int readlink, (const char *, char *, size_t) ); _PROTOTYPE( int getopt, (int _argc, char **_argv, char *_opts) ); extern char *optarg; extern int optind, opterr, optopt; @@ -179,11 +185,8 @@ /* For compatibility with other Unix systems */ _PROTOTYPE( int getpagesize, (void) ); _PROTOTYPE( int setgroups, (int ngroups, const gid_t *gidset) ); +_PROTOTYPE( int initgroups, (const char *name, gid_t basegid) ); #endif -_PROTOTYPE( int readlink, (const char *, char *, int)); -_PROTOTYPE( int getopt, (int, char **, char *)); -extern int optind, opterr, optopt; - #endif /* _UNISTD_H */ diff -ur oldsrc/kernel/clock.c src/kernel/clock.c --- oldsrc/kernel/clock.c 2005-10-09 23:58:25.000000000 +0400 +++ src/kernel/clock.c 2005-11-14 18:50:46.000000000 +0300 @@ -38,6 +38,7 @@ FORWARD _PROTOTYPE( void init_clock, (void) ); FORWARD _PROTOTYPE( int clock_handler, (irq_hook_t *hook) ); FORWARD _PROTOTYPE( int do_clocktick, (message *m_ptr) ); +FORWARD _PROTOTYPE( void load_update, (void)); /* Clock parameters. */ #define COUNTER_FREQ (2*TIMER_FREQ) /* counter frequency using square wave */ @@ -205,6 +206,9 @@ bill_ptr->p_ticks_left -= ticks; } + /* Update load average. */ + load_update(); + /* Check if do_clocktick() must be called. Done for alarms and scheduling. * Some processes, such as the kernel tasks, cannot be preempted. */ @@ -272,3 +276,30 @@ return count; } + +/*===========================================================================* + * load_update * + *===========================================================================*/ +PRIVATE void load_update(void) +{ + u16_t slot; + + /* Load average data is stored as a list of numbers in a circular + * buffer. Each slot accumulates _LOAD_UNIT_SECS of samples of + * the number of runnable processes. Computations can then + * be made of the load average over variable periods, in the + * user library (see getloadavg(3)). + */ + slot = (realtime / HZ / _LOAD_UNIT_SECS) % _LOAD_HISTORY; + if(slot != kloadinfo.proc_last_slot) { + kloadinfo.proc_load_history[slot] = 0; + kloadinfo.proc_last_slot = slot; + } + + /* Cumulation. */ + kloadinfo.proc_load_history[slot] += kloadinfo.procs_enqueued; + + /* Up-to-dateness. */ + kloadinfo.last_clock = realtime; +} + diff -ur oldsrc/kernel/config.h src/kernel/config.h --- oldsrc/kernel/config.h 2005-09-11 20:44:06.000000000 +0400 +++ src/kernel/config.h 2006-02-10 19:53:50.000000000 +0300 @@ -76,7 +76,6 @@ * For normal operation all options should be disabled. */ #define DEBUG_SCHED_CHECK 0 /* sanity check of scheduling queues */ -#define DEBUG_LOCK_CHECK 0 /* kernel lock() sanity check */ #define DEBUG_TIME_LOCKS 0 /* measure time spent in locks */ #endif /* CONFIG_H */ diff -ur oldsrc/kernel/const.h src/kernel/const.h --- oldsrc/kernel/const.h 2005-08-22 19:23:46.000000000 +0400 +++ src/kernel/const.h 2006-02-10 19:53:50.000000000 +0300 @@ -58,11 +58,19 @@ #define IF_MASK 0x00000200 #define IOPL_MASK 0x003000 +#if DEBUG_LOCK_CHECK +#define reallock(c, v) { if (!(read_cpu_flags() & X86_FLAG_I)) { kinfo.relocking++; } else { intr_disable(); } } +#else +#define reallock(c, v) intr_disable() +#endif + +#define realunlock(c) intr_enable() + /* Disable/ enable hardware interrupts. The parameters of lock() and unlock() * are used when debugging is enabled. See debug.h for more information. */ -#define lock(c, v) intr_disable(); -#define unlock(c) intr_enable(); +#define lock(c, v) reallock(c, v) +#define unlock(c) realunlock(c) /* Sizes of memory tables. The boot monitor distinguishes three memory areas, * namely low mem below 1M, 1M-16M, and mem after 16M. More chunks are needed diff -ur oldsrc/kernel/debug.h src/kernel/debug.h --- oldsrc/kernel/debug.h 2005-10-18 20:13:12.000000000 +0400 +++ src/kernel/debug.h 2006-02-10 19:53:50.000000000 +0300 @@ -9,15 +9,6 @@ #include "config.h" -/* It's interesting to measure the time spent withing locked regions, because - * this is the time that the system is deaf to interrupts. - */ -#if DEBUG_TIME_LOCKS - -#define TIMING_POINTS 20 /* timing resolution */ -#define TIMING_CATEGORIES 20 -#define TIMING_NAME 10 - /* Enable prints such as * . send/receive failed due to deadlock or dead source or dead destination * . trap not allowed @@ -29,6 +20,15 @@ */ #define DEBUG_ENABLE_IPC_WARNINGS 0 +/* It's interesting to measure the time spent withing locked regions, because + * this is the time that the system is deaf to interrupts. + */ +#if DEBUG_TIME_LOCKS + +#define TIMING_POINTS 20 /* timing resolution */ +#define TIMING_CATEGORIES 20 +#define TIMING_NAME 10 + /* Definition of the data structure to store lock() timing data. */ struct lock_timingdata { char names[TIMING_NAME]; @@ -51,15 +51,6 @@ #define locktimeend(c) #endif /* DEBUG_TIME_LOCKS */ -/* The locking checks counts relocking situation, which are dangerous because - * the inner lock may unlock the outer one. - */ -#if DEBUG_LOCK_CHECK -#define lockcheck if (!(read_cpu_flags() & X86_FLAG_I)) kinfo.relocking++; -#else -#define lockcheck -#endif /* DEBUG_LOCK_CHECK */ - /* This check makes sure that the scheduling queues are in a consistent state. * The check is run when the queues are updated with ready() and unready(). */ @@ -73,14 +64,9 @@ */ #if (DEBUG_TIME_LOCKS || DEBUG_LOCK_CHECK) # undef lock -# define lock(c, v) do { lockcheck; \ - intr_disable(); \ - locktimestart(c, v); \ - } while(0) +# define lock(c, v) do { reallock(c, v); locktimestart(c, v); } while(0) # undef unlock -# define unlock(c) do { locktimeend(c); \ - intr_enable();\ - } while(0) +# define unlock(c) do { locktimeend(c); realunlock(c); } while(0) #endif #endif /* DEBUG_H */ diff -ur oldsrc/kernel/glo.h src/kernel/glo.h --- oldsrc/kernel/glo.h 2005-10-22 00:04:01.000000000 +0400 +++ src/kernel/glo.h 2005-11-14 18:50:46.000000000 +0300 @@ -24,6 +24,7 @@ EXTERN struct machine machine; /* machine information for users */ EXTERN struct kmessages kmess; /* diagnostic messages in kernel */ EXTERN struct randomness krandom; /* gather kernel random information */ +EXTERN struct loadinfo kloadinfo; /* status of load average */ /* Process scheduling information and the kernel reentry count. */ EXTERN struct proc *prev_ptr; /* previously running process */ @@ -46,6 +47,11 @@ EXTERN int mon_return; /* true if we can return to monitor */ EXTERN int do_serial_debug; +/* VM */ +EXTERN phys_bytes vm_base; +EXTERN phys_bytes vm_size; +EXTERN phys_bytes vm_mem_high; + /* Variables that are initialized elsewhere are just extern here. */ extern struct boot_image image[]; /* system image processes */ extern char *t_stack[]; /* task stack space */ diff -ur oldsrc/kernel/main.c src/kernel/main.c --- oldsrc/kernel/main.c 2005-10-22 05:12:38.000000000 +0400 +++ src/kernel/main.c 2005-11-14 18:50:46.000000000 +0300 @@ -142,6 +142,9 @@ alloc_segments(rp); } + /* Special compensation for IDLE - don't let it count in the load average. */ + kloadinfo.procs_enqueued--; + #if ENABLE_BOOTDEV /* Expect an image of the boot device to be loaded into memory as well. * The boot device is the last module that is loaded into memory, and, @@ -209,7 +212,7 @@ */ kprintf("MINIX will now be shut down ...\n"); tmr_arg(&shutdown_timer)->ta_int = how; - shutdown(&shutdown_timer); + set_timer(&shutdown_timer, get_uptime() + HZ, shutdown); } /*===========================================================================* * shutdown * diff -ur oldsrc/kernel/priv.h src/kernel/priv.h --- oldsrc/kernel/priv.h 2005-08-19 20:43:27.000000000 +0400 +++ src/kernel/priv.h 2006-01-27 16:21:12.000000000 +0300 @@ -15,6 +15,15 @@ #include "protect.h" #include "const.h" #include "type.h" + +/* Max. number of I/O ranges that can be assigned to a process */ +#define NR_IO_RANGE 10 + +/* Max. number of device memory ranges that can be assigned to a process */ +#define NR_MEM_RANGE 10 + +/* Max. number of IRQs that can be assigned to a process */ +#define NR_IRQ 4 struct priv { proc_nr_t s_proc_nr; /* number of associated process */ @@ -33,6 +42,15 @@ timer_t s_alarm_timer; /* synchronous alarm timer */ struct far_mem s_farmem[NR_REMOTE_SEGS]; /* remote memory map */ reg_t *s_stack_guard; /* stack guard word for kernel tasks */ + + int s_nr_io_range; + struct io_range s_io_tab[NR_IO_RANGE]; + + int s_nr_mem_range; + struct mem_range s_mem_tab[NR_MEM_RANGE]; + + int s_nr_irq; + int s_irq_tab[NR_IRQ]; }; /* Guard word for task stacks. */ @@ -43,6 +61,11 @@ #define BILLABLE 0x04 /* some processes are not billable */ #define SYS_PROC 0x10 /* system processes are privileged */ #define SENDREC_BUSY 0x20 /* sendrec() in progress */ +#define CHECK_IO_PORT 0x40 /* Check whether an I/O request is allowed */ +#define CHECK_MEM 0x80 /* Check whether a (vm) memory map request is + * allowed + */ +#define CHECK_IRQ 0x100 /* Check whether an IRQ can be used */ /* Magic system structure table addresses. */ #define BEG_PRIV_ADDR (&priv[0]) diff -ur oldsrc/kernel/proc.c src/kernel/proc.c --- oldsrc/kernel/proc.c 2005-10-21 00:59:02.000000000 +0400 +++ src/kernel/proc.c 2006-02-10 19:53:50.000000000 +0300 @@ -500,6 +500,8 @@ /* Now select the next process to run. */ pick_proc(); + kloadinfo.procs_enqueued++; + #if DEBUG_SCHED_CHECK rp->p_ready = 1; check_runqueues("enqueue"); @@ -548,10 +550,14 @@ } prev_xp = *xpp; /* save previous in chain */ } + + kloadinfo.procs_enqueued--; #if DEBUG_SCHED_CHECK rp->p_ready = 0; check_runqueues("dequeue"); + if(kloadinfo.procs_enqueued < 0) + kprintf("%d processes enqueued\n", kloadinfo.procs_enqueued); #endif } @@ -663,8 +669,15 @@ struct proc *rp; /* this process is no longer runnable */ { /* Safe gateway to dequeue() for tasks. */ - lock(4, "dequeue"); - dequeue(rp); - unlock(4); + if (k_reenter >= 0) { + /* We're in an exception or interrupt, so don't lock (and.. + * don't unlock). + */ + dequeue(rp); + } else { + lock(4, "dequeue"); + dequeue(rp); + unlock(4); + } } diff -ur oldsrc/kernel/proto.h src/kernel/proto.h --- oldsrc/kernel/proto.h 2005-10-22 00:04:01.000000000 +0400 +++ src/kernel/proto.h 2005-09-30 16:54:59.000000000 +0400 @@ -145,6 +145,9 @@ _PROTOTYPE( void enable_iop, (struct proc *pp) ); _PROTOTYPE( void alloc_segments, (struct proc *rp) ); +/* system/do_vm.c */ +_PROTOTYPE( void vm_map_default, (struct proc *pp) ); + #endif /* (CHIP == INTEL) */ #if (CHIP == M68000) diff -ur oldsrc/kernel/start.c src/kernel/start.c --- oldsrc/kernel/start.c 2005-09-11 20:44:06.000000000 +0400 +++ src/kernel/start.c 2005-11-14 18:50:46.000000000 +0300 @@ -29,6 +29,7 @@ char params[128*sizeof(char *)]; /* boot monitor parameters */ register char *value; /* value in key=value pair */ extern int etext, end; + int h; /* Decide if mode is protected; 386 or higher implies protected mode. * This must be done first, because it is needed for, e.g., seg2phys(). @@ -64,6 +65,12 @@ kinfo.kmem_base = vir2phys(0); kinfo.kmem_size = (phys_bytes) &end; + /* Load average data initialization. */ + kloadinfo.procs_enqueued = 0; + kloadinfo.proc_last_slot = 0; + for(h = 0; h < _LOAD_HISTORY; h++) + kloadinfo.proc_load_history[h] = 0; + /* Processor? 86, 186, 286, 386, ... * Decide if mode is protected for older machines. */ diff -ur oldsrc/kernel/system/.depend src/kernel/system/.depend --- oldsrc/kernel/system/.depend 2005-10-23 05:16:43.000000000 +0400 +++ src/kernel/system/.depend 2006-02-20 19:10:35.000000000 +0300 @@ -889,3 +889,66 @@ do_vdevio.o: /usr/include/sys/types.h do_vdevio.o: /usr/include/timers.h do_vdevio.o: do_vdevio.c + +do_vm.o: ../config.h +do_vm.o: ../const.h +do_vm.o: ../debug.h +do_vm.o: ../glo.h +do_vm.o: ../ipc.h +do_vm.o: ../kernel.h +do_vm.o: ../priv.h +do_vm.o: ../proc.h +do_vm.o: ../protect.h +do_vm.o: ../proto.h +do_vm.o: ../system.h +do_vm.o: ../type.h +do_vm.o: /usr/include/ansi.h +do_vm.o: /usr/include/errno.h +do_vm.o: /usr/include/ibm/bios.h +do_vm.o: /usr/include/ibm/cpu.h +do_vm.o: /usr/include/ibm/interrupt.h +do_vm.o: /usr/include/ibm/portio.h +do_vm.o: /usr/include/ibm/ports.h +do_vm.o: /usr/include/limits.h +do_vm.o: /usr/include/minix/com.h +do_vm.o: /usr/include/minix/config.h +do_vm.o: /usr/include/minix/const.h +do_vm.o: /usr/include/minix/ipc.h +do_vm.o: /usr/include/minix/sys_config.h +do_vm.o: /usr/include/minix/type.h +do_vm.o: /usr/include/sys/dir.h +do_vm.o: /usr/include/sys/types.h +do_vm.o: /usr/include/sys/vm.h +do_vm.o: /usr/include/timers.h +do_vm.o: do_vm.c + +do_vm_setbuf.o: ../config.h +do_vm_setbuf.o: ../const.h +do_vm_setbuf.o: ../debug.h +do_vm_setbuf.o: ../glo.h +do_vm_setbuf.o: ../ipc.h +do_vm_setbuf.o: ../kernel.h +do_vm_setbuf.o: ../priv.h +do_vm_setbuf.o: ../proc.h +do_vm_setbuf.o: ../protect.h +do_vm_setbuf.o: ../proto.h +do_vm_setbuf.o: ../system.h +do_vm_setbuf.o: ../type.h +do_vm_setbuf.o: /usr/include/ansi.h +do_vm_setbuf.o: /usr/include/errno.h +do_vm_setbuf.o: /usr/include/ibm/bios.h +do_vm_setbuf.o: /usr/include/ibm/cpu.h +do_vm_setbuf.o: /usr/include/ibm/interrupt.h +do_vm_setbuf.o: /usr/include/ibm/portio.h +do_vm_setbuf.o: /usr/include/ibm/ports.h +do_vm_setbuf.o: /usr/include/limits.h +do_vm_setbuf.o: /usr/include/minix/com.h +do_vm_setbuf.o: /usr/include/minix/config.h +do_vm_setbuf.o: /usr/include/minix/const.h +do_vm_setbuf.o: /usr/include/minix/ipc.h +do_vm_setbuf.o: /usr/include/minix/sys_config.h +do_vm_setbuf.o: /usr/include/minix/type.h +do_vm_setbuf.o: /usr/include/sys/dir.h +do_vm_setbuf.o: /usr/include/sys/types.h +do_vm_setbuf.o: /usr/include/timers.h +do_vm_setbuf.o: do_vm_setbuf.c diff -ur oldsrc/kernel/system/Makefile src/kernel/system/Makefile --- oldsrc/kernel/system/Makefile 2005-10-22 00:04:01.000000000 +0400 +++ src/kernel/system/Makefile 2005-09-30 16:54:59.000000000 +0400 @@ -44,7 +44,9 @@ $(SYSTEM)(do_sigreturn.o) \ $(SYSTEM)(do_abort.o) \ $(SYSTEM)(do_getinfo.o) \ - $(SYSTEM)(do_iopenable.o) + $(SYSTEM)(do_iopenable.o) \ + $(SYSTEM)(do_vm.o) \ + $(SYSTEM)(do_vm_setbuf.o) \ $(SYSTEM): $(OBJECTS) aal cr $@ *.o @@ -142,3 +144,10 @@ $(SYSTEM)(do_iopenable.o): do_iopenable.c $(CC) do_iopenable.c + +$(SYSTEM)(do_vm.o): do_vm.o +do_vm.o: do_vm.c + $(CC) do_vm.c + +$(SYSTEM)(do_vm_setbuf.o): do_vm_setbuf.c + $(CC) do_vm_setbuf.c diff -ur oldsrc/kernel/system/do_devio.c src/kernel/system/do_devio.c --- oldsrc/kernel/system/do_devio.c 2005-10-14 12:58:59.000000000 +0400 +++ src/kernel/system/do_devio.c 2006-01-27 16:21:12.000000000 +0300 @@ -19,6 +19,46 @@ PUBLIC int do_devio(m_ptr) register message *m_ptr; /* pointer to request message */ { + struct proc *rp; + struct priv *privp; + port_t port; + struct io_range *iorp; + int i, size, nr_io_range; + + rp= proc_addr(m_ptr->m_source); + privp= priv(rp); + if (!privp) + { + kprintf("no priv structure!\n"); + goto doit; + } + if (privp->s_flags & CHECK_IO_PORT) + { + switch (m_ptr->DIO_TYPE) + { + case DIO_BYTE: size= 1; break; + case DIO_WORD: size= 2; break; + case DIO_LONG: size= 4; break; + default: size= 4; break; /* Be conservative */ + } + port= m_ptr->DIO_PORT; + nr_io_range= privp->s_nr_io_range; + for (i= 0, iorp= privp->s_io_tab; i= iorp->ior_base && port+size-1 <= iorp->ior_limit) + break; + } + if (i >= nr_io_range) + { + kprintf( + "do_devio: I/O port check failed for proc %d, port 0x%x\n", + m_ptr->m_source, port); + return EPERM; + } + } + +doit: + /* Process a single I/O request for byte, word, and long values. */ if (m_ptr->DIO_REQUEST == DIO_INPUT) { switch (m_ptr->DIO_TYPE) { diff -ur oldsrc/kernel/system/do_exit.c src/kernel/system/do_exit.c --- oldsrc/kernel/system/do_exit.c 2005-10-22 00:04:01.000000000 +0400 +++ src/kernel/system/do_exit.c 2005-10-21 22:13:10.000000000 +0400 @@ -126,6 +126,10 @@ irq_hooks[i].proc_nr = NONE; /* mark hook as free */ } } + + /* Clean up virtual memory */ + if (rc->p_misc_flags & MF_VM) + vm_map_default(rc); } #endif /* USE_EXIT */ diff -ur oldsrc/kernel/system/do_getinfo.c src/kernel/system/do_getinfo.c --- oldsrc/kernel/system/do_getinfo.c 2005-10-14 12:58:59.000000000 +0400 +++ src/kernel/system/do_getinfo.c 2006-01-12 17:38:51.000000000 +0300 @@ -42,6 +42,11 @@ src_phys = vir2phys(&kinfo); break; } + case GET_LOADINFO: { + length = sizeof(struct loadinfo); + src_phys = vir2phys(&kloadinfo); + break; + } case GET_IMAGE: { length = sizeof(struct boot_image) * NR_BOOT_PROCS; src_phys = vir2phys(image); @@ -128,6 +133,12 @@ src_phys = vir2phys(&bios_buf_vir); break; + case GET_IRQACTIDS: { + length = sizeof(irq_actids); + src_phys = vir2phys(irq_actids); + break; + } + default: return(EINVAL); } diff -ur oldsrc/kernel/system/do_irqctl.c src/kernel/system/do_irqctl.c --- oldsrc/kernel/system/do_irqctl.c 2005-10-14 12:58:59.000000000 +0400 +++ src/kernel/system/do_irqctl.c 2006-01-27 16:21:12.000000000 +0300 @@ -26,7 +26,10 @@ int irq_hook_id; int notify_id; int r = OK; + int i; irq_hook_t *hook_ptr; + struct proc *rp; + struct priv *privp; /* Hook identifiers start at 1 and end at NR_IRQ_HOOKS. */ irq_hook_id = (unsigned) m_ptr->IRQ_HOOK_ID - 1; @@ -55,6 +58,29 @@ /* Check if IRQ line is acceptable. */ if (irq_vec < 0 || irq_vec >= NR_IRQ_VECTORS) return(EINVAL); + rp= proc_addr(m_ptr->m_source); + privp= priv(rp); + if (!privp) + { + kprintf("no priv structure!\n"); + return EPERM; + } + if (privp->s_flags & CHECK_IRQ) + { + for (i= 0; is_nr_irq; i++) + { + if (irq_vec == privp->s_irq_tab[i]) + break; + } + if (i >= privp->s_nr_irq) + { + kprintf( + "do_irqctl: IRQ check failed for proc %d, IRQ %d\n", + m_ptr->m_source, irq_vec); + return EPERM; + } + } + /* Find a free IRQ hook for this mapping. */ hook_ptr = NULL; for (irq_hook_id=0; irq_hook_idPR_PROC_NR; if (! isokprocn(proc_nr)) return(EINVAL); rp = proc_addr(proc_nr); - if (! (rp->p_rts_flags & NO_PRIV)) return(EPERM); - /* Make sure this process has its own privileges structure. This may fail, - * since there are only a limited number of system processes. Then copy the - * privileges from the caller and restore some defaults. - */ - if ((i=get_priv(rp, SYS_PROC)) != OK) return(i); - priv_id = priv(rp)->s_id; /* backup privilege id */ - *priv(rp) = *priv(caller_ptr); /* copy from caller */ - priv(rp)->s_id = priv_id; /* restore privilege id */ - priv(rp)->s_proc_nr = proc_nr; /* reassociate process nr */ - - for (i=0; i< BITMAP_CHUNKS(NR_SYS_PROCS); i++) /* remove pending: */ - priv(rp)->s_notify_pending.chunk[i] = 0; /* - notifications */ - priv(rp)->s_int_pending = 0; /* - interrupts */ - sigemptyset(&priv(rp)->s_sig_pending); /* - signals */ - - /* Now update the process' privileges as requested. */ - rp->p_priv->s_trap_mask = FILLED_MASK; - for (i=0; ip_priv->s_ipc_to.chunk[i] = FILLED_MASK; + switch(m_ptr->CTL_REQUEST) + { + case SYS_PRIV_INIT: + if (! (rp->p_rts_flags & NO_PRIV)) return(EPERM); + + /* Make sure this process has its own privileges structure. This may + * fail, since there are only a limited number of system processes. + * Then copy the privileges from the caller and restore some defaults. + */ + if ((i=get_priv(rp, SYS_PROC)) != OK) return(i); + priv_id = priv(rp)->s_id; /* backup privilege id */ + *priv(rp) = *priv(caller_ptr); /* copy from caller */ + priv(rp)->s_id = priv_id; /* restore privilege id */ + priv(rp)->s_proc_nr = proc_nr; /* reassociate process nr */ + + for (i=0; i< BITMAP_CHUNKS(NR_SYS_PROCS); i++) /* remove pending: */ + priv(rp)->s_notify_pending.chunk[i] = 0; /* - notifications */ + priv(rp)->s_int_pending = 0; /* - interrupts */ + sigemptyset(&priv(rp)->s_sig_pending); /* - signals */ + + /* Now update the process' privileges as requested. */ + rp->p_priv->s_trap_mask = FILLED_MASK; + for (i=0; ip_priv->s_ipc_to.chunk[i] = FILLED_MASK; + } + unset_sys_bit(rp->p_priv->s_ipc_to, USER_PRIV_ID); + + /* All process that this process can send to must be able to reply. + * Therefore, their send masks should be updated as well. + */ + for (i=0; ip_priv->s_ipc_to, i)) { + set_sys_bit(priv_addr(i)->s_ipc_to, priv_id(rp)); + } + } + + /* No I/O resources, no memory resources, no IRQs */ + priv(rp)->s_nr_io_range= 0; + priv(rp)->s_nr_mem_range= 0; + priv(rp)->s_nr_irq= 0; + + /* Done. Privileges have been set. Allow process to run again. */ + old_flags = rp->p_rts_flags; /* save value of the flags */ + rp->p_rts_flags &= ~NO_PRIV; + if (old_flags != 0 && rp->p_rts_flags == 0) lock_enqueue(rp); + return(OK); + case SYS_PRIV_ADD_IO: + if (rp->p_rts_flags & NO_PRIV) + return(EPERM); + + /* Only system processes get I/O resources? */ + if (!(priv(rp)->s_flags & SYS_PROC)) + return EPERM; + + /* Get the I/O range */ + caller_phys = umap_local(caller_ptr, D, (vir_bytes) m_ptr->CTL_ARG_PTR, + sizeof(io_range)); + if (caller_phys == 0) + return EFAULT; + kernel_phys = vir2phys(&io_range); + phys_copy(caller_phys, kernel_phys, sizeof(io_range)); + priv(rp)->s_flags |= CHECK_IO_PORT; /* Check I/O accesses */ + i= priv(rp)->s_nr_io_range; + if (i >= NR_IO_RANGE) + return ENOMEM; + + priv(rp)->s_io_tab[i].ior_base= io_range.ior_base; + priv(rp)->s_io_tab[i].ior_limit= io_range.ior_limit; + priv(rp)->s_nr_io_range++; + + kprintf("do_privctl: added I/O range [0x%x..0x%x]\n", + io_range.ior_base, io_range.ior_limit); + + return OK; + + case SYS_PRIV_ADD_MEM: + if (rp->p_rts_flags & NO_PRIV) + return(EPERM); + + /* Only system processes get memory resources? */ + if (!(priv(rp)->s_flags & SYS_PROC)) + return EPERM; + + /* Get the memory range */ + caller_phys = umap_local(caller_ptr, D, (vir_bytes) m_ptr->CTL_ARG_PTR, + sizeof(mem_range)); + if (caller_phys == 0) + return EFAULT; + kernel_phys = vir2phys(&mem_range); + phys_copy(caller_phys, kernel_phys, sizeof(mem_range)); + priv(rp)->s_flags |= CHECK_MEM; /* Check I/O accesses */ + i= priv(rp)->s_nr_mem_range; + if (i >= NR_MEM_RANGE) + return ENOMEM; + +#if 0 + priv(rp)->s_mem_tab[i].mr_base= mem_range.mr_base; + priv(rp)->s_mem_tab[i].mr_limit= mem_range.mr_limit; + priv(rp)->s_nr_mem_range++; +#endif + + kprintf("do_privctl: should add memory range [0x%x..0x%x]\n", + mem_range.mr_base, mem_range.mr_limit); + + return OK; + + case SYS_PRIV_ADD_IRQ: + if (rp->p_rts_flags & NO_PRIV) + return(EPERM); + + /* Only system processes get IRQs? */ + if (!(priv(rp)->s_flags & SYS_PROC)) + return EPERM; + + priv(rp)->s_flags |= CHECK_IRQ; /* Check IRQs */ + + i= priv(rp)->s_nr_irq; + if (i >= NR_IRQ) + return ENOMEM; + priv(rp)->s_irq_tab[i]= m_ptr->CTL_MM_PRIV; + priv(rp)->s_nr_irq++; + + kprintf("do_privctl: adding IRQ %d\n", m_ptr->CTL_MM_PRIV); + + return OK; + + default: + kprintf("do_privctl: bad request %d\n", m_ptr->CTL_REQUEST); + return EINVAL; } - unset_sys_bit(rp->p_priv->s_ipc_to, USER_PRIV_ID); - - /* All process that this process can send to must be able to reply. - * Therefore, their send masks should be updated as well. - */ - for (i=0; ip_priv->s_ipc_to, i)) { - set_sys_bit(priv_addr(i)->s_ipc_to, priv_id(rp)); - } - } - - /* Done. Privileges have been set. Allow process to run again. */ - old_flags = rp->p_rts_flags; /* save value of the flags */ - rp->p_rts_flags &= ~NO_PRIV; - if (old_flags != 0 && rp->p_rts_flags == 0) lock_enqueue(rp); - return(OK); } #endif /* USE_PRIVCTL */ Only in src/kernel/system: do_vm.c Only in src/kernel/system: do_vm_setbuf.c diff -ur oldsrc/kernel/system.c src/kernel/system.c --- oldsrc/kernel/system.c 2005-10-22 00:22:27.000000000 +0400 +++ src/kernel/system.c 2005-11-04 20:06:49.000000000 +0300 @@ -156,6 +156,8 @@ map(SYS_NEWMAP, do_newmap); /* set up a process memory map */ map(SYS_SEGCTL, do_segctl); /* add segment and get selector */ map(SYS_MEMSET, do_memset); /* write char to memory area */ + map(SYS_VM_SETBUF, do_vm_setbuf); /* PM passes buffer for page tables */ + map(SYS_VM_MAP, do_vm_map); /* Map/unmap physical (device) memory */ /* Copying. */ map(SYS_UMAP, do_umap); /* map virtual to physical address */ diff -ur oldsrc/kernel/system.h src/kernel/system.h --- oldsrc/kernel/system.h 2005-10-22 00:04:01.000000000 +0400 +++ src/kernel/system.h 2005-10-14 13:13:52.000000000 +0400 @@ -92,6 +92,9 @@ #define do_memset do_unused #endif +_PROTOTYPE( int do_vm_setbuf, (message *m_ptr) ); +_PROTOTYPE( int do_vm_map, (message *m_ptr) ); + _PROTOTYPE( int do_abort, (message *m_ptr) ); #if ! USE_ABORT #define do_abort do_unused diff -ur oldsrc/kernel/table.c src/kernel/table.c --- oldsrc/kernel/table.c 2005-10-22 00:04:01.000000000 +0400 +++ src/kernel/table.c 2006-02-15 17:21:56.000000000 +0300 @@ -82,8 +82,10 @@ #define PM_C ~(c(SYS_DEVIO) | c(SYS_SDEVIO) | c(SYS_VDEVIO) | c(SYS_IRQCTL) | c(SYS_INT86)) #define FS_C (c(SYS_KILL) | c(SYS_VIRCOPY) | c(SYS_VIRVCOPY) | c(SYS_UMAP) | c(SYS_GETINFO) | c(SYS_EXIT) | c(SYS_TIMES) | c(SYS_SETALARM)) #define DRV_C (FS_C | c(SYS_SEGCTL) | c(SYS_IRQCTL) | c(SYS_INT86) | c(SYS_DEVIO) | c(SYS_VDEVIO) | c(SYS_SDEVIO)) -#define TTY_C (DRV_C | c(SYS_ABORT)) -#define MEM_C (DRV_C | c(SYS_PHYSCOPY) | c(SYS_PHYSVCOPY)) +#define PCI_C (c(SYS_VIRCOPY) | c(SYS_DEVIO) | c(SYS_VDEVIO) | c(SYS_SDEVIO) | c(SYS_PRIVCTL) | c(SYS_GETINFO)) +#define TTY_C (DRV_C | c(SYS_ABORT) | c(SYS_VM_MAP) | c(SYS_IOPENABLE)) +#define MEM_C (DRV_C | c(SYS_PHYSCOPY) | c(SYS_PHYSVCOPY) | c(SYS_VM_MAP) | \ + c(SYS_IOPENABLE)) /* The system image table lists all programs that are part of the boot image. * The order of the entries here MUST agree with the order of the programs @@ -105,7 +107,10 @@ { TTY_PROC_NR, 0, SRV_F, 4, 1, 0, SRV_T, SYS_M, TTY_C, "tty" }, { MEM_PROC_NR, 0, SRV_F, 4, 2, 0, SRV_T, SYS_M, MEM_C, "memory"}, { LOG_PROC_NR, 0, SRV_F, 4, 2, 0, SRV_T, SYS_M, DRV_C, "log" }, +#if 0 { DRVR_PROC_NR, 0, SRV_F, 4, 2, 0, SRV_T, SYS_M, DRV_C, "driver"}, + { PCI_PROC_NR, 0, SRV_F, 4, 2, 0, SRV_T, SYS_M, PCI_C, "pci"}, +#endif { INIT_PROC_NR, 0, USR_F, 8, USER_Q, 0, USR_T, USR_M, 0, "init" }, }; Only in src/lib: .depend-ack Only in src/lib: .depend-gnu Only in src/lib: Makedepend-ack Only in src/lib: Makedepend-gnu diff -ur oldsrc/lib/Makefile src/lib/Makefile --- oldsrc/lib/Makefile 2005-10-23 01:40:59.000000000 +0400 +++ src/lib/Makefile 2006-01-17 13:36:41.000000000 +0300 @@ -1,31 +1,203 @@ +#Generated from ./Makefile.in +all: all-ack -ACKBASE=$(CURDIR)/obj-ack -GNUBASE=$(CURDIR)/obj-gnu +all-ack: +all-gnu: -OBJDIR=. +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh generate.sh . obj-ack/ obj-gnu -SUBDIRS = ansi \ - curses \ - dummy \ - editline \ - end \ - ip \ - math \ - other \ - posix \ - regex \ - stdio \ - syscall \ - syslib \ - util \ - sysutil \ - timers \ - i386 \ - zlib-1.2.3 \ - ack - +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh generate.sh . obj-ack/ obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include Makefile.ack.inc +all-ack: makefiles + mkdir -p obj-ack//./ansi + cd ansi && $(MAKE) $@ + mkdir -p obj-ack//./curses + cd curses && $(MAKE) $@ + mkdir -p obj-ack//./dummy + cd dummy && $(MAKE) $@ + mkdir -p obj-ack//./editline + cd editline && $(MAKE) $@ + mkdir -p obj-ack//./end + cd end && $(MAKE) $@ + mkdir -p obj-ack//./ip + cd ip && $(MAKE) $@ + mkdir -p obj-ack//./math + cd math && $(MAKE) $@ + mkdir -p obj-ack//./other + cd other && $(MAKE) $@ + mkdir -p obj-ack//./posix + cd posix && $(MAKE) $@ + mkdir -p obj-ack//./regex + cd regex && $(MAKE) $@ + mkdir -p obj-ack//./stdio + cd stdio && $(MAKE) $@ + mkdir -p obj-ack//./syscall + cd syscall && $(MAKE) $@ + mkdir -p obj-ack//./syslib + cd syslib && $(MAKE) $@ + mkdir -p obj-ack//./util + cd util && $(MAKE) $@ + mkdir -p obj-ack//./sysutil + cd sysutil && $(MAKE) $@ + mkdir -p obj-ack//./timers + cd timers && $(MAKE) $@ + mkdir -p obj-ack//./i386 + cd i386 && $(MAKE) $@ + mkdir -p obj-ack//./zlib-1.2.3 + cd zlib-1.2.3 && $(MAKE) $@ + mkdir -p obj-ack//./ack + cd ack && $(MAKE) $@ + mkdir -p obj-ack//./gnu + cd gnu && $(MAKE) $@ -install:: - install -o bin $(ACKBASE)/*.[ao] /usr/lib/i386 +all-gnu: makefiles + mkdir -p obj-gnu/./ansi + cd ansi && $(MAKE) $@ + mkdir -p obj-gnu/./curses + cd curses && $(MAKE) $@ + mkdir -p obj-gnu/./dummy + cd dummy && $(MAKE) $@ + mkdir -p obj-gnu/./editline + cd editline && $(MAKE) $@ + mkdir -p obj-gnu/./end + cd end && $(MAKE) $@ + mkdir -p obj-gnu/./ip + cd ip && $(MAKE) $@ + mkdir -p obj-gnu/./math + cd math && $(MAKE) $@ + mkdir -p obj-gnu/./other + cd other && $(MAKE) $@ + mkdir -p obj-gnu/./posix + cd posix && $(MAKE) $@ + mkdir -p obj-gnu/./regex + cd regex && $(MAKE) $@ + mkdir -p obj-gnu/./stdio + cd stdio && $(MAKE) $@ + mkdir -p obj-gnu/./syscall + cd syscall && $(MAKE) $@ + mkdir -p obj-gnu/./syslib + cd syslib && $(MAKE) $@ + mkdir -p obj-gnu/./util + cd util && $(MAKE) $@ + mkdir -p obj-gnu/./sysutil + cd sysutil && $(MAKE) $@ + mkdir -p obj-gnu/./timers + cd timers && $(MAKE) $@ + mkdir -p obj-gnu/./i386 + cd i386 && $(MAKE) $@ + mkdir -p obj-gnu/./zlib-1.2.3 + cd zlib-1.2.3 && $(MAKE) $@ + mkdir -p obj-gnu/./ack + cd ack && $(MAKE) $@ + mkdir -p obj-gnu/./gnu + cd gnu && $(MAKE) $@ + +clean depend depend-ack depend-gnu:: makefiles + cd ansi && $(MAKE) $@ + cd curses && $(MAKE) $@ + cd dummy && $(MAKE) $@ + cd editline && $(MAKE) $@ + cd end && $(MAKE) $@ + cd ip && $(MAKE) $@ + cd math && $(MAKE) $@ + cd other && $(MAKE) $@ + cd posix && $(MAKE) $@ + cd regex && $(MAKE) $@ + cd stdio && $(MAKE) $@ + cd syscall && $(MAKE) $@ + cd syslib && $(MAKE) $@ + cd util && $(MAKE) $@ + cd sysutil && $(MAKE) $@ + cd timers && $(MAKE) $@ + cd i386 && $(MAKE) $@ + cd zlib-1.2.3 && $(MAKE) $@ + cd ack && $(MAKE) $@ + cd gnu && $(MAKE) $@ + +makefiles: ansi/Makefile +makefiles: curses/Makefile +makefiles: dummy/Makefile +makefiles: editline/Makefile +makefiles: end/Makefile +makefiles: ip/Makefile +makefiles: math/Makefile +makefiles: other/Makefile +makefiles: posix/Makefile +makefiles: regex/Makefile +makefiles: stdio/Makefile +makefiles: syscall/Makefile +makefiles: syslib/Makefile +makefiles: util/Makefile +makefiles: sysutil/Makefile +makefiles: timers/Makefile +makefiles: i386/Makefile +makefiles: zlib-1.2.3/Makefile +makefiles: ack/Makefile +makefiles: gnu/Makefile + +ansi/Makefile: ansi/Makefile.in + cd ansi && sh ../generate.sh ./ansi ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +curses/Makefile: curses/Makefile.in + cd curses && sh ../generate.sh ./curses ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +dummy/Makefile: dummy/Makefile.in + cd dummy && sh ../generate.sh ./dummy ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +editline/Makefile: editline/Makefile.in + cd editline && sh ../generate.sh ./editline ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +end/Makefile: end/Makefile.in + cd end && sh ../generate.sh ./end ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +ip/Makefile: ip/Makefile.in + cd ip && sh ../generate.sh ./ip ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +math/Makefile: math/Makefile.in + cd math && sh ../generate.sh ./math ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +other/Makefile: other/Makefile.in + cd other && sh ../generate.sh ./other ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +posix/Makefile: posix/Makefile.in + cd posix && sh ../generate.sh ./posix ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +regex/Makefile: regex/Makefile.in + cd regex && sh ../generate.sh ./regex ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +stdio/Makefile: stdio/Makefile.in + cd stdio && sh ../generate.sh ./stdio ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +syscall/Makefile: syscall/Makefile.in + cd syscall && sh ../generate.sh ./syscall ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +syslib/Makefile: syslib/Makefile.in + cd syslib && sh ../generate.sh ./syslib ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +util/Makefile: util/Makefile.in + cd util && sh ../generate.sh ./util ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +sysutil/Makefile: sysutil/Makefile.in + cd sysutil && sh ../generate.sh ./sysutil ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +timers/Makefile: timers/Makefile.in + cd timers && sh ../generate.sh ./timers ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +i386/Makefile: i386/Makefile.in + cd i386 && sh ../generate.sh ./i386 ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +zlib-1.2.3/Makefile: zlib-1.2.3/Makefile.in + cd zlib-1.2.3 && sh ../generate.sh ./zlib-1.2.3 ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +ack/Makefile: ack/Makefile.in + cd ack && sh ../generate.sh ./ack ../obj-ack/ ../obj-gnu && $(MAKE) makefiles +gnu/Makefile: gnu/Makefile.in + cd gnu && sh ../generate.sh ./gnu ../obj-ack/ ../obj-gnu && $(MAKE) makefiles + +clean:: + rm -f obj-ack//./* + rm -f obj-gnu/./* + +install: install-ack + +install-ack: all-ack + cp obj-ack//*.[ao] /usr/lib/i386 + +install-gnu: all-gnu + cp obj-gnu/*.[ao] /usr/gnu/lib + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib: Makefile.ack.inc Only in oldsrc/lib: Makefile.gnu.inc Only in src/lib: Makefile.in Only in oldsrc/lib: Makefile.inc diff -ur oldsrc/lib/README src/lib/README --- oldsrc/lib/README 2005-10-21 15:19:31.000000000 +0400 +++ src/lib/README 2006-01-16 18:44:42.000000000 +0300 @@ -1,2 +1,7 @@ -Libraries are compiled for both ack and gcc. If you want to compile them -for ack only (gcc takes up a lot of memory), please see ackonly/README. +make depend - find dependencies of ack libraries +make all - compile ack libraries +make install - compile and install ack libraries + +make depend-gnu - find dependencies of gnu libraries +make all-gnu - compile gnu libraries +make install-gnu - compile and install gnu libraries Only in src/lib/ack: .depend-ack Only in src/lib/ack: .depend-gnu Only in src/lib/ack: Makedepend-ack Only in src/lib/ack: Makedepend-gnu diff -ur oldsrc/lib/ack/Makefile src/lib/ack/Makefile --- oldsrc/lib/ack/Makefile 2005-10-10 19:27:42.000000000 +0400 +++ src/lib/ack/Makefile 2006-02-20 19:11:01.000000000 +0300 @@ -1,12 +1,90 @@ +#Generated from ./ack/Makefile.in +all: all-ack -SUBDIRS = \ - float \ - fphook \ - i386 \ - libm2 \ - libp \ - liby \ - math \ - rts \ +all-ack: +all-gnu: -include ../Makefile.inc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./ack ../obj-ack/ ../obj-gnu + +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./ack ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +all-ack: makefiles + mkdir -p ../obj-ack//./ack/float + cd float && $(MAKE) $@ + mkdir -p ../obj-ack//./ack/fphook + cd fphook && $(MAKE) $@ + mkdir -p ../obj-ack//./ack/i386 + cd i386 && $(MAKE) $@ + mkdir -p ../obj-ack//./ack/libm2 + cd libm2 && $(MAKE) $@ + mkdir -p ../obj-ack//./ack/libp + cd libp && $(MAKE) $@ + mkdir -p ../obj-ack//./ack/liby + cd liby && $(MAKE) $@ + mkdir -p ../obj-ack//./ack/math + cd math && $(MAKE) $@ + mkdir -p ../obj-ack//./ack/rts + cd rts && $(MAKE) $@ + +all-gnu: makefiles + cd float && $(MAKE) $@ + cd fphook && $(MAKE) $@ + cd i386 && $(MAKE) $@ + cd libm2 && $(MAKE) $@ + cd libp && $(MAKE) $@ + cd liby && $(MAKE) $@ + cd math && $(MAKE) $@ + cd rts && $(MAKE) $@ + +clean depend depend-ack depend-gnu:: makefiles + cd float && $(MAKE) $@ + cd fphook && $(MAKE) $@ + cd i386 && $(MAKE) $@ + cd libm2 && $(MAKE) $@ + cd libp && $(MAKE) $@ + cd liby && $(MAKE) $@ + cd math && $(MAKE) $@ + cd rts && $(MAKE) $@ + +makefiles: float/Makefile +makefiles: fphook/Makefile +makefiles: i386/Makefile +makefiles: libm2/Makefile +makefiles: libp/Makefile +makefiles: liby/Makefile +makefiles: math/Makefile +makefiles: rts/Makefile + +float/Makefile: float/Makefile.in + cd float && sh ../../generate.sh ./ack/float ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +fphook/Makefile: fphook/Makefile.in + cd fphook && sh ../../generate.sh ./ack/fphook ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +i386/Makefile: i386/Makefile.in + cd i386 && sh ../../generate.sh ./ack/i386 ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +libm2/Makefile: libm2/Makefile.in + cd libm2 && sh ../../generate.sh ./ack/libm2 ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +libp/Makefile: libp/Makefile.in + cd libp && sh ../../generate.sh ./ack/libp ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +liby/Makefile: liby/Makefile.in + cd liby && sh ../../generate.sh ./ack/liby ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +math/Makefile: math/Makefile.in + cd math && sh ../../generate.sh ./ack/math ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +rts/Makefile: rts/Makefile.in + cd rts && sh ../../generate.sh ./ack/rts ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles + +clean:: + rm -f ../obj-ack//./ack/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack: Makefile.ack Only in src/lib/ack: Makefile.in Only in src/lib/ack/float: .depend-ack Only in src/lib/ack/float: .depend-gnu diff -ur oldsrc/lib/ack/float/FP.compile src/lib/ack/float/FP.compile --- oldsrc/lib/ack/float/FP.compile 2005-10-10 19:27:42.000000000 +0400 +++ src/lib/ack/float/FP.compile 2006-01-16 18:44:43.000000000 +0300 @@ -5,15 +5,18 @@ # only optimizes scratch register allocation a bit with -O. To the 32-bit # compiler -O is a no-op.) -case $#:$1 in -1:*.fc) ;; +case $#:$2 in +2:*.fc) ;; *) echo "$0: $1: not a FC file" >&2; exit 1 esac -base="`basename "$1" .fc`" +dst=$1 +src=$2 +base="`basename "$src" .fc`" trap 'rm -f tmp.c tmp.s"; exit 1' 2 -cp "$1" tmp.c && +cp "$src" tmp.c && cc -O -I. -D_MINIX -D_POSIX_SOURCE -S tmp.c && sed -f FP.script tmp.s > "$base.s" && +cc -c -o $dst "$base.s" && rm tmp.c tmp.s Only in src/lib/ack/float: Makedepend-ack Only in src/lib/ack/float: Makedepend-gnu diff -ur oldsrc/lib/ack/float/Makefile src/lib/ack/float/Makefile --- oldsrc/lib/ack/float/Makefile 2005-10-10 19:27:42.000000000 +0400 +++ src/lib/ack/float/Makefile 2006-02-20 19:11:02.000000000 +0300 @@ -1,61 +1,151 @@ -# Makefile for lib/float. +#Generated from ./ack/float/Makefile.in +all: all-ack -CC1 = /bin/sh ./FP.compile +all-ack: +all-gnu: -LIBRARIES = libfp +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./ack/float ../../obj-ack/ ../../obj-gnu + +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./ack/float ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +depend: depend-ack +all-ack: ../../obj-ack//libfp.a + +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(add_ext.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(adder.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(adf4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(adf8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cff4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cff8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cfi.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cfu.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cif4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cif8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cmf4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cmf8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(compact.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cuf4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(cuf8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(div_ext.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(dvf4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(dvf8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(extend.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(fef4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(fef8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(fif4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(fif8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(fptrp.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(mlf4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(mlf8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(mul_ext.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(ngf4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(ngf8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(nrm_ext.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(sbf4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(sbf8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(sft_ext.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(shifter.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(sub_ext.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(zrf4.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(zrf8.o) +../../obj-ack//libfp.a: ../../obj-ack//libfp.a(zrf_ext.o) + +../../obj-ack//libfp.a: + ar cr ../../obj-ack//libfp.a ../../obj-ack//./ack/float/*.o + rm ../../obj-ack//./ack/float/*.o + +../../obj-ack//libfp.a(add_ext.o): add_ext.fc + sh ./FP.compile ../../obj-ack//./ack/float/add_ext.o add_ext.fc +../../obj-ack//libfp.a(adder.o): adder.fc + sh ./FP.compile ../../obj-ack//./ack/float/adder.o adder.fc +../../obj-ack//libfp.a(adf4.o): adf4.fc + sh ./FP.compile ../../obj-ack//./ack/float/adf4.o adf4.fc +../../obj-ack//libfp.a(adf8.o): adf8.fc + sh ./FP.compile ../../obj-ack//./ack/float/adf8.o adf8.fc +../../obj-ack//libfp.a(cff4.o): cff4.fc + sh ./FP.compile ../../obj-ack//./ack/float/cff4.o cff4.fc +../../obj-ack//libfp.a(cff8.o): cff8.fc + sh ./FP.compile ../../obj-ack//./ack/float/cff8.o cff8.fc +../../obj-ack//libfp.a(cfi.o): cfi.fc + sh ./FP.compile ../../obj-ack//./ack/float/cfi.o cfi.fc +../../obj-ack//libfp.a(cfu.o): cfu.fc + sh ./FP.compile ../../obj-ack//./ack/float/cfu.o cfu.fc +../../obj-ack//libfp.a(cif4.o): cif4.fc + sh ./FP.compile ../../obj-ack//./ack/float/cif4.o cif4.fc +../../obj-ack//libfp.a(cif8.o): cif8.fc + sh ./FP.compile ../../obj-ack//./ack/float/cif8.o cif8.fc +../../obj-ack//libfp.a(cmf4.o): cmf4.fc + sh ./FP.compile ../../obj-ack//./ack/float/cmf4.o cmf4.fc +../../obj-ack//libfp.a(cmf8.o): cmf8.fc + sh ./FP.compile ../../obj-ack//./ack/float/cmf8.o cmf8.fc +../../obj-ack//libfp.a(compact.o): compact.fc + sh ./FP.compile ../../obj-ack//./ack/float/compact.o compact.fc +../../obj-ack//libfp.a(cuf4.o): cuf4.fc + sh ./FP.compile ../../obj-ack//./ack/float/cuf4.o cuf4.fc +../../obj-ack//libfp.a(cuf8.o): cuf8.fc + sh ./FP.compile ../../obj-ack//./ack/float/cuf8.o cuf8.fc +../../obj-ack//libfp.a(div_ext.o): div_ext.fc + sh ./FP.compile ../../obj-ack//./ack/float/div_ext.o div_ext.fc +../../obj-ack//libfp.a(dvf4.o): dvf4.fc + sh ./FP.compile ../../obj-ack//./ack/float/dvf4.o dvf4.fc +../../obj-ack//libfp.a(dvf8.o): dvf8.fc + sh ./FP.compile ../../obj-ack//./ack/float/dvf8.o dvf8.fc +../../obj-ack//libfp.a(extend.o): extend.fc + sh ./FP.compile ../../obj-ack//./ack/float/extend.o extend.fc +../../obj-ack//libfp.a(fef4.o): fef4.fc + sh ./FP.compile ../../obj-ack//./ack/float/fef4.o fef4.fc +../../obj-ack//libfp.a(fef8.o): fef8.fc + sh ./FP.compile ../../obj-ack//./ack/float/fef8.o fef8.fc +../../obj-ack//libfp.a(fif4.o): fif4.fc + sh ./FP.compile ../../obj-ack//./ack/float/fif4.o fif4.fc +../../obj-ack//libfp.a(fif8.o): fif8.fc + sh ./FP.compile ../../obj-ack//./ack/float/fif8.o fif8.fc +../../obj-ack//libfp.a(fptrp.o): fptrp.s + cc -c -o ../../obj-ack//./ack/float/fptrp.o fptrp.s +../../obj-ack//libfp.a(mlf4.o): mlf4.fc + sh ./FP.compile ../../obj-ack//./ack/float/mlf4.o mlf4.fc +../../obj-ack//libfp.a(mlf8.o): mlf8.fc + sh ./FP.compile ../../obj-ack//./ack/float/mlf8.o mlf8.fc +../../obj-ack//libfp.a(mul_ext.o): mul_ext.fc + sh ./FP.compile ../../obj-ack//./ack/float/mul_ext.o mul_ext.fc +../../obj-ack//libfp.a(ngf4.o): ngf4.fc + sh ./FP.compile ../../obj-ack//./ack/float/ngf4.o ngf4.fc +../../obj-ack//libfp.a(ngf8.o): ngf8.fc + sh ./FP.compile ../../obj-ack//./ack/float/ngf8.o ngf8.fc +../../obj-ack//libfp.a(nrm_ext.o): nrm_ext.fc + sh ./FP.compile ../../obj-ack//./ack/float/nrm_ext.o nrm_ext.fc +../../obj-ack//libfp.a(sbf4.o): sbf4.fc + sh ./FP.compile ../../obj-ack//./ack/float/sbf4.o sbf4.fc +../../obj-ack//libfp.a(sbf8.o): sbf8.fc + sh ./FP.compile ../../obj-ack//./ack/float/sbf8.o sbf8.fc +../../obj-ack//libfp.a(sft_ext.o): sft_ext.fc + sh ./FP.compile ../../obj-ack//./ack/float/sft_ext.o sft_ext.fc +../../obj-ack//libfp.a(shifter.o): shifter.fc + sh ./FP.compile ../../obj-ack//./ack/float/shifter.o shifter.fc +../../obj-ack//libfp.a(sub_ext.o): sub_ext.fc + sh ./FP.compile ../../obj-ack//./ack/float/sub_ext.o sub_ext.fc +../../obj-ack//libfp.a(zrf4.o): zrf4.fc + sh ./FP.compile ../../obj-ack//./ack/float/zrf4.o zrf4.fc +../../obj-ack//libfp.a(zrf8.o): zrf8.fc + sh ./FP.compile ../../obj-ack//./ack/float/zrf8.o zrf8.fc +../../obj-ack//libfp.a(zrf_ext.o): zrf_ext.fc + sh ./FP.compile ../../obj-ack//./ack/float/zrf_ext.o zrf_ext.fc -libfp_OBJECTS = \ - add_ext.o \ - adder.o \ - adf4.o \ - adf8.o \ - cff4.o \ - cff8.o \ - cfi.o \ - cfu.o \ - cif4.o \ - cif8.o \ - cmf4.o \ - cmf8.o \ - compact.o \ - cuf4.o \ - cuf8.o \ - div_ext.o \ - dvf4.o \ - dvf8.o \ - extend.o \ - fef4.o \ - fef8.o \ - fif4.o \ - fif8.o \ - fptrp.o \ - mlf4.o \ - mlf8.o \ - mul_ext.o \ - ngf4.o \ - ngf8.o \ - nrm_ext.o \ - sbf4.o \ - sbf8.o \ - sft_ext.o \ - shifter.o \ - sub_ext.o \ - zrf4.o \ - zrf8.o \ - zrf_ext.o \ - -include ../../Makefile.ack.inc - -#extra commands to convert the c files to the correct assembler files - -%.s: %.fc - /bin/sh ./FP.compile $< - -#1. make a assembler file of the c file -#%.fs: %.fc -# -cp $< $(<:.fc=.c) && cc -O -I. -D_MINIX -D_POSIX_SOURCE -S $(<:.fc=.c) && cp $(<:.fc=.s) $(<:.fc=.fs) -# @rm $(<:.fc=.c) $(<:.fc=.s) - -#2. modify the assembler file -#%.s: %.fs -# sed -f FP.script $< > $@ + + +clean:: + rm -f ../../obj-ack//./ack/float/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/ack/float: Makefile.in Only in src/lib/ack/float: add_ext.s Only in src/lib/ack/float: adder.s Only in src/lib/ack/float: adf4.s Only in src/lib/ack/float: adf8.s Only in src/lib/ack/float: cff4.s Only in src/lib/ack/float: cff8.s Only in src/lib/ack/float: cfi.s Only in src/lib/ack/float: cfu.s Only in src/lib/ack/float: cif4.s Only in src/lib/ack/float: cif8.s Only in src/lib/ack/float: cmf4.s Only in src/lib/ack/float: cmf8.s Only in src/lib/ack/float: compact.s Only in src/lib/ack/float: cuf4.s Only in src/lib/ack/float: cuf8.s Only in src/lib/ack/float: div_ext.s Only in src/lib/ack/float: dvf4.s Only in src/lib/ack/float: dvf8.s Only in src/lib/ack/float: extend.s Only in src/lib/ack/float: fef4.s Only in src/lib/ack/float: fef8.s Only in src/lib/ack/float: fif4.s Only in src/lib/ack/float: fif8.s Only in src/lib/ack/float: mlf4.s Only in src/lib/ack/float: mlf8.s Only in src/lib/ack/float: mul_ext.s Only in src/lib/ack/float: ngf4.s Only in src/lib/ack/float: ngf8.s Only in src/lib/ack/float: nrm_ext.s Only in src/lib/ack/float: sbf4.s Only in src/lib/ack/float: sbf8.s Only in src/lib/ack/float: sft_ext.s Only in src/lib/ack/float: shifter.s Only in src/lib/ack/float: sub_ext.s Only in src/lib/ack/float: zrf4.s Only in src/lib/ack/float: zrf8.s Only in src/lib/ack/float: zrf_ext.s Only in src/lib/ack/fphook: .depend-ack Only in src/lib/ack/fphook: .depend-gnu Only in src/lib/ack/fphook: Makedepend-ack Only in src/lib/ack/fphook: Makedepend-gnu diff -ur oldsrc/lib/ack/fphook/Makefile src/lib/ack/fphook/Makefile --- oldsrc/lib/ack/fphook/Makefile 2005-10-10 19:27:43.000000000 +0400 +++ src/lib/ack/fphook/Makefile 2006-02-20 19:11:03.000000000 +0300 @@ -1,19 +1,54 @@ -# Makefile for lib/ack/fphook. +#Generated from ./ack/fphook/Makefile.in +all: all-ack -# The ACK ANSI C compiler has an nice trick to reduce the size of programs -# that do not use floating point. If a program uses floating point then the -# compiler generates an external reference to the label '_fp_hook'. This makes -# the loader bring in the floating point printing and conversion routines -# '_f_print' and 'strtod' from the library libd.a. Otherwise two dummy -# routines are found in libc.a. (The printf and scanf need floating point -# for the %f formats, whether you use them or not.) +all-ack: +all-gnu: -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE -I.. +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./ack/fphook ../../obj-ack/ ../../obj-gnu -LIBRARIES = libd libc +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./ack/fphook ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -libd_OBJECTS = fphook.o +depend: depend-ack +all-ack: ../../obj-ack//libd.a -libc_OBJECTS = fltpr.o strtod.o +../../obj-ack//libd.a: ../../obj-ack//libd.a(fphook.o) -include ../../Makefile.ack.inc +../../obj-ack//libd.a: + ar cr ../../obj-ack//libd.a ../../obj-ack//./ack/fphook/*.o + rm ../../obj-ack//./ack/fphook/*.o + +../../obj-ack//libd.a(fphook.o): fphook.c + cc -O -D_MINIX -D_POSIX_SOURCE -I.. -c -o ../../obj-ack//./ack/fphook/fphook.o fphook.c + +all-ack: ../../obj-ack//libc.a + +../../obj-ack//libc.a: ../../obj-ack//libc.a(fltpr.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strtod.o) + +../../obj-ack//libc.a: + ar cr ../../obj-ack//libc.a ../../obj-ack//./ack/fphook/*.o + rm ../../obj-ack//./ack/fphook/*.o + +../../obj-ack//libc.a(fltpr.o): fltpr.c + cc -O -D_MINIX -D_POSIX_SOURCE -I.. -c -o ../../obj-ack//./ack/fphook/fltpr.o fltpr.c +../../obj-ack//libc.a(strtod.o): strtod.c + cc -O -D_MINIX -D_POSIX_SOURCE -I.. -c -o ../../obj-ack//./ack/fphook/strtod.o strtod.c + + + +clean:: + rm -f ../../obj-ack//./ack/fphook/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack/fphook: Makefile.ack.conv Only in src/lib/ack/fphook: Makefile.in Only in src/lib/ack/i386: .depend-ack Only in src/lib/ack/i386: .depend-gnu Only in src/lib/ack/i386: Makedepend-ack Only in src/lib/ack/i386: Makedepend-gnu diff -ur oldsrc/lib/ack/i386/Makefile src/lib/ack/i386/Makefile --- oldsrc/lib/ack/i386/Makefile 2005-10-10 19:27:44.000000000 +0400 +++ src/lib/ack/i386/Makefile 2006-02-20 19:11:04.000000000 +0300 @@ -1,4 +1,48 @@ +#Generated from ./ack/i386/Makefile.in +all: all-ack -SUBDIRS = em head +all-ack: +all-gnu: -include ../../Makefile.ack.inc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./ack/i386 ../../obj-ack/ ../../obj-gnu + +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./ack/i386 ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +all-ack: makefiles + mkdir -p ../../obj-ack//./ack/i386/em + cd em && $(MAKE) $@ + mkdir -p ../../obj-ack//./ack/i386/head + cd head && $(MAKE) $@ + +all-gnu: makefiles + cd em && $(MAKE) $@ + cd head && $(MAKE) $@ + +clean depend depend-ack depend-gnu:: makefiles + cd em && $(MAKE) $@ + cd head && $(MAKE) $@ + +makefiles: em/Makefile +makefiles: head/Makefile + +em/Makefile: em/Makefile.in + cd em && sh ../../../generate.sh ./ack/i386/em ../../../obj-ack/ ../../../obj-gnu && $(MAKE) makefiles +head/Makefile: head/Makefile.in + cd head && sh ../../../generate.sh ./ack/i386/head ../../../obj-ack/ ../../../obj-gnu && $(MAKE) makefiles + +clean:: + rm -f ../../obj-ack//./ack/i386/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack/i386: Makefile.ack Only in src/lib/ack/i386: Makefile.in Only in src/lib/ack/i386/em: .depend-ack Only in src/lib/ack/i386/em: .depend-gnu Only in src/lib/ack/i386/em: Makedepend-ack Only in src/lib/ack/i386/em: Makedepend-gnu diff -ur oldsrc/lib/ack/i386/em/Makefile src/lib/ack/i386/em/Makefile --- oldsrc/lib/ack/i386/em/Makefile 2005-10-10 19:27:44.000000000 +0400 +++ src/lib/ack/i386/em/Makefile 2006-02-20 19:11:05.000000000 +0300 @@ -1,78 +1,244 @@ -# Makefile for lib/ack/i386/em. +#Generated from ./ack/i386/em/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE -Was-ack +all-ack: +all-gnu: -LIBRARIES = libe +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../../generate.sh ./ack/i386/em ../../../obj-ack/ ../../../obj-gnu -libe_OBJECTS = \ - em_adf4.o \ - em_adf8.o \ - em_adi.o \ - em_and.o \ - em_blm.o \ - em_cff4.o \ - em_cff8.o \ - em_cfi.o \ - em_cfu.o \ - em_cif4.o \ - em_cif8.o \ - em_cii.o \ - em_cmf4.o \ - em_cmf8.o \ - em_cms.o \ - em_com.o \ - em_csa4.o \ - em_csb4.o \ - em_cuf4.o \ - em_cuf8.o \ - em_cuu.o \ - em_dup.o \ - em_dvf4.o \ - em_dvf8.o \ - em_dvi.o \ - em_dvu.o \ - em_error.o \ - em_exg.o \ - em_fat.o \ - em_fef4.o \ - em_fef8.o \ - em_fif4.o \ - em_fif8.o \ - em_fp8087.o \ - em_gto.o \ - em_hol0.o \ - em_iaar.o \ - em_ilar.o \ - em_inn.o \ - em_ior.o \ - em_isar.o \ - em_lar4.o \ - em_loi.o \ - em_mlf4.o \ - em_mlf8.o \ - em_mli.o \ - em_mon.o \ - em_ngf4.o \ - em_ngf8.o \ - em_ngi.o \ - em_nop.o \ - em_print.o \ - em_rck.o \ - em_rmi.o \ - em_rmu.o \ - em_rol.o \ - em_ror.o \ - em_sar4.o \ - em_sbf4.o \ - em_sbf8.o \ - em_sbi.o \ - em_set.o \ - em_sli.o \ - em_sri.o \ - em_sti.o \ - em_stop.o \ - em_trp.o \ - em_unknown.o \ - em_xor.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../../generate.sh ./ack/i386/em ../../../obj-ack/ ../../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../../Makefile.ack.inc +depend: depend-ack +all-ack: ../../../obj-ack//libe.a + +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_adf4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_adf8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_adi.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_and.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_blm.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cff4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cff8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cfi.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cfu.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cif4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cif8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cii.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cmf4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cmf8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cms.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_com.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_csa4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_csb4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cuf4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cuf8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_cuu.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_dup.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_dvf4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_dvf8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_dvi.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_dvu.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_error.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_exg.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_fat.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_fef4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_fef8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_fif4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_fif8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_fp8087.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_gto.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_hol0.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_iaar.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_ilar.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_inn.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_ior.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_isar.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_lar4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_loi.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_mlf4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_mlf8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_mli.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_mon.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_ngf4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_ngf8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_ngi.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_nop.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_print.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_rck.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_rmi.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_rmu.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_rol.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_ror.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_sar4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_sbf4.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_sbf8.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_sbi.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_set.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_sli.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_sri.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_sti.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_stop.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_trp.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_unknown.o) +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_xor.o) + +../../../obj-ack//libe.a: + ar cr ../../../obj-ack//libe.a ../../../obj-ack//./ack/i386/em/*.o + rm ../../../obj-ack//./ack/i386/em/*.o + +../../../obj-ack//libe.a(em_adf4.o): em_adf4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_adf4.o em_adf4.s +../../../obj-ack//libe.a(em_adf8.o): em_adf8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_adf8.o em_adf8.s +../../../obj-ack//libe.a(em_adi.o): em_adi.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_adi.o em_adi.s +../../../obj-ack//libe.a(em_and.o): em_and.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_and.o em_and.s +../../../obj-ack//libe.a(em_blm.o): em_blm.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_blm.o em_blm.s +../../../obj-ack//libe.a(em_cff4.o): em_cff4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cff4.o em_cff4.s +../../../obj-ack//libe.a(em_cff8.o): em_cff8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cff8.o em_cff8.s +../../../obj-ack//libe.a(em_cfi.o): em_cfi.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cfi.o em_cfi.s +../../../obj-ack//libe.a(em_cfu.o): em_cfu.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cfu.o em_cfu.s +../../../obj-ack//libe.a(em_cif4.o): em_cif4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cif4.o em_cif4.s +../../../obj-ack//libe.a(em_cif8.o): em_cif8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cif8.o em_cif8.s +../../../obj-ack//libe.a(em_cii.o): em_cii.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cii.o em_cii.s +../../../obj-ack//libe.a(em_cmf4.o): em_cmf4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cmf4.o em_cmf4.s +../../../obj-ack//libe.a(em_cmf8.o): em_cmf8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cmf8.o em_cmf8.s +../../../obj-ack//libe.a(em_cms.o): em_cms.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cms.o em_cms.s +../../../obj-ack//libe.a(em_com.o): em_com.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_com.o em_com.s +../../../obj-ack//libe.a(em_csa4.o): em_csa4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_csa4.o em_csa4.s +../../../obj-ack//libe.a(em_csb4.o): em_csb4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_csb4.o em_csb4.s +../../../obj-ack//libe.a(em_cuf4.o): em_cuf4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cuf4.o em_cuf4.s +../../../obj-ack//libe.a(em_cuf8.o): em_cuf8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cuf8.o em_cuf8.s +../../../obj-ack//libe.a(em_cuu.o): em_cuu.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_cuu.o em_cuu.s +../../../obj-ack//libe.a(em_dup.o): em_dup.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_dup.o em_dup.s +../../../obj-ack//libe.a(em_dvf4.o): em_dvf4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_dvf4.o em_dvf4.s +../../../obj-ack//libe.a(em_dvf8.o): em_dvf8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_dvf8.o em_dvf8.s +../../../obj-ack//libe.a(em_dvi.o): em_dvi.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_dvi.o em_dvi.s +../../../obj-ack//libe.a(em_dvu.o): em_dvu.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_dvu.o em_dvu.s +../../../obj-ack//libe.a(em_error.o): em_error.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_error.o em_error.s +../../../obj-ack//libe.a(em_exg.o): em_exg.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_exg.o em_exg.s +../../../obj-ack//libe.a(em_fat.o): em_fat.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_fat.o em_fat.s +../../../obj-ack//libe.a(em_fef4.o): em_fef4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_fef4.o em_fef4.s +../../../obj-ack//libe.a(em_fef8.o): em_fef8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_fef8.o em_fef8.s +../../../obj-ack//libe.a(em_fif4.o): em_fif4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_fif4.o em_fif4.s +../../../obj-ack//libe.a(em_fif8.o): em_fif8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_fif8.o em_fif8.s +../../../obj-ack//libe.a(em_fp8087.o): em_fp8087.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_fp8087.o em_fp8087.s +../../../obj-ack//libe.a(em_gto.o): em_gto.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_gto.o em_gto.s +../../../obj-ack//libe.a(em_hol0.o): em_hol0.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_hol0.o em_hol0.s +../../../obj-ack//libe.a(em_iaar.o): em_iaar.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_iaar.o em_iaar.s +../../../obj-ack//libe.a(em_ilar.o): em_ilar.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_ilar.o em_ilar.s +../../../obj-ack//libe.a(em_inn.o): em_inn.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_inn.o em_inn.s +../../../obj-ack//libe.a(em_ior.o): em_ior.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_ior.o em_ior.s +../../../obj-ack//libe.a(em_isar.o): em_isar.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_isar.o em_isar.s +../../../obj-ack//libe.a(em_lar4.o): em_lar4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_lar4.o em_lar4.s +../../../obj-ack//libe.a(em_loi.o): em_loi.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_loi.o em_loi.s +../../../obj-ack//libe.a(em_mlf4.o): em_mlf4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_mlf4.o em_mlf4.s +../../../obj-ack//libe.a(em_mlf8.o): em_mlf8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_mlf8.o em_mlf8.s +../../../obj-ack//libe.a(em_mli.o): em_mli.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_mli.o em_mli.s +../../../obj-ack//libe.a(em_mon.o): em_mon.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_mon.o em_mon.s +../../../obj-ack//libe.a(em_ngf4.o): em_ngf4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_ngf4.o em_ngf4.s +../../../obj-ack//libe.a(em_ngf8.o): em_ngf8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_ngf8.o em_ngf8.s +../../../obj-ack//libe.a(em_ngi.o): em_ngi.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_ngi.o em_ngi.s +../../../obj-ack//libe.a(em_nop.o): em_nop.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_nop.o em_nop.s +../../../obj-ack//libe.a(em_print.o): em_print.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_print.o em_print.s +../../../obj-ack//libe.a(em_rck.o): em_rck.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_rck.o em_rck.s +../../../obj-ack//libe.a(em_rmi.o): em_rmi.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_rmi.o em_rmi.s +../../../obj-ack//libe.a(em_rmu.o): em_rmu.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_rmu.o em_rmu.s +../../../obj-ack//libe.a(em_rol.o): em_rol.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_rol.o em_rol.s +../../../obj-ack//libe.a(em_ror.o): em_ror.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_ror.o em_ror.s +../../../obj-ack//libe.a(em_sar4.o): em_sar4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_sar4.o em_sar4.s +../../../obj-ack//libe.a(em_sbf4.o): em_sbf4.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_sbf4.o em_sbf4.s +../../../obj-ack//libe.a(em_sbf8.o): em_sbf8.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_sbf8.o em_sbf8.s +../../../obj-ack//libe.a(em_sbi.o): em_sbi.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_sbi.o em_sbi.s +../../../obj-ack//libe.a(em_set.o): em_set.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_set.o em_set.s +../../../obj-ack//libe.a(em_sli.o): em_sli.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_sli.o em_sli.s +../../../obj-ack//libe.a(em_sri.o): em_sri.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_sri.o em_sri.s +../../../obj-ack//libe.a(em_sti.o): em_sti.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_sti.o em_sti.s +../../../obj-ack//libe.a(em_stop.o): em_stop.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_stop.o em_stop.s +../../../obj-ack//libe.a(em_trp.o): em_trp.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_trp.o em_trp.s +../../../obj-ack//libe.a(em_unknown.o): em_unknown.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_unknown.o em_unknown.s +../../../obj-ack//libe.a(em_xor.o): em_xor.s + cc -O -D_MINIX -D_POSIX_SOURCE -Was-ack -c -o ../../../obj-ack//./ack/i386/em/em_xor.o em_xor.s + + + +clean:: + rm -f ../../../obj-ack//./ack/i386/em/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack/i386/em: Makefile.ack.conv Only in src/lib/ack/i386/em: Makefile.in Only in src/lib/ack/i386/head: .depend-ack Only in src/lib/ack/i386/head: .depend-gnu Only in src/lib/ack/i386/head: Makedepend-ack Only in src/lib/ack/i386/head: Makedepend-gnu diff -ur oldsrc/lib/ack/i386/head/Makefile src/lib/ack/i386/head/Makefile --- oldsrc/lib/ack/i386/head/Makefile 2005-10-10 19:27:45.000000000 +0400 +++ src/lib/ack/i386/head/Makefile 2006-02-20 19:11:06.000000000 +0300 @@ -1,9 +1,40 @@ -# Makefile for lib/ack/i386/head. +#Generated from ./ack/i386/head/Makefile.in +all: all-ack -ASFLAGS = -I. +all-ack: +all-gnu: -LIBRARIES = libe +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../../generate.sh ./ack/i386/head ../../../obj-ack/ ../../../obj-gnu -libe_OBJECTS = em_head.o +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../../generate.sh ./ack/i386/head ../../../obj-ack/ ../../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../../Makefile.ack.inc +depend: depend-ack +all-ack: ../../../obj-ack//libe.a + +../../../obj-ack//libe.a: ../../../obj-ack//libe.a(em_head.o) + +../../../obj-ack//libe.a: + ar cr ../../../obj-ack//libe.a ../../../obj-ack//./ack/i386/head/*.o + rm ../../../obj-ack//./ack/i386/head/*.o + +../../../obj-ack//libe.a(em_head.o): em_head.s + cc -c -o ../../../obj-ack//./ack/i386/head/em_head.o em_head.s + + + +clean:: + rm -f ../../../obj-ack//./ack/i386/head/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack/i386/head: Makefile.ack.conv Only in src/lib/ack/i386/head: Makefile.in diff -ur oldsrc/lib/ack/i386/head/em_head.s src/lib/ack/i386/head/em_head.s --- oldsrc/lib/ack/i386/head/em_head.s 2005-10-10 19:27:45.000000000 +0400 +++ src/lib/ack/i386/head/em_head.s 2006-01-16 18:44:44.000000000 +0300 @@ -11,7 +11,7 @@ EODDZ = 19 ECASE = 20 -#include +#include "em_abs.h" .sect .data .trppc: Only in src/lib/ack/libm2: .depend-ack Only in src/lib/ack/libm2: .depend-gnu Only in src/lib/ack/libm2: Makedepend-ack Only in src/lib/ack/libm2: Makedepend-gnu diff -ur oldsrc/lib/ack/libm2/Makefile src/lib/ack/libm2/Makefile --- oldsrc/lib/ack/libm2/Makefile 2005-10-10 19:27:46.000000000 +0400 +++ src/lib/ack/libm2/Makefile 2006-02-20 19:11:07.000000000 +0300 @@ -1,57 +1,178 @@ -# Makefile for lib/ack/libm2. +#Generated from ./ack/libm2/Makefile.in +all: all-ack -CFLAGS = -O -I../h -wo -M2FLAGS = -O -ws -n +all-ack: +all-gnu: -LIBRARIES = libm2 +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./ack/libm2 ../../obj-ack/ ../../obj-gnu -libm2_OBJECTS = \ - Arguments.o \ - ArraySort.o \ - CSP.o \ - Conversion.o \ - EM.o \ - InOut.o \ - LtoUset.o \ - MathLib0.o \ - Mathlib.o \ - PascalIO.o \ - Processes.o \ - RealConver.o \ - RealInOut.o \ - SYSTEM.o \ - Semaphores.o \ - Storage.o \ - StrAss.o \ - Streams.o \ - Strings.o \ - Termcap.o \ - Terminal.o \ - Traps.o \ - XXTermcap.o \ - absd.o \ - absf.o \ - absi.o \ - absl.o \ - blockmove.o \ - cap.o \ - catch.o \ - confarray.o \ - dvi.o \ - halt.o \ - head_m2.o \ - init.o \ - load.o \ - par_misc.o \ - random.o \ - rcka.o \ - rcki.o \ - rckil.o \ - rcku.o \ - rckul.o \ - sigtrp.o \ - stackprio.o \ - store.o \ - ucheck.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./ack/libm2 ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../Makefile.ack.inc +depend: depend-ack +all-ack: ../../obj-ack//libm2.a + +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Arguments.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(ArraySort.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(CSP.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Conversion.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(EM.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(InOut.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(LtoUset.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(MathLib0.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Mathlib.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(PascalIO.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Processes.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(RealConver.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(RealInOut.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(SYSTEM.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Semaphores.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Storage.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(StrAss.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Streams.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Strings.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Termcap.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Terminal.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(Traps.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(XXTermcap.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(absd.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(absf.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(absi.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(absl.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(blockmove.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(cap.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(catch.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(confarray.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(dvi.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(halt.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(head_m2.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(init.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(load.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(par_misc.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(random.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(rcka.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(rcki.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(rckil.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(rcku.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(rckul.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(sigtrp.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(stackprio.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(store.o) +../../obj-ack//libm2.a: ../../obj-ack//libm2.a(ucheck.o) + +../../obj-ack//libm2.a: + ar cr ../../obj-ack//libm2.a ../../obj-ack//./ack/libm2/*.o + rm ../../obj-ack//./ack/libm2/*.o + +../../obj-ack//libm2.a(Arguments.o): Arguments.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/Arguments.o Arguments.c +../../obj-ack//libm2.a(ArraySort.o): ArraySort.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/ArraySort.o ArraySort.mod +../../obj-ack//libm2.a(CSP.o): CSP.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/CSP.o CSP.mod +../../obj-ack//libm2.a(Conversion.o): Conversion.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Conversion.o Conversion.mod +../../obj-ack//libm2.a(EM.o): EM.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/EM.o EM.e +../../obj-ack//libm2.a(InOut.o): InOut.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/InOut.o InOut.mod +../../obj-ack//libm2.a(LtoUset.o): LtoUset.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/LtoUset.o LtoUset.e +../../obj-ack//libm2.a(MathLib0.o): MathLib0.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/MathLib0.o MathLib0.mod +../../obj-ack//libm2.a(Mathlib.o): Mathlib.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Mathlib.o Mathlib.mod +../../obj-ack//libm2.a(PascalIO.o): PascalIO.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/PascalIO.o PascalIO.mod +../../obj-ack//libm2.a(Processes.o): Processes.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Processes.o Processes.mod +../../obj-ack//libm2.a(RealConver.o): RealConver.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/RealConver.o RealConver.mod +../../obj-ack//libm2.a(RealInOut.o): RealInOut.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/RealInOut.o RealInOut.mod +../../obj-ack//libm2.a(SYSTEM.o): SYSTEM.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/SYSTEM.o SYSTEM.c +../../obj-ack//libm2.a(Semaphores.o): Semaphores.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Semaphores.o Semaphores.mod +../../obj-ack//libm2.a(Storage.o): Storage.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Storage.o Storage.mod +../../obj-ack//libm2.a(StrAss.o): StrAss.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/StrAss.o StrAss.c +../../obj-ack//libm2.a(Streams.o): Streams.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Streams.o Streams.mod +../../obj-ack//libm2.a(Strings.o): Strings.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Strings.o Strings.mod +../../obj-ack//libm2.a(Termcap.o): Termcap.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Termcap.o Termcap.mod +../../obj-ack//libm2.a(Terminal.o): Terminal.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Terminal.o Terminal.mod +../../obj-ack//libm2.a(Traps.o): Traps.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/Traps.o Traps.mod +../../obj-ack//libm2.a(XXTermcap.o): XXTermcap.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/XXTermcap.o XXTermcap.c +../../obj-ack//libm2.a(absd.o): absd.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/absd.o absd.c +../../obj-ack//libm2.a(absf.o): absf.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/absf.o absf.e +../../obj-ack//libm2.a(absi.o): absi.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/absi.o absi.c +../../obj-ack//libm2.a(absl.o): absl.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/absl.o absl.c +../../obj-ack//libm2.a(blockmove.o): blockmove.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/blockmove.o blockmove.c +../../obj-ack//libm2.a(cap.o): cap.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/cap.o cap.c +../../obj-ack//libm2.a(catch.o): catch.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/catch.o catch.c +../../obj-ack//libm2.a(confarray.o): confarray.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/confarray.o confarray.c +../../obj-ack//libm2.a(dvi.o): dvi.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/dvi.o dvi.c +../../obj-ack//libm2.a(halt.o): halt.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/halt.o halt.c +../../obj-ack//libm2.a(head_m2.o): head_m2.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/head_m2.o head_m2.e +../../obj-ack//libm2.a(init.o): init.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/init.o init.c +../../obj-ack//libm2.a(load.o): load.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/load.o load.c +../../obj-ack//libm2.a(par_misc.o): par_misc.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/par_misc.o par_misc.e +../../obj-ack//libm2.a(random.o): random.mod + m2 -O -ws -n -c -o ../../obj-ack//./ack/libm2/random.o random.mod +../../obj-ack//libm2.a(rcka.o): rcka.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/rcka.o rcka.c +../../obj-ack//libm2.a(rcki.o): rcki.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/rcki.o rcki.c +../../obj-ack//libm2.a(rckil.o): rckil.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/rckil.o rckil.c +../../obj-ack//libm2.a(rcku.o): rcku.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/rcku.o rcku.c +../../obj-ack//libm2.a(rckul.o): rckul.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/rckul.o rckul.c +../../obj-ack//libm2.a(sigtrp.o): sigtrp.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/sigtrp.o sigtrp.c +../../obj-ack//libm2.a(stackprio.o): stackprio.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/stackprio.o stackprio.c +../../obj-ack//libm2.a(store.o): store.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/store.o store.c +../../obj-ack//libm2.a(ucheck.o): ucheck.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libm2/ucheck.o ucheck.c + + + +clean:: + rm -f ../../obj-ack//./ack/libm2/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack/libm2: Makefile.ack.conv Only in src/lib/ack/libm2: Makefile.in diff -ur oldsrc/lib/ack/libm2/init.c src/lib/ack/libm2/init.c --- oldsrc/lib/ack/libm2/init.c 2005-10-10 19:27:46.000000000 +0400 +++ src/lib/ack/libm2/init.c 2006-02-17 17:12:47.000000000 +0300 @@ -6,7 +6,7 @@ /* Module: initialization and some global vars Author: Ceriel J.H. Jacobs - Version: $Header: /cvsup/minix/src/lib/ack/libm2/init.c,v 1.1 2005/10/10 15:27:46 beng Exp $ + Version: $Header: /cvsup/minix/src/lib/ack/libm2/init.c,v 1.2 2006/02/17 14:12:47 philip Exp $ */ #include @@ -21,8 +21,12 @@ sigtrp(M2_UNIXSIG, SIGQUIT); sigtrp(EILLINS, SIGILL); sigtrp(M2_UNIXSIG, SIGTRAP); +#ifdef SIGIOT sigtrp(M2_UNIXSIG, SIGIOT); +#endif +#if SIGEMT sigtrp(M2_UNIXSIG, SIGEMT); +#endif sigtrp(M2_UNIXSIG, SIGFPE); sigtrp(M2_UNIXSIG, SIGBUS); sigtrp(M2_UNIXSIG, SIGSEGV); Only in src/lib/ack/libp: .depend-ack Only in src/lib/ack/libp: .depend-gnu Only in src/lib/ack/libp: Makedepend-ack Only in src/lib/ack/libp: Makedepend-gnu diff -ur oldsrc/lib/ack/libp/Makefile src/lib/ack/libp/Makefile --- oldsrc/lib/ack/libp/Makefile 2005-10-10 19:27:46.000000000 +0400 +++ src/lib/ack/libp/Makefile 2006-02-20 19:11:08.000000000 +0300 @@ -1,83 +1,256 @@ -# Makefile for lib/ack/libp. +#Generated from ./ack/libp/Makefile.in +all: all-ack -CFLAGS = -O -I../h -wo -CC1 = $(CC) $(CFLAGS) -c +all-ack: +all-gnu: -LIBRARIES = libp +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./ack/libp ../../obj-ack/ ../../obj-gnu -libp_OBJECTS = \ - abi.o \ - abl.o \ - abr.o \ - arg.o \ - ass.o \ - asz.o \ - atn.o \ - bcp.o \ - bts.o \ - buff.o \ - catch.o \ - clock.o \ - cls.o \ - cvt.o \ - diag.o \ - dis.o \ - efl.o \ - eln.o \ - encaps.o \ - exp.o \ - fef.o \ - fif.o \ - get.o \ - gto.o \ - head_pc.o \ - hlt.o \ - hol0.o \ - incpt.o \ - ini.o \ - log.o \ - mdi.o \ - mdl.o \ - new.o \ - nfa.o \ - nobuff.o \ - notext.o \ - opn.o \ - outcpt.o \ - pac.o \ - pclose.o \ - pcreat.o \ - pentry.o \ - perrno.o \ - pexit.o \ - popen.o \ - put.o \ - rcka.o \ - rdc.o \ - rdi.o \ - rdl.o \ - rdr.o \ - rf.o \ - rln.o \ - rnd.o \ - sav.o \ - sig.o \ - sin.o \ - sqt.o \ - string.o \ - trap.o \ - trp.o \ - unp.o \ - uread.o \ - uwrite.o \ - wdw.o \ - wf.o \ - wrc.o \ - wrf.o \ - wri.o \ - wrl.o \ - wrr.o \ - wrs.o \ - wrz.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./ack/libp ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../Makefile.ack.inc +depend: depend-ack +all-ack: ../../obj-ack//libp.a + +../../obj-ack//libp.a: ../../obj-ack//libp.a(abi.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(abl.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(abr.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(arg.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(ass.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(asz.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(atn.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(bcp.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(bts.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(buff.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(catch.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(clock.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(cls.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(cvt.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(diag.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(dis.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(efl.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(eln.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(encaps.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(exp.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(fef.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(fif.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(get.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(gto.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(head_pc.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(hlt.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(hol0.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(incpt.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(ini.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(log.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(mdi.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(mdl.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(new.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(nfa.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(nobuff.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(notext.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(opn.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(outcpt.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(pac.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(pclose.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(pcreat.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(pentry.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(perrno.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(pexit.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(popen.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(put.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(rcka.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(rdc.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(rdi.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(rdl.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(rdr.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(rf.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(rln.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(rnd.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(sav.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(sig.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(sin.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(sqt.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(string.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(trap.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(trp.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(unp.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(uread.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(uwrite.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(wdw.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(wf.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(wrc.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(wrf.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(wri.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(wrl.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(wrr.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(wrs.o) +../../obj-ack//libp.a: ../../obj-ack//libp.a(wrz.o) + +../../obj-ack//libp.a: + ar cr ../../obj-ack//libp.a ../../obj-ack//./ack/libp/*.o + rm ../../obj-ack//./ack/libp/*.o + +../../obj-ack//libp.a(abi.o): abi.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/abi.o abi.c +../../obj-ack//libp.a(abl.o): abl.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/abl.o abl.c +../../obj-ack//libp.a(abr.o): abr.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/abr.o abr.c +../../obj-ack//libp.a(arg.o): arg.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/arg.o arg.c +../../obj-ack//libp.a(ass.o): ass.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/ass.o ass.c +../../obj-ack//libp.a(asz.o): asz.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/asz.o asz.c +../../obj-ack//libp.a(atn.o): atn.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/atn.o atn.c +../../obj-ack//libp.a(bcp.o): bcp.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/bcp.o bcp.c +../../obj-ack//libp.a(bts.o): bts.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/bts.o bts.e +../../obj-ack//libp.a(buff.o): buff.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/buff.o buff.c +../../obj-ack//libp.a(catch.o): catch.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/catch.o catch.c +../../obj-ack//libp.a(clock.o): clock.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/clock.o clock.c +../../obj-ack//libp.a(cls.o): cls.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/cls.o cls.c +../../obj-ack//libp.a(cvt.o): cvt.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/cvt.o cvt.c +../../obj-ack//libp.a(diag.o): diag.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/diag.o diag.c +../../obj-ack//libp.a(dis.o): dis.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/dis.o dis.c +../../obj-ack//libp.a(efl.o): efl.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/efl.o efl.c +../../obj-ack//libp.a(eln.o): eln.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/eln.o eln.c +../../obj-ack//libp.a(encaps.o): encaps.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/encaps.o encaps.e +../../obj-ack//libp.a(exp.o): exp.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/exp.o exp.c +../../obj-ack//libp.a(fef.o): fef.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/fef.o fef.e +../../obj-ack//libp.a(fif.o): fif.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/fif.o fif.e +../../obj-ack//libp.a(get.o): get.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/get.o get.c +../../obj-ack//libp.a(gto.o): gto.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/gto.o gto.e +../../obj-ack//libp.a(head_pc.o): head_pc.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/head_pc.o head_pc.e +../../obj-ack//libp.a(hlt.o): hlt.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/hlt.o hlt.c +../../obj-ack//libp.a(hol0.o): hol0.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/hol0.o hol0.e +../../obj-ack//libp.a(incpt.o): incpt.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/incpt.o incpt.c +../../obj-ack//libp.a(ini.o): ini.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/ini.o ini.c +../../obj-ack//libp.a(log.o): log.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/log.o log.c +../../obj-ack//libp.a(mdi.o): mdi.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/mdi.o mdi.c +../../obj-ack//libp.a(mdl.o): mdl.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/mdl.o mdl.c +../../obj-ack//libp.a(new.o): new.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/new.o new.c +../../obj-ack//libp.a(nfa.o): nfa.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/nfa.o nfa.c +../../obj-ack//libp.a(nobuff.o): nobuff.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/nobuff.o nobuff.c +../../obj-ack//libp.a(notext.o): notext.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/notext.o notext.c +../../obj-ack//libp.a(opn.o): opn.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/opn.o opn.c +../../obj-ack//libp.a(outcpt.o): outcpt.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/outcpt.o outcpt.c +../../obj-ack//libp.a(pac.o): pac.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/pac.o pac.c +../../obj-ack//libp.a(pclose.o): pclose.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/pclose.o pclose.c +../../obj-ack//libp.a(pcreat.o): pcreat.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/pcreat.o pcreat.c +../../obj-ack//libp.a(pentry.o): pentry.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/pentry.o pentry.c +../../obj-ack//libp.a(perrno.o): perrno.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/perrno.o perrno.c +../../obj-ack//libp.a(pexit.o): pexit.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/pexit.o pexit.c +../../obj-ack//libp.a(popen.o): popen.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/popen.o popen.c +../../obj-ack//libp.a(put.o): put.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/put.o put.c +../../obj-ack//libp.a(rcka.o): rcka.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/rcka.o rcka.c +../../obj-ack//libp.a(rdc.o): rdc.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/rdc.o rdc.c +../../obj-ack//libp.a(rdi.o): rdi.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/rdi.o rdi.c +../../obj-ack//libp.a(rdl.o): rdl.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/rdl.o rdl.c +../../obj-ack//libp.a(rdr.o): rdr.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/rdr.o rdr.c +../../obj-ack//libp.a(rf.o): rf.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/rf.o rf.c +../../obj-ack//libp.a(rln.o): rln.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/rln.o rln.c +../../obj-ack//libp.a(rnd.o): rnd.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/rnd.o rnd.c +../../obj-ack//libp.a(sav.o): sav.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/sav.o sav.e +../../obj-ack//libp.a(sig.o): sig.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/sig.o sig.e +../../obj-ack//libp.a(sin.o): sin.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/sin.o sin.c +../../obj-ack//libp.a(sqt.o): sqt.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/sqt.o sqt.c +../../obj-ack//libp.a(string.o): string.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/string.o string.c +../../obj-ack//libp.a(trap.o): trap.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/trap.o trap.e +../../obj-ack//libp.a(trp.o): trp.e + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/trp.o trp.e +../../obj-ack//libp.a(unp.o): unp.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/unp.o unp.c +../../obj-ack//libp.a(uread.o): uread.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/uread.o uread.c +../../obj-ack//libp.a(uwrite.o): uwrite.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/uwrite.o uwrite.c +../../obj-ack//libp.a(wdw.o): wdw.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/wdw.o wdw.c +../../obj-ack//libp.a(wf.o): wf.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/wf.o wf.c +../../obj-ack//libp.a(wrc.o): wrc.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/wrc.o wrc.c +../../obj-ack//libp.a(wrf.o): wrf.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/wrf.o wrf.c +../../obj-ack//libp.a(wri.o): wri.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/wri.o wri.c +../../obj-ack//libp.a(wrl.o): wrl.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/wrl.o wrl.c +../../obj-ack//libp.a(wrr.o): wrr.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/wrr.o wrr.c +../../obj-ack//libp.a(wrs.o): wrs.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/wrs.o wrs.c +../../obj-ack//libp.a(wrz.o): wrz.c + cc -O -I../h -wo -c -o ../../obj-ack//./ack/libp/wrz.o wrz.c + + + +clean:: + rm -f ../../obj-ack//./ack/libp/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack/libp: Makefile.ack.conv Only in src/lib/ack/libp: Makefile.in Only in src/lib/ack/liby: .depend-ack Only in src/lib/ack/liby: .depend-gnu Only in src/lib/ack/liby: Makedepend-ack Only in src/lib/ack/liby: Makedepend-gnu diff -ur oldsrc/lib/ack/liby/Makefile src/lib/ack/liby/Makefile --- oldsrc/lib/ack/liby/Makefile 2005-10-10 19:27:47.000000000 +0400 +++ src/lib/ack/liby/Makefile 2006-02-20 19:11:09.000000000 +0300 @@ -1,11 +1,43 @@ -# Makefile for lib/liby. +#Generated from ./ack/liby/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE -wo +all-ack: +all-gnu: -LIBRARIES = liby +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./ack/liby ../../obj-ack/ ../../obj-gnu -liby_OBJECTS = \ - main.o \ - yyerror.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./ack/liby ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../Makefile.ack.inc +depend: depend-ack +all-ack: ../../obj-ack//liby.a + +../../obj-ack//liby.a: ../../obj-ack//liby.a(main.o) +../../obj-ack//liby.a: ../../obj-ack//liby.a(yyerror.o) + +../../obj-ack//liby.a: + ar cr ../../obj-ack//liby.a ../../obj-ack//./ack/liby/*.o + rm ../../obj-ack//./ack/liby/*.o + +../../obj-ack//liby.a(main.o): main.c + cc -O -D_MINIX -D_POSIX_SOURCE -wo -c -o ../../obj-ack//./ack/liby/main.o main.c +../../obj-ack//liby.a(yyerror.o): yyerror.c + cc -O -D_MINIX -D_POSIX_SOURCE -wo -c -o ../../obj-ack//./ack/liby/yyerror.o yyerror.c + + + +clean:: + rm -f ../../obj-ack//./ack/liby/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack/liby: Makefile.ack.conv Only in src/lib/ack/liby: Makefile.in Only in src/lib/ack/math: .depend-ack Only in src/lib/ack/math: .depend-gnu Only in src/lib/ack/math: Makedepend-ack Only in src/lib/ack/math: Makedepend-gnu diff -ur oldsrc/lib/ack/math/Makefile src/lib/ack/math/Makefile --- oldsrc/lib/ack/math/Makefile 2005-10-10 19:27:47.000000000 +0400 +++ src/lib/ack/math/Makefile 2006-02-20 19:11:10.000000000 +0300 @@ -1,13 +1,49 @@ -# Makefile for lib/ack/math. +#Generated from ./ack/math/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./ack/math ../../obj-ack/ ../../obj-gnu -libc_OBJECTS = \ - frexp.o \ - modf.o \ - isnan.o \ - ldexp.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./ack/math ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../Makefile.ack.inc +depend: depend-ack +all-ack: ../../obj-ack//libc.a + +../../obj-ack//libc.a: ../../obj-ack//libc.a(frexp.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(modf.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(isnan.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(ldexp.o) + +../../obj-ack//libc.a: + ar cr ../../obj-ack//libc.a ../../obj-ack//./ack/math/*.o + rm ../../obj-ack//./ack/math/*.o + +../../obj-ack//libc.a(frexp.o): frexp.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./ack/math/frexp.o frexp.s +../../obj-ack//libc.a(modf.o): modf.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./ack/math/modf.o modf.s +../../obj-ack//libc.a(isnan.o): isnan.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./ack/math/isnan.o isnan.c +../../obj-ack//libc.a(ldexp.o): ldexp.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./ack/math/ldexp.o ldexp.c + + + +clean:: + rm -f ../../obj-ack//./ack/math/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack/math: Makefile.ack.conv Only in src/lib/ack/math: Makefile.in Only in src/lib/ack/rts: .depend-ack Only in src/lib/ack/rts: .depend-gnu Only in src/lib/ack/rts: Makedepend-ack Only in src/lib/ack/rts: Makedepend-gnu diff -ur oldsrc/lib/ack/rts/Makefile src/lib/ack/rts/Makefile --- oldsrc/lib/ack/rts/Makefile 2005-10-10 19:27:47.000000000 +0400 +++ src/lib/ack/rts/Makefile 2006-02-20 19:11:11.000000000 +0300 @@ -1,10 +1,40 @@ -# Makefile for lib/ack/rts. +#Generated from ./ack/rts/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./ack/rts ../../obj-ack/ ../../obj-gnu -libc_OBJECTS = \ - setjmp.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./ack/rts ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../Makefile.ack.inc +depend: depend-ack +all-ack: ../../obj-ack//libc.a + +../../obj-ack//libc.a: ../../obj-ack//libc.a(setjmp.o) + +../../obj-ack//libc.a: + ar cr ../../obj-ack//libc.a ../../obj-ack//./ack/rts/*.o + rm ../../obj-ack//./ack/rts/*.o + +../../obj-ack//libc.a(setjmp.o): setjmp.e + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./ack/rts/setjmp.o setjmp.e + + + +clean:: + rm -f ../../obj-ack//./ack/rts/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/ack/rts: Makefile.ack.conv Only in src/lib/ack/rts: Makefile.in Only in oldsrc/lib/ackonly: Makefile-ack Only in oldsrc/lib/ackonly: Makefile-all Only in oldsrc/lib/ackonly: Makefile.ack.inc Only in oldsrc/lib/ackonly: Makefile.all.inc Only in src/lib/ansi: .depend-ack Only in src/lib/ansi: .depend-gnu Only in src/lib/ansi: Makedepend-ack Only in src/lib/ansi: Makedepend-gnu diff -ur oldsrc/lib/ansi/Makefile src/lib/ansi/Makefile --- oldsrc/lib/ansi/Makefile 2005-10-21 15:19:31.000000000 +0400 +++ src/lib/ansi/Makefile 2006-02-20 19:10:38.000000000 +0300 @@ -1,91 +1,493 @@ -# Makefile for lib/ansi. +#Generated from ./ansi/Makefile.in +all: all-ack -# This Makefile compiles part of the C library, the functions required by the -# ANSI C standard. This Makefile, and those in the other subdirectories use -# a little known feature of make, the ability to refer to a file within a -# library. The construct abs.o' names the file 'abs.o' contained -# in 'libc.a'. So the rule -# -# abs.o: abs.c -# cc -c abs.c -# aal cr libc.a abs.o -# rm abs.o -# -# compiles abs.c and installs the result abs.o in libc.a if abs.c is newer -# than the abs.o in the library. This Makefile does not work like this -# precisely, it first compiles all changed source files and than installs -# them all in one 'aal' command. - -# Many of the string functions in this directory are not used, because the -# have fast assembly implementations. - -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE -D__USG - -LIBRARIES = libc -libc_OBJECTS = \ - abort.o \ - abs.o \ - asctime.o \ - assert.o \ - atexit.o \ - atof.o \ - atoi.o \ - atol.o \ - bsearch.o \ - calloc.o \ - chartab.o \ - clock.o \ - ctime.o \ - difftime.o \ - div.o \ - errlist.o \ - exit.o \ - ext_comp.o \ - getenv.o \ - gmtime.o \ - isalnum.o \ - isalpha.o \ - isascii.o \ - iscntrl.o \ - isdigit.o \ - isgraph.o \ - islower.o \ - isprint.o \ - ispunct.o \ - isspace.o \ - isupper.o \ - isxdigit.o \ - labs.o \ - ldiv.o \ - localeconv.o \ - localtime.o \ - malloc.o \ - mblen.o \ - mbstowcs.o \ - mbtowc.o \ - misc.o \ - mktime.o \ - qsort.o \ - raise.o \ - rand.o \ - setlocale.o \ - sigmisc.o \ - signal.o \ - strcoll.o \ - strcspn.o \ - strerror.o \ - strftime.o \ - strpbrk.o \ - strspn.o \ - strstr.o \ - strtok.o \ - strtol.o \ - strxfrm.o \ - system.o \ - tolower.o \ - toupper.o \ - tzset.o \ - wcstombs.o \ - wctomb.o - -include ../Makefile.inc +all-ack: +all-gnu: + +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./ansi ../obj-ack/ ../obj-gnu + +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./ansi ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +depend: depend-ack +all-ack: ../obj-ack//libc.a + +../obj-ack//libc.a: ../obj-ack//libc.a(abort.o) +../obj-ack//libc.a: ../obj-ack//libc.a(abs.o) +../obj-ack//libc.a: ../obj-ack//libc.a(asctime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(assert.o) +../obj-ack//libc.a: ../obj-ack//libc.a(atexit.o) +../obj-ack//libc.a: ../obj-ack//libc.a(atof.o) +../obj-ack//libc.a: ../obj-ack//libc.a(atoi.o) +../obj-ack//libc.a: ../obj-ack//libc.a(atol.o) +../obj-ack//libc.a: ../obj-ack//libc.a(bsearch.o) +../obj-ack//libc.a: ../obj-ack//libc.a(calloc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(chartab.o) +../obj-ack//libc.a: ../obj-ack//libc.a(clock.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ctime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(difftime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(div.o) +../obj-ack//libc.a: ../obj-ack//libc.a(errlist.o) +../obj-ack//libc.a: ../obj-ack//libc.a(exit.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ext_comp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getenv.o) +../obj-ack//libc.a: ../obj-ack//libc.a(gmtime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isalnum.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isalpha.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isascii.o) +../obj-ack//libc.a: ../obj-ack//libc.a(iscntrl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isdigit.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isgraph.o) +../obj-ack//libc.a: ../obj-ack//libc.a(islower.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isprint.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ispunct.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isspace.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isupper.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isxdigit.o) +../obj-ack//libc.a: ../obj-ack//libc.a(labs.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ldiv.o) +../obj-ack//libc.a: ../obj-ack//libc.a(localeconv.o) +../obj-ack//libc.a: ../obj-ack//libc.a(localtime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(malloc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mblen.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mbstowcs.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mbtowc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(misc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mktime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(qsort.o) +../obj-ack//libc.a: ../obj-ack//libc.a(raise.o) +../obj-ack//libc.a: ../obj-ack//libc.a(rand.o) +../obj-ack//libc.a: ../obj-ack//libc.a(setlocale.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigmisc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(signal.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strcoll.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strcspn.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strerror.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strftime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strpbrk.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strspn.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strstr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strtok.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strtol.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strxfrm.o) +../obj-ack//libc.a: ../obj-ack//libc.a(system.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tolower.o) +../obj-ack//libc.a: ../obj-ack//libc.a(toupper.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tzset.o) +../obj-ack//libc.a: ../obj-ack//libc.a(wcstombs.o) +../obj-ack//libc.a: ../obj-ack//libc.a(wctomb.o) + +../obj-ack//libc.a: + ar cr ../obj-ack//libc.a ../obj-ack//./ansi/*.o + rm ../obj-ack//./ansi/*.o + +../obj-ack//libc.a(abort.o): abort.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/abort.o abort.c +../obj-ack//libc.a(abs.o): abs.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/abs.o abs.c +../obj-ack//libc.a(asctime.o): asctime.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/asctime.o asctime.c +../obj-ack//libc.a(assert.o): assert.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/assert.o assert.c +../obj-ack//libc.a(atexit.o): atexit.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/atexit.o atexit.c +../obj-ack//libc.a(atof.o): atof.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/atof.o atof.c +../obj-ack//libc.a(atoi.o): atoi.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/atoi.o atoi.c +../obj-ack//libc.a(atol.o): atol.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/atol.o atol.c +../obj-ack//libc.a(bsearch.o): bsearch.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/bsearch.o bsearch.c +../obj-ack//libc.a(calloc.o): calloc.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/calloc.o calloc.c +../obj-ack//libc.a(chartab.o): chartab.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/chartab.o chartab.c +../obj-ack//libc.a(clock.o): clock.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/clock.o clock.c +../obj-ack//libc.a(ctime.o): ctime.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/ctime.o ctime.c +../obj-ack//libc.a(difftime.o): difftime.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/difftime.o difftime.c +../obj-ack//libc.a(div.o): div.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/div.o div.c +../obj-ack//libc.a(errlist.o): errlist.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/errlist.o errlist.c +../obj-ack//libc.a(exit.o): exit.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/exit.o exit.c +../obj-ack//libc.a(ext_comp.o): ext_comp.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/ext_comp.o ext_comp.c +../obj-ack//libc.a(getenv.o): getenv.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/getenv.o getenv.c +../obj-ack//libc.a(gmtime.o): gmtime.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/gmtime.o gmtime.c +../obj-ack//libc.a(isalnum.o): isalnum.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/isalnum.o isalnum.c +../obj-ack//libc.a(isalpha.o): isalpha.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/isalpha.o isalpha.c +../obj-ack//libc.a(isascii.o): isascii.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/isascii.o isascii.c +../obj-ack//libc.a(iscntrl.o): iscntrl.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/iscntrl.o iscntrl.c +../obj-ack//libc.a(isdigit.o): isdigit.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/isdigit.o isdigit.c +../obj-ack//libc.a(isgraph.o): isgraph.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/isgraph.o isgraph.c +../obj-ack//libc.a(islower.o): islower.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/islower.o islower.c +../obj-ack//libc.a(isprint.o): isprint.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/isprint.o isprint.c +../obj-ack//libc.a(ispunct.o): ispunct.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/ispunct.o ispunct.c +../obj-ack//libc.a(isspace.o): isspace.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/isspace.o isspace.c +../obj-ack//libc.a(isupper.o): isupper.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/isupper.o isupper.c +../obj-ack//libc.a(isxdigit.o): isxdigit.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/isxdigit.o isxdigit.c +../obj-ack//libc.a(labs.o): labs.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/labs.o labs.c +../obj-ack//libc.a(ldiv.o): ldiv.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/ldiv.o ldiv.c +../obj-ack//libc.a(localeconv.o): localeconv.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/localeconv.o localeconv.c +../obj-ack//libc.a(localtime.o): localtime.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/localtime.o localtime.c +../obj-ack//libc.a(malloc.o): malloc.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/malloc.o malloc.c +../obj-ack//libc.a(mblen.o): mblen.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/mblen.o mblen.c +../obj-ack//libc.a(mbstowcs.o): mbstowcs.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/mbstowcs.o mbstowcs.c +../obj-ack//libc.a(mbtowc.o): mbtowc.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/mbtowc.o mbtowc.c +../obj-ack//libc.a(misc.o): misc.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/misc.o misc.c +../obj-ack//libc.a(mktime.o): mktime.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/mktime.o mktime.c +../obj-ack//libc.a(qsort.o): qsort.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/qsort.o qsort.c +../obj-ack//libc.a(raise.o): raise.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/raise.o raise.c +../obj-ack//libc.a(rand.o): rand.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/rand.o rand.c +../obj-ack//libc.a(setlocale.o): setlocale.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/setlocale.o setlocale.c +../obj-ack//libc.a(sigmisc.o): sigmisc.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/sigmisc.o sigmisc.c +../obj-ack//libc.a(signal.o): signal.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/signal.o signal.c +../obj-ack//libc.a(strcoll.o): strcoll.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strcoll.o strcoll.c +../obj-ack//libc.a(strcspn.o): strcspn.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strcspn.o strcspn.c +../obj-ack//libc.a(strerror.o): strerror.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strerror.o strerror.c +../obj-ack//libc.a(strftime.o): strftime.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strftime.o strftime.c +../obj-ack//libc.a(strpbrk.o): strpbrk.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strpbrk.o strpbrk.c +../obj-ack//libc.a(strspn.o): strspn.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strspn.o strspn.c +../obj-ack//libc.a(strstr.o): strstr.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strstr.o strstr.c +../obj-ack//libc.a(strtok.o): strtok.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strtok.o strtok.c +../obj-ack//libc.a(strtol.o): strtol.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strtol.o strtol.c +../obj-ack//libc.a(strxfrm.o): strxfrm.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/strxfrm.o strxfrm.c +../obj-ack//libc.a(system.o): system.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/system.o system.c +../obj-ack//libc.a(tolower.o): tolower.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/tolower.o tolower.c +../obj-ack//libc.a(toupper.o): toupper.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/toupper.o toupper.c +../obj-ack//libc.a(tzset.o): tzset.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/tzset.o tzset.c +../obj-ack//libc.a(wcstombs.o): wcstombs.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/wcstombs.o wcstombs.c +../obj-ack//libc.a(wctomb.o): wctomb.c + cc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-ack//./ansi/wctomb.o wctomb.c + +all-gnu: ../obj-gnu/libc.a + +../obj-gnu/libc.a: ../obj-gnu/./ansi/abort.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/abs.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/asctime.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/assert.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/atexit.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/atof.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/atoi.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/atol.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/bsearch.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/calloc.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/chartab.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/clock.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/ctime.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/difftime.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/div.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/errlist.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/exit.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/ext_comp.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/getenv.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/gmtime.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/isalnum.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/isalpha.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/isascii.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/iscntrl.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/isdigit.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/isgraph.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/islower.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/isprint.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/ispunct.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/isspace.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/isupper.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/isxdigit.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/labs.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/ldiv.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/localeconv.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/localtime.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/malloc.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/mblen.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/mbstowcs.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/mbtowc.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/misc.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/mktime.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/qsort.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/raise.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/rand.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/setlocale.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/sigmisc.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/signal.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strcoll.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strcspn.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strerror.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strftime.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strpbrk.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strspn.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strstr.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strtok.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strtol.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/strxfrm.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/system.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/tolower.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/toupper.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/tzset.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/wcstombs.o +../obj-gnu/libc.a: ../obj-gnu/./ansi/wctomb.o + +../obj-gnu/libc.a: + gar cr ../obj-gnu/libc.a $? + +../obj-gnu/./ansi/abort.o: abort.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/abort.o abort.c + +../obj-gnu/./ansi/abs.o: abs.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/abs.o abs.c + +../obj-gnu/./ansi/asctime.o: asctime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/asctime.o asctime.c + +../obj-gnu/./ansi/assert.o: assert.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/assert.o assert.c + +../obj-gnu/./ansi/atexit.o: atexit.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/atexit.o atexit.c + +../obj-gnu/./ansi/atof.o: atof.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/atof.o atof.c + +../obj-gnu/./ansi/atoi.o: atoi.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/atoi.o atoi.c + +../obj-gnu/./ansi/atol.o: atol.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/atol.o atol.c + +../obj-gnu/./ansi/bsearch.o: bsearch.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/bsearch.o bsearch.c + +../obj-gnu/./ansi/calloc.o: calloc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/calloc.o calloc.c + +../obj-gnu/./ansi/chartab.o: chartab.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/chartab.o chartab.c + +../obj-gnu/./ansi/clock.o: clock.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/clock.o clock.c + +../obj-gnu/./ansi/ctime.o: ctime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/ctime.o ctime.c + +../obj-gnu/./ansi/difftime.o: difftime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/difftime.o difftime.c + +../obj-gnu/./ansi/div.o: div.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/div.o div.c + +../obj-gnu/./ansi/errlist.o: errlist.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/errlist.o errlist.c + +../obj-gnu/./ansi/exit.o: exit.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/exit.o exit.c + +../obj-gnu/./ansi/ext_comp.o: ext_comp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/ext_comp.o ext_comp.c + +../obj-gnu/./ansi/getenv.o: getenv.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/getenv.o getenv.c + +../obj-gnu/./ansi/gmtime.o: gmtime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/gmtime.o gmtime.c + +../obj-gnu/./ansi/isalnum.o: isalnum.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/isalnum.o isalnum.c + +../obj-gnu/./ansi/isalpha.o: isalpha.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/isalpha.o isalpha.c + +../obj-gnu/./ansi/isascii.o: isascii.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/isascii.o isascii.c + +../obj-gnu/./ansi/iscntrl.o: iscntrl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/iscntrl.o iscntrl.c + +../obj-gnu/./ansi/isdigit.o: isdigit.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/isdigit.o isdigit.c + +../obj-gnu/./ansi/isgraph.o: isgraph.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/isgraph.o isgraph.c + +../obj-gnu/./ansi/islower.o: islower.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/islower.o islower.c + +../obj-gnu/./ansi/isprint.o: isprint.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/isprint.o isprint.c + +../obj-gnu/./ansi/ispunct.o: ispunct.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/ispunct.o ispunct.c + +../obj-gnu/./ansi/isspace.o: isspace.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/isspace.o isspace.c + +../obj-gnu/./ansi/isupper.o: isupper.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/isupper.o isupper.c + +../obj-gnu/./ansi/isxdigit.o: isxdigit.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/isxdigit.o isxdigit.c + +../obj-gnu/./ansi/labs.o: labs.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/labs.o labs.c + +../obj-gnu/./ansi/ldiv.o: ldiv.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/ldiv.o ldiv.c + +../obj-gnu/./ansi/localeconv.o: localeconv.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/localeconv.o localeconv.c + +../obj-gnu/./ansi/localtime.o: localtime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/localtime.o localtime.c + +../obj-gnu/./ansi/malloc.o: malloc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/malloc.o malloc.c + +../obj-gnu/./ansi/mblen.o: mblen.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/mblen.o mblen.c + +../obj-gnu/./ansi/mbstowcs.o: mbstowcs.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/mbstowcs.o mbstowcs.c + +../obj-gnu/./ansi/mbtowc.o: mbtowc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/mbtowc.o mbtowc.c + +../obj-gnu/./ansi/misc.o: misc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/misc.o misc.c + +../obj-gnu/./ansi/mktime.o: mktime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/mktime.o mktime.c + +../obj-gnu/./ansi/qsort.o: qsort.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/qsort.o qsort.c + +../obj-gnu/./ansi/raise.o: raise.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/raise.o raise.c + +../obj-gnu/./ansi/rand.o: rand.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/rand.o rand.c + +../obj-gnu/./ansi/setlocale.o: setlocale.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/setlocale.o setlocale.c + +../obj-gnu/./ansi/sigmisc.o: sigmisc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/sigmisc.o sigmisc.c + +../obj-gnu/./ansi/signal.o: signal.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/signal.o signal.c + +../obj-gnu/./ansi/strcoll.o: strcoll.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strcoll.o strcoll.c + +../obj-gnu/./ansi/strcspn.o: strcspn.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strcspn.o strcspn.c + +../obj-gnu/./ansi/strerror.o: strerror.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strerror.o strerror.c + +../obj-gnu/./ansi/strftime.o: strftime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strftime.o strftime.c + +../obj-gnu/./ansi/strpbrk.o: strpbrk.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strpbrk.o strpbrk.c + +../obj-gnu/./ansi/strspn.o: strspn.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strspn.o strspn.c + +../obj-gnu/./ansi/strstr.o: strstr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strstr.o strstr.c + +../obj-gnu/./ansi/strtok.o: strtok.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strtok.o strtok.c + +../obj-gnu/./ansi/strtol.o: strtol.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strtol.o strtol.c + +../obj-gnu/./ansi/strxfrm.o: strxfrm.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/strxfrm.o strxfrm.c + +../obj-gnu/./ansi/system.o: system.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/system.o system.c + +../obj-gnu/./ansi/tolower.o: tolower.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/tolower.o tolower.c + +../obj-gnu/./ansi/toupper.o: toupper.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/toupper.o toupper.c + +../obj-gnu/./ansi/tzset.o: tzset.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/tzset.o tzset.c + +../obj-gnu/./ansi/wcstombs.o: wcstombs.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/wcstombs.o wcstombs.c + +../obj-gnu/./ansi/wctomb.o: wctomb.c + gcc -O -D_MINIX -D_POSIX_SOURCE -D__USG -c -o ../obj-gnu/./ansi/wctomb.o wctomb.c + + + + +clean:: + rm -f ../obj-ack//./ansi/* + rm -f ../obj-gnu/./ansi/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/ansi: Makefile.in diff -ur oldsrc/lib/ansi/errlist.c src/lib/ansi/errlist.c --- oldsrc/lib/ansi/errlist.c 2005-07-27 15:53:05.000000000 +0400 +++ src/lib/ansi/errlist.c 2006-02-17 16:44:48.000000000 +0300 @@ -2,7 +2,7 @@ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands. * See the copyright notice in the ACK home directory, in the file "Copyright". */ -/* $Header: /cvsup/minix/src/lib/ansi/errlist.c,v 1.2 2005/07/27 11:53:05 philip Exp $ */ +/* $Header: /cvsup/minix/src/lib/ansi/errlist.c,v 1.4 2006/02/17 13:44:48 philip Exp $ */ #include @@ -49,7 +49,7 @@ "No locks available", /* ENOLCK */ "Function not implemented", /* ENOSYS */ "Directory not empty", /* ENOTEMPTY */ - unknown, /* 40 */ + "Too many levels of symbolic links", /* ELOOP */ unknown, /* 41 */ unknown, /* 42 */ unknown, /* 43 */ @@ -82,6 +82,9 @@ "Operation in progress", /* EINPROGRESS */ "Address not available", /* EADDRNOTAVAIL */ "Connection already in progress", /* EALREADY */ + "Message too long", /* EMSGSIZE */ + "Socket operation on non-socket", /* ENOTSOCK */ + "Protocol not available", /* ENOPROTOOPT */ }; const int _sys_nerr = sizeof(_sys_errlist) / sizeof(_sys_errlist[0]); Only in src/lib/curses: .depend-ack Only in src/lib/curses: .depend-gnu Only in src/lib/curses: Makedepend-ack Only in src/lib/curses: Makedepend-gnu diff -ur oldsrc/lib/curses/Makefile src/lib/curses/Makefile --- oldsrc/lib/curses/Makefile 2005-10-21 15:19:31.000000000 +0400 +++ src/lib/curses/Makefile 2006-02-20 19:10:39.000000000 +0300 @@ -1,47 +1,311 @@ -# Makefile for lib/curses. +#Generated from ./curses/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libcurses +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./curses ../obj-ack/ ../obj-gnu -libcurses_OBJECTS = \ - beep.o \ - charpick.o \ - curs_set.o \ - cursesio.o \ - endwin.o \ - flash.o \ - initscr.o \ - longname.o \ - move.o \ - mvcursor.o \ - newwin.o \ - options.o \ - overlay.o \ - prntscan.o \ - refresh.o \ - scrreg.o \ - setterm.o \ - tabsize.o \ - termmisc.o \ - unctrl.o \ - update.o \ - waddch.o \ - waddstr.o \ - wbox.o \ - wclear.o \ - wclrtobot.o \ - wclrtoeol.o \ - wdelch.o \ - wdeleteln.o \ - werase.o \ - wgetch.o \ - wgetstr.o \ - windel.o \ - winmove.o \ - winsch.o \ - winscrol.o \ - winsertln.o \ - wintouch.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./curses ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libcurses.a + +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(beep.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(charpick.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(curs_set.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(cursesio.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(endwin.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(flash.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(initscr.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(longname.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(move.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(mvcursor.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(newwin.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(options.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(overlay.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(prntscan.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(refresh.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(scrreg.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(setterm.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(tabsize.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(termmisc.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(unctrl.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(update.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(waddch.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(waddstr.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(wbox.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(wclear.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(wclrtobot.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(wclrtoeol.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(wdelch.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(wdeleteln.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(werase.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(wgetch.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(wgetstr.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(windel.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(winmove.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(winsch.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(winscrol.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(winsertln.o) +../obj-ack//libcurses.a: ../obj-ack//libcurses.a(wintouch.o) + +../obj-ack//libcurses.a: + ar cr ../obj-ack//libcurses.a ../obj-ack//./curses/*.o + rm ../obj-ack//./curses/*.o + +../obj-ack//libcurses.a(beep.o): beep.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/beep.o beep.c +../obj-ack//libcurses.a(charpick.o): charpick.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/charpick.o charpick.c +../obj-ack//libcurses.a(curs_set.o): curs_set.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/curs_set.o curs_set.c +../obj-ack//libcurses.a(cursesio.o): cursesio.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/cursesio.o cursesio.c +../obj-ack//libcurses.a(endwin.o): endwin.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/endwin.o endwin.c +../obj-ack//libcurses.a(flash.o): flash.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/flash.o flash.c +../obj-ack//libcurses.a(initscr.o): initscr.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/initscr.o initscr.c +../obj-ack//libcurses.a(longname.o): longname.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/longname.o longname.c +../obj-ack//libcurses.a(move.o): move.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/move.o move.c +../obj-ack//libcurses.a(mvcursor.o): mvcursor.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/mvcursor.o mvcursor.c +../obj-ack//libcurses.a(newwin.o): newwin.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/newwin.o newwin.c +../obj-ack//libcurses.a(options.o): options.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/options.o options.c +../obj-ack//libcurses.a(overlay.o): overlay.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/overlay.o overlay.c +../obj-ack//libcurses.a(prntscan.o): prntscan.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/prntscan.o prntscan.c +../obj-ack//libcurses.a(refresh.o): refresh.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/refresh.o refresh.c +../obj-ack//libcurses.a(scrreg.o): scrreg.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/scrreg.o scrreg.c +../obj-ack//libcurses.a(setterm.o): setterm.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/setterm.o setterm.c +../obj-ack//libcurses.a(tabsize.o): tabsize.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/tabsize.o tabsize.c +../obj-ack//libcurses.a(termmisc.o): termmisc.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/termmisc.o termmisc.c +../obj-ack//libcurses.a(unctrl.o): unctrl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/unctrl.o unctrl.c +../obj-ack//libcurses.a(update.o): update.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/update.o update.c +../obj-ack//libcurses.a(waddch.o): waddch.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/waddch.o waddch.c +../obj-ack//libcurses.a(waddstr.o): waddstr.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/waddstr.o waddstr.c +../obj-ack//libcurses.a(wbox.o): wbox.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/wbox.o wbox.c +../obj-ack//libcurses.a(wclear.o): wclear.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/wclear.o wclear.c +../obj-ack//libcurses.a(wclrtobot.o): wclrtobot.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/wclrtobot.o wclrtobot.c +../obj-ack//libcurses.a(wclrtoeol.o): wclrtoeol.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/wclrtoeol.o wclrtoeol.c +../obj-ack//libcurses.a(wdelch.o): wdelch.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/wdelch.o wdelch.c +../obj-ack//libcurses.a(wdeleteln.o): wdeleteln.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/wdeleteln.o wdeleteln.c +../obj-ack//libcurses.a(werase.o): werase.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/werase.o werase.c +../obj-ack//libcurses.a(wgetch.o): wgetch.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/wgetch.o wgetch.c +../obj-ack//libcurses.a(wgetstr.o): wgetstr.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/wgetstr.o wgetstr.c +../obj-ack//libcurses.a(windel.o): windel.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/windel.o windel.c +../obj-ack//libcurses.a(winmove.o): winmove.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/winmove.o winmove.c +../obj-ack//libcurses.a(winsch.o): winsch.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/winsch.o winsch.c +../obj-ack//libcurses.a(winscrol.o): winscrol.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/winscrol.o winscrol.c +../obj-ack//libcurses.a(winsertln.o): winsertln.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/winsertln.o winsertln.c +../obj-ack//libcurses.a(wintouch.o): wintouch.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./curses/wintouch.o wintouch.c + +all-gnu: ../obj-gnu/libcurses.a + +../obj-gnu/libcurses.a: ../obj-gnu/./curses/beep.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/charpick.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/curs_set.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/cursesio.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/endwin.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/flash.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/initscr.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/longname.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/move.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/mvcursor.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/newwin.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/options.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/overlay.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/prntscan.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/refresh.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/scrreg.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/setterm.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/tabsize.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/termmisc.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/unctrl.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/update.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/waddch.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/waddstr.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/wbox.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/wclear.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/wclrtobot.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/wclrtoeol.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/wdelch.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/wdeleteln.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/werase.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/wgetch.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/wgetstr.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/windel.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/winmove.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/winsch.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/winscrol.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/winsertln.o +../obj-gnu/libcurses.a: ../obj-gnu/./curses/wintouch.o + +../obj-gnu/libcurses.a: + gar cr ../obj-gnu/libcurses.a $? + +../obj-gnu/./curses/beep.o: beep.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/beep.o beep.c + +../obj-gnu/./curses/charpick.o: charpick.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/charpick.o charpick.c + +../obj-gnu/./curses/curs_set.o: curs_set.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/curs_set.o curs_set.c + +../obj-gnu/./curses/cursesio.o: cursesio.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/cursesio.o cursesio.c + +../obj-gnu/./curses/endwin.o: endwin.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/endwin.o endwin.c + +../obj-gnu/./curses/flash.o: flash.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/flash.o flash.c + +../obj-gnu/./curses/initscr.o: initscr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/initscr.o initscr.c + +../obj-gnu/./curses/longname.o: longname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/longname.o longname.c + +../obj-gnu/./curses/move.o: move.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/move.o move.c + +../obj-gnu/./curses/mvcursor.o: mvcursor.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/mvcursor.o mvcursor.c + +../obj-gnu/./curses/newwin.o: newwin.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/newwin.o newwin.c + +../obj-gnu/./curses/options.o: options.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/options.o options.c + +../obj-gnu/./curses/overlay.o: overlay.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/overlay.o overlay.c + +../obj-gnu/./curses/prntscan.o: prntscan.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/prntscan.o prntscan.c + +../obj-gnu/./curses/refresh.o: refresh.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/refresh.o refresh.c + +../obj-gnu/./curses/scrreg.o: scrreg.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/scrreg.o scrreg.c + +../obj-gnu/./curses/setterm.o: setterm.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/setterm.o setterm.c + +../obj-gnu/./curses/tabsize.o: tabsize.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/tabsize.o tabsize.c + +../obj-gnu/./curses/termmisc.o: termmisc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/termmisc.o termmisc.c + +../obj-gnu/./curses/unctrl.o: unctrl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/unctrl.o unctrl.c + +../obj-gnu/./curses/update.o: update.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/update.o update.c + +../obj-gnu/./curses/waddch.o: waddch.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/waddch.o waddch.c + +../obj-gnu/./curses/waddstr.o: waddstr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/waddstr.o waddstr.c + +../obj-gnu/./curses/wbox.o: wbox.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/wbox.o wbox.c + +../obj-gnu/./curses/wclear.o: wclear.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/wclear.o wclear.c + +../obj-gnu/./curses/wclrtobot.o: wclrtobot.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/wclrtobot.o wclrtobot.c + +../obj-gnu/./curses/wclrtoeol.o: wclrtoeol.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/wclrtoeol.o wclrtoeol.c + +../obj-gnu/./curses/wdelch.o: wdelch.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/wdelch.o wdelch.c + +../obj-gnu/./curses/wdeleteln.o: wdeleteln.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/wdeleteln.o wdeleteln.c + +../obj-gnu/./curses/werase.o: werase.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/werase.o werase.c + +../obj-gnu/./curses/wgetch.o: wgetch.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/wgetch.o wgetch.c + +../obj-gnu/./curses/wgetstr.o: wgetstr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/wgetstr.o wgetstr.c + +../obj-gnu/./curses/windel.o: windel.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/windel.o windel.c + +../obj-gnu/./curses/winmove.o: winmove.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/winmove.o winmove.c + +../obj-gnu/./curses/winsch.o: winsch.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/winsch.o winsch.c + +../obj-gnu/./curses/winscrol.o: winscrol.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/winscrol.o winscrol.c + +../obj-gnu/./curses/winsertln.o: winsertln.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/winsertln.o winsertln.c + +../obj-gnu/./curses/wintouch.o: wintouch.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./curses/wintouch.o wintouch.c + + + + +clean:: + rm -f ../obj-ack//./curses/* + rm -f ../obj-gnu/./curses/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/curses: Makefile.in Only in src/lib/dummy: .depend-ack Only in src/lib/dummy: .depend-gnu Only in src/lib/dummy: Makedepend-ack Only in src/lib/dummy: Makedepend-gnu diff -ur oldsrc/lib/dummy/Makefile src/lib/dummy/Makefile --- oldsrc/lib/dummy/Makefile 2005-10-21 15:19:32.000000000 +0400 +++ src/lib/dummy/Makefile 2006-02-20 19:10:40.000000000 +0300 @@ -1,13 +1,52 @@ -# Makefile for lib/dummy. +#Generated from ./dummy/Makefile.in +all: all-ack -# Make a dummy libm library so that -lm works. +all-ack: +all-gnu: +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./dummy ../obj-ack/ ../obj-gnu -LIBRARIES=libm +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./dummy ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -libm_OBJECTS=dummy.o +depend: depend-ack +all-ack: ../obj-ack//libm.a -include ../Makefile.inc +../obj-ack//libm.a: ../obj-ack//libm.a(dummy.o) -dummy.c: - echo "int __dummy__;" > $@ +../obj-ack//libm.a: + ar cr ../obj-ack//libm.a ../obj-ack//./dummy/*.o + rm ../obj-ack//./dummy/*.o + +../obj-ack//libm.a(dummy.o): dummy.c + cc -c -o ../obj-ack//./dummy/dummy.o dummy.c + +all-gnu: ../obj-gnu/libm.a + +../obj-gnu/libm.a: ../obj-gnu/./dummy/dummy.o + +../obj-gnu/libm.a: + gar cr ../obj-gnu/libm.a $? + +../obj-gnu/./dummy/dummy.o: dummy.c + gcc -c -o ../obj-gnu/./dummy/dummy.o dummy.c + + + + +clean:: + rm -f ../obj-ack//./dummy/* + rm -f ../obj-gnu/./dummy/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/dummy: Makefile.ack Only in oldsrc/lib/dummy: Makefile.gnu Only in src/lib/dummy: Makefile.in Only in src/lib/editline: .depend-ack Only in src/lib/editline: .depend-gnu Only in src/lib/editline: Makedepend-ack Only in src/lib/editline: Makedepend-gnu diff -ur oldsrc/lib/editline/Makefile src/lib/editline/Makefile --- oldsrc/lib/editline/Makefile 2005-10-21 15:19:32.000000000 +0400 +++ src/lib/editline/Makefile 2006-02-20 19:10:41.000000000 +0300 @@ -1,43 +1,66 @@ -## $Revision: 1.2 $ -## -## Unix makefile for editline library. -## - - -## Set your options: -## -DANSI_ARROWS ANSI arrows keys work like emacs. -## -DHAVE_STDLIB Have . -## -DHAVE_TCGETATTR Have , . -## -DHAVE_TERMIO Have "struct termio" and -## (If neither of above two, we use and BSD ioctl's) -## -DHIDE Make static functions static (non debug). -## -DHIST_SIZE=n History size. -## -DNEED_STRDUP Don't have . -## -DUNIQUE_HISTORY Don't save command if same as last one. -## -DUSE_DIRENT Use , not ? -## -DUSE_TERMCAP Use the termcap library for terminal size -## see LDFLAGS, below, if you set this. -## -DNEED_PERROR Don't have (used in testit) -DEFS = -DANSI_ARROWS -DHAVE_STDLIB -DHAVE_TCGETATTR -DHIDE -DUSE_DIRENT \ - -DHIST_SIZE=100 -DUSE_TERMCAP -DSYS_UNIX -#-DNEED_STRDUP - -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE $(DEFS) -wo -CC1 = $(CC) $(CFLAGS) -c - -## If you have -DUSE_TERMCAP, set this as appropriate: -#LDFLAGS = -ltermlib -#LDFLAGS = -ltermcap - -## End of configuration. - -SOURCES = editline.c complete.c sysunix.c -#LIBRARY = ../libedit.a -LIBRARIES = libedit -#OBJECTS = editline.o complete.o sysunix.o -libedit_OBJECTS = editline.o complete.o sysunix.o -SHARFILES = README Makefile editline.3 editline.h unix.h editline.c \ +#Generated from ./editline/Makefile.in +all: all-ack -include ../Makefile.inc +all-ack: +all-gnu: -$(call ADDDEPENDENCIES,$(libedit_OBJECTS),editline.h) +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./editline ../obj-ack/ ../obj-gnu + +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./editline ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +depend: depend-ack +all-ack: ../obj-ack//libedit.a + +../obj-ack//libedit.a: ../obj-ack//libedit.a(editline.o) +../obj-ack//libedit.a: ../obj-ack//libedit.a(complete.o) +../obj-ack//libedit.a: ../obj-ack//libedit.a(sysunix.o) + +../obj-ack//libedit.a: + ar cr ../obj-ack//libedit.a ../obj-ack//./editline/*.o + rm ../obj-ack//./editline/*.o + +../obj-ack//libedit.a(editline.o): editline.c + cc -O -D_MINIX -D_POSIX_SOURCE -DANSI_ARROWS -DHAVE_STDLIB -DHAVE_TCGETATTR -DHIDE -DUSE_DIRENT -DHIST_SIZE=100 -DUSE_TERMCAP -DSYS_UNIX -wo -c -o ../obj-ack//./editline/editline.o editline.c +../obj-ack//libedit.a(complete.o): complete.c + cc -O -D_MINIX -D_POSIX_SOURCE -DANSI_ARROWS -DHAVE_STDLIB -DHAVE_TCGETATTR -DHIDE -DUSE_DIRENT -DHIST_SIZE=100 -DUSE_TERMCAP -DSYS_UNIX -wo -c -o ../obj-ack//./editline/complete.o complete.c +../obj-ack//libedit.a(sysunix.o): sysunix.c + cc -O -D_MINIX -D_POSIX_SOURCE -DANSI_ARROWS -DHAVE_STDLIB -DHAVE_TCGETATTR -DHIDE -DUSE_DIRENT -DHIST_SIZE=100 -DUSE_TERMCAP -DSYS_UNIX -wo -c -o ../obj-ack//./editline/sysunix.o sysunix.c + +all-gnu: ../obj-gnu/libedit.a + +../obj-gnu/libedit.a: ../obj-gnu/./editline/editline.o +../obj-gnu/libedit.a: ../obj-gnu/./editline/complete.o +../obj-gnu/libedit.a: ../obj-gnu/./editline/sysunix.o + +../obj-gnu/libedit.a: + gar cr ../obj-gnu/libedit.a $? + +../obj-gnu/./editline/editline.o: editline.c + gcc -O -D_MINIX -D_POSIX_SOURCE -DANSI_ARROWS -DHAVE_STDLIB -DHAVE_TCGETATTR -DHIDE -DUSE_DIRENT -DHIST_SIZE=100 -DUSE_TERMCAP -DSYS_UNIX -wo -c -o ../obj-gnu/./editline/editline.o editline.c + +../obj-gnu/./editline/complete.o: complete.c + gcc -O -D_MINIX -D_POSIX_SOURCE -DANSI_ARROWS -DHAVE_STDLIB -DHAVE_TCGETATTR -DHIDE -DUSE_DIRENT -DHIST_SIZE=100 -DUSE_TERMCAP -DSYS_UNIX -wo -c -o ../obj-gnu/./editline/complete.o complete.c + +../obj-gnu/./editline/sysunix.o: sysunix.c + gcc -O -D_MINIX -D_POSIX_SOURCE -DANSI_ARROWS -DHAVE_STDLIB -DHAVE_TCGETATTR -DHIDE -DUSE_DIRENT -DHIST_SIZE=100 -DUSE_TERMCAP -DSYS_UNIX -wo -c -o ../obj-gnu/./editline/sysunix.o sysunix.c + + + + +clean:: + rm -f ../obj-ack//./editline/* + rm -f ../obj-gnu/./editline/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/editline: Makefile.in Only in src/lib/end: .depend-ack Only in src/lib/end: .depend-gnu Only in src/lib/end: Makedepend-ack Only in src/lib/end: Makedepend-gnu diff -ur oldsrc/lib/end/Makefile src/lib/end/Makefile --- oldsrc/lib/end/Makefile 2005-10-21 15:19:32.000000000 +0400 +++ src/lib/end/Makefile 2006-02-20 19:10:42.000000000 +0300 @@ -1,11 +1,77 @@ -# Makefile for lib/end. +#Generated from ./end/Makefile.in +all: all-ack -LIBRARIES = end +all-ack: +all-gnu: -end_OBJECTS = \ - edata.o \ - em_end.o \ - end.o \ - etext.o \ +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./end ../obj-ack/ ../obj-gnu -include ../Makefile.inc +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./end ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +depend: depend-ack +all-ack: ../obj-ack//end.a + +../obj-ack//end.a: ../obj-ack//end.a(edata.o) +../obj-ack//end.a: ../obj-ack//end.a(em_end.o) +../obj-ack//end.a: ../obj-ack//end.a(end.o) +../obj-ack//end.a: ../obj-ack//end.a(etext.o) + +../obj-ack//end.a: + ar cr ../obj-ack//end.a ../obj-ack//./end/*.o + rm ../obj-ack//./end/*.o + +../obj-ack//end.a(edata.o): edata.s + cc -c -o ../obj-ack//./end/edata.o edata.s +../obj-ack//end.a(em_end.o): em_end.s + cc -c -o ../obj-ack//./end/em_end.o em_end.s +../obj-ack//end.a(end.o): end.s + cc -c -o ../obj-ack//./end/end.o end.s +../obj-ack//end.a(etext.o): etext.s + cc -c -o ../obj-ack//./end/etext.o etext.s + +all-gnu: ../obj-gnu/end.a + +../obj-gnu/end.a: ../obj-gnu/./end/edata.o +../obj-gnu/end.a: ../obj-gnu/./end/em_end.o +../obj-gnu/end.a: ../obj-gnu/./end/end.o +../obj-gnu/end.a: ../obj-gnu/./end/etext.o + +../obj-gnu/end.a: + gar cr ../obj-gnu/end.a $? + +../obj-gnu/./end/edata.o: edata.s + gcc -E -x assembler-with-cpp -I. edata.s | asmconv -mi386 ack gnu > ../obj-gnu/./end/edata.s.gnu || true + gas -o ../obj-gnu/./end/edata.o ../obj-gnu/./end/edata.s.gnu + +../obj-gnu/./end/em_end.o: em_end.s + gcc -E -x assembler-with-cpp -I. em_end.s | asmconv -mi386 ack gnu > ../obj-gnu/./end/em_end.s.gnu || true + gas -o ../obj-gnu/./end/em_end.o ../obj-gnu/./end/em_end.s.gnu + +../obj-gnu/./end/end.o: end.s + gcc -E -x assembler-with-cpp -I. end.s | asmconv -mi386 ack gnu > ../obj-gnu/./end/end.s.gnu || true + gas -o ../obj-gnu/./end/end.o ../obj-gnu/./end/end.s.gnu + +../obj-gnu/./end/etext.o: etext.s + gcc -E -x assembler-with-cpp -I. etext.s | asmconv -mi386 ack gnu > ../obj-gnu/./end/etext.s.gnu || true + gas -o ../obj-gnu/./end/etext.o ../obj-gnu/./end/etext.s.gnu + + + + +clean:: + rm -f ../obj-ack//./end/* + rm -f ../obj-gnu/./end/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/end: Makefile.in Only in oldsrc/lib/float: Makefile Only in oldsrc/lib/fphook: Makefile Only in src/lib: generate.sh Only in src/lib/gnu: .depend-ack Only in src/lib/gnu: .depend-gnu Only in src/lib/gnu: Makedepend-ack Only in src/lib/gnu: Makedepend-gnu diff -ur oldsrc/lib/gnu/Makefile src/lib/gnu/Makefile --- oldsrc/lib/gnu/Makefile 2005-10-10 19:28:15.000000000 +0400 +++ src/lib/gnu/Makefile 2006-02-20 19:11:12.000000000 +0300 @@ -1,7 +1,55 @@ +#Generated from ./gnu/Makefile.in +all: all-ack -SUBDIRS = \ - end \ - ieee_float \ - rts \ +all-ack: +all-gnu: -include ../Makefile.inc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./gnu ../obj-ack/ ../obj-gnu + +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./gnu ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +all-ack: makefiles + cd end && $(MAKE) $@ + cd ieee_float && $(MAKE) $@ + cd rts && $(MAKE) $@ + +all-gnu: makefiles + mkdir -p ../obj-gnu/./gnu/end + cd end && $(MAKE) $@ + mkdir -p ../obj-gnu/./gnu/ieee_float + cd ieee_float && $(MAKE) $@ + mkdir -p ../obj-gnu/./gnu/rts + cd rts && $(MAKE) $@ + +clean depend depend-ack depend-gnu:: makefiles + cd end && $(MAKE) $@ + cd ieee_float && $(MAKE) $@ + cd rts && $(MAKE) $@ + +makefiles: end/Makefile +makefiles: ieee_float/Makefile +makefiles: rts/Makefile + +end/Makefile: end/Makefile.in + cd end && sh ../../generate.sh ./gnu/end ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +ieee_float/Makefile: ieee_float/Makefile.in + cd ieee_float && sh ../../generate.sh ./gnu/ieee_float ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +rts/Makefile: rts/Makefile.in + cd rts && sh ../../generate.sh ./gnu/rts ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles + +clean:: + rm -f ../obj-gnu/./gnu/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/gnu: Makefile.gnu Only in src/lib/gnu: Makefile.in Only in src/lib/gnu/end: .depend-ack Only in src/lib/gnu/end: .depend-gnu Only in src/lib/gnu/end: Makedepend-ack Only in src/lib/gnu/end: Makedepend-gnu diff -ur oldsrc/lib/gnu/end/Makefile src/lib/gnu/end/Makefile --- oldsrc/lib/gnu/end/Makefile 2005-10-10 19:28:15.000000000 +0400 +++ src/lib/gnu/end/Makefile 2006-02-20 19:11:13.000000000 +0300 @@ -1,7 +1,40 @@ +#Generated from ./gnu/end/Makefile.in +all: all-ack -LIBRARIES = end +all-ack: +all-gnu: -end_OBJECTS = gnu_end.o +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./gnu/end ../../obj-ack/ ../../obj-gnu -include ../../Makefile.gnu.inc +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./gnu/end ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo +depend: depend-ack +all-gnu: ../../obj-gnu/end.a + +../../obj-gnu/end.a: ../../obj-gnu/./gnu/end/gnu_end.o + +../../obj-gnu/end.a: + gar cr ../../obj-gnu/end.a $? + +../../obj-gnu/./gnu/end/gnu_end.o: gnu_end.gs + gas -o ../../obj-gnu/./gnu/end/gnu_end.o gnu_end.gs + + + + +clean:: + rm -f ../../obj-gnu/./gnu/end/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/gnu/end: Makefile.gnu Only in src/lib/gnu/end: Makefile.in Only in src/lib/gnu/ieee_float: .depend-ack Only in src/lib/gnu/ieee_float: .depend-gnu Only in src/lib/gnu/ieee_float: Makedepend-ack Only in src/lib/gnu/ieee_float: Makedepend-gnu diff -ur oldsrc/lib/gnu/ieee_float/Makefile src/lib/gnu/ieee_float/Makefile --- oldsrc/lib/gnu/ieee_float/Makefile 2005-10-10 19:28:15.000000000 +0400 +++ src/lib/gnu/ieee_float/Makefile 2006-02-20 19:11:14.000000000 +0300 @@ -1,14 +1,60 @@ +#Generated from ./gnu/ieee_float/Makefile.in +all: all-ack -CFLAGS = -O -I.. +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./gnu/ieee_float ../../obj-ack/ ../../obj-gnu -libc_OBJECTS = \ - frexp.o \ - isinf.o \ - isnan.o \ - ldexp.o \ - modf.o \ - fphook.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./gnu/ieee_float ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../Makefile.gnu.inc +depend: depend-ack +all-gnu: ../../obj-gnu/libc.a + +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/ieee_float/frexp.o +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/ieee_float/isinf.o +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/ieee_float/isnan.o +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/ieee_float/ldexp.o +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/ieee_float/modf.o +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/ieee_float/fphook.o + +../../obj-gnu/libc.a: + gar cr ../../obj-gnu/libc.a $? + +../../obj-gnu/./gnu/ieee_float/frexp.o: frexp.c + gcc -O -I.. -c -o ../../obj-gnu/./gnu/ieee_float/frexp.o frexp.c + +../../obj-gnu/./gnu/ieee_float/isinf.o: isinf.c + gcc -O -I.. -c -o ../../obj-gnu/./gnu/ieee_float/isinf.o isinf.c + +../../obj-gnu/./gnu/ieee_float/isnan.o: isnan.c + gcc -O -I.. -c -o ../../obj-gnu/./gnu/ieee_float/isnan.o isnan.c + +../../obj-gnu/./gnu/ieee_float/ldexp.o: ldexp.c + gcc -O -I.. -c -o ../../obj-gnu/./gnu/ieee_float/ldexp.o ldexp.c + +../../obj-gnu/./gnu/ieee_float/modf.o: modf.c + gcc -O -I.. -c -o ../../obj-gnu/./gnu/ieee_float/modf.o modf.c + +../../obj-gnu/./gnu/ieee_float/fphook.o: fphook.c + gcc -O -I.. -c -o ../../obj-gnu/./gnu/ieee_float/fphook.o fphook.c + + + + +clean:: + rm -f ../../obj-gnu/./gnu/ieee_float/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/gnu/ieee_float: Makefile.gnu.conv Only in src/lib/gnu/ieee_float: Makefile.in Only in src/lib/gnu/rts: .depend-ack Only in src/lib/gnu/rts: .depend-gnu Only in src/lib/gnu/rts: Makedepend-ack Only in src/lib/gnu/rts: Makedepend-gnu diff -ur oldsrc/lib/gnu/rts/Makefile src/lib/gnu/rts/Makefile --- oldsrc/lib/gnu/rts/Makefile 2005-10-10 19:28:15.000000000 +0400 +++ src/lib/gnu/rts/Makefile 2006-02-20 19:11:15.000000000 +0300 @@ -1,10 +1,52 @@ +#Generated from ./gnu/rts/Makefile.in +all: all-ack -LIBRARIES = libc +all-ack: +all-gnu: -libc_OBJECTS = \ - _longjmp.o \ - _setjmp.o \ - longjmp.o \ - setjmp.o \ +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./gnu/rts ../../obj-ack/ ../../obj-gnu -include ../../Makefile.gnu.inc +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./gnu/rts ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +depend: depend-ack +all-gnu: ../../obj-gnu/libc.a + +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/rts/_longjmp.o +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/rts/_setjmp.o +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/rts/longjmp.o +../../obj-gnu/libc.a: ../../obj-gnu/./gnu/rts/setjmp.o + +../../obj-gnu/libc.a: + gar cr ../../obj-gnu/libc.a $? + +../../obj-gnu/./gnu/rts/_longjmp.o: _longjmp.gs + gas -o ../../obj-gnu/./gnu/rts/_longjmp.o _longjmp.gs + +../../obj-gnu/./gnu/rts/_setjmp.o: _setjmp.gs + gas -o ../../obj-gnu/./gnu/rts/_setjmp.o _setjmp.gs + +../../obj-gnu/./gnu/rts/longjmp.o: longjmp.gs + gas -o ../../obj-gnu/./gnu/rts/longjmp.o longjmp.gs + +../../obj-gnu/./gnu/rts/setjmp.o: setjmp.gs + gas -o ../../obj-gnu/./gnu/rts/setjmp.o setjmp.gs + + + + +clean:: + rm -f ../../obj-gnu/./gnu/rts/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in oldsrc/lib/gnu/rts: Makefile.gnu Only in src/lib/gnu/rts: Makefile.in Only in oldsrc/lib: h Only in src/lib/i386: .depend-ack Only in src/lib/i386: .depend-gnu Only in src/lib/i386: Makedepend-ack Only in src/lib/i386: Makedepend-gnu diff -ur oldsrc/lib/i386/Makefile src/lib/i386/Makefile --- oldsrc/lib/i386/Makefile 2005-10-21 15:19:32.000000000 +0400 +++ src/lib/i386/Makefile 2006-02-20 19:10:54.000000000 +0300 @@ -1,9 +1,67 @@ -# Makefile for lib/i386. +#Generated from ./i386/Makefile.in +all: all-ack -SUBDIRS = \ - int64 \ - misc \ - rts \ - string +all-ack: +all-gnu: -include ../Makefile.inc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./i386 ../obj-ack/ ../obj-gnu + +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./i386 ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +all-ack: makefiles + mkdir -p ../obj-ack//./i386/int64 + cd int64 && $(MAKE) $@ + mkdir -p ../obj-ack//./i386/misc + cd misc && $(MAKE) $@ + mkdir -p ../obj-ack//./i386/rts + cd rts && $(MAKE) $@ + mkdir -p ../obj-ack//./i386/string + cd string && $(MAKE) $@ + +all-gnu: makefiles + mkdir -p ../obj-gnu/./i386/int64 + cd int64 && $(MAKE) $@ + mkdir -p ../obj-gnu/./i386/misc + cd misc && $(MAKE) $@ + mkdir -p ../obj-gnu/./i386/rts + cd rts && $(MAKE) $@ + mkdir -p ../obj-gnu/./i386/string + cd string && $(MAKE) $@ + +clean depend depend-ack depend-gnu:: makefiles + cd int64 && $(MAKE) $@ + cd misc && $(MAKE) $@ + cd rts && $(MAKE) $@ + cd string && $(MAKE) $@ + +makefiles: int64/Makefile +makefiles: misc/Makefile +makefiles: rts/Makefile +makefiles: string/Makefile + +int64/Makefile: int64/Makefile.in + cd int64 && sh ../../generate.sh ./i386/int64 ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +misc/Makefile: misc/Makefile.in + cd misc && sh ../../generate.sh ./i386/misc ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +rts/Makefile: rts/Makefile.in + cd rts && sh ../../generate.sh ./i386/rts ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles +string/Makefile: string/Makefile.in + cd string && sh ../../generate.sh ./i386/string ../../obj-ack/ ../../obj-gnu && $(MAKE) makefiles + +clean:: + rm -f ../obj-ack//./i386/* + rm -f ../obj-gnu/./i386/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/i386: Makefile.in Only in oldsrc/lib/i386/em: Makefile Only in oldsrc/lib/i386/head: Makefile Only in src/lib/i386/int64: .depend-ack Only in src/lib/i386/int64: .depend-gnu Only in src/lib/i386/int64: Makedepend-ack Only in src/lib/i386/int64: Makedepend-gnu diff -ur oldsrc/lib/i386/int64/Makefile src/lib/i386/int64/Makefile --- oldsrc/lib/i386/int64/Makefile 2005-10-21 15:19:32.000000000 +0400 +++ src/lib/i386/int64/Makefile 2006-02-20 19:10:55.000000000 +0300 @@ -1,21 +1,141 @@ -# Makefile for lib/i386/int64. +#Generated from ./i386/int64/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./i386/int64 ../../obj-ack/ ../../obj-gnu -libc_OBJECTS = \ - add64.o \ - add64u.o \ - cmp64.o \ - cv64u.o \ - cvu64.o \ - diff64.o \ - div64u.o \ - ex64.o \ - make64.o \ - mul64u.o \ - sub64.o \ - sub64u.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./i386/int64 ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../Makefile.inc +depend: depend-ack +all-ack: ../../obj-ack//libc.a + +../../obj-ack//libc.a: ../../obj-ack//libc.a(add64.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(add64u.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(cmp64.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(cv64u.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(cvu64.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(diff64.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(div64u.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(ex64.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(make64.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(mul64u.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(sub64.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(sub64u.o) + +../../obj-ack//libc.a: + ar cr ../../obj-ack//libc.a ../../obj-ack//./i386/int64/*.o + rm ../../obj-ack//./i386/int64/*.o + +../../obj-ack//libc.a(add64.o): add64.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/add64.o add64.s +../../obj-ack//libc.a(add64u.o): add64u.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/add64u.o add64u.s +../../obj-ack//libc.a(cmp64.o): cmp64.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/cmp64.o cmp64.s +../../obj-ack//libc.a(cv64u.o): cv64u.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/cv64u.o cv64u.s +../../obj-ack//libc.a(cvu64.o): cvu64.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/cvu64.o cvu64.s +../../obj-ack//libc.a(diff64.o): diff64.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/diff64.o diff64.s +../../obj-ack//libc.a(div64u.o): div64u.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/div64u.o div64u.s +../../obj-ack//libc.a(ex64.o): ex64.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/ex64.o ex64.s +../../obj-ack//libc.a(make64.o): make64.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/make64.o make64.s +../../obj-ack//libc.a(mul64u.o): mul64u.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/mul64u.o mul64u.s +../../obj-ack//libc.a(sub64.o): sub64.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/sub64.o sub64.s +../../obj-ack//libc.a(sub64u.o): sub64u.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/int64/sub64u.o sub64u.s + +all-gnu: ../../obj-gnu/libc.a + +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/add64.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/add64u.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/cmp64.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/cv64u.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/cvu64.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/diff64.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/div64u.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/ex64.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/make64.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/mul64u.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/sub64.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/int64/sub64u.o + +../../obj-gnu/libc.a: + gar cr ../../obj-gnu/libc.a $? + +../../obj-gnu/./i386/int64/add64.o: add64.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. add64.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/add64.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/add64.o ../../obj-gnu/./i386/int64/add64.s.gnu + +../../obj-gnu/./i386/int64/add64u.o: add64u.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. add64u.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/add64u.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/add64u.o ../../obj-gnu/./i386/int64/add64u.s.gnu + +../../obj-gnu/./i386/int64/cmp64.o: cmp64.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. cmp64.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/cmp64.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/cmp64.o ../../obj-gnu/./i386/int64/cmp64.s.gnu + +../../obj-gnu/./i386/int64/cv64u.o: cv64u.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. cv64u.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/cv64u.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/cv64u.o ../../obj-gnu/./i386/int64/cv64u.s.gnu + +../../obj-gnu/./i386/int64/cvu64.o: cvu64.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. cvu64.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/cvu64.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/cvu64.o ../../obj-gnu/./i386/int64/cvu64.s.gnu + +../../obj-gnu/./i386/int64/diff64.o: diff64.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. diff64.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/diff64.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/diff64.o ../../obj-gnu/./i386/int64/diff64.s.gnu + +../../obj-gnu/./i386/int64/div64u.o: div64u.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. div64u.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/div64u.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/div64u.o ../../obj-gnu/./i386/int64/div64u.s.gnu + +../../obj-gnu/./i386/int64/ex64.o: ex64.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. ex64.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/ex64.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/ex64.o ../../obj-gnu/./i386/int64/ex64.s.gnu + +../../obj-gnu/./i386/int64/make64.o: make64.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. make64.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/make64.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/make64.o ../../obj-gnu/./i386/int64/make64.s.gnu + +../../obj-gnu/./i386/int64/mul64u.o: mul64u.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. mul64u.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/mul64u.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/mul64u.o ../../obj-gnu/./i386/int64/mul64u.s.gnu + +../../obj-gnu/./i386/int64/sub64.o: sub64.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. sub64.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/sub64.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/sub64.o ../../obj-gnu/./i386/int64/sub64.s.gnu + +../../obj-gnu/./i386/int64/sub64u.o: sub64u.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. sub64u.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/int64/sub64u.s.gnu || true + gas -o ../../obj-gnu/./i386/int64/sub64u.o ../../obj-gnu/./i386/int64/sub64u.s.gnu + + + + +clean:: + rm -f ../../obj-ack//./i386/int64/* + rm -f ../../obj-gnu/./i386/int64/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/i386/int64: Makefile.in Only in src/lib/i386/misc: .depend-ack Only in src/lib/i386/misc: .depend-gnu Only in src/lib/i386/misc: Makedepend-ack Only in src/lib/i386/misc: Makedepend-gnu diff -ur oldsrc/lib/i386/misc/Makefile src/lib/i386/misc/Makefile --- oldsrc/lib/i386/misc/Makefile 2005-10-21 15:19:33.000000000 +0400 +++ src/lib/i386/misc/Makefile 2006-02-20 19:10:56.000000000 +0300 @@ -1,26 +1,181 @@ -# Makefile for lib/i386/misc. +#Generated from ./i386/misc/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./i386/misc ../../obj-ack/ ../../obj-gnu -libc_OBJECTS = \ - alloca.o \ - get_bp.o \ - getprocessor.o \ - io_inb.o \ - io_inl.o \ - io_insb.o \ - io_insl.o \ - io_insw.o \ - io_intr.o \ - io_inw.o \ - io_outb.o \ - io_outl.o \ - io_outsb.o \ - io_outsl.o \ - io_outsw.o \ - io_outw.o \ - oneC_sum.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./i386/misc ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../Makefile.inc +depend: depend-ack +all-ack: ../../obj-ack//libc.a + +../../obj-ack//libc.a: ../../obj-ack//libc.a(alloca.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(get_bp.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(getprocessor.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_inb.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_inl.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_insb.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_insl.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_insw.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_intr.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_inw.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_outb.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_outl.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_outsb.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_outsl.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_outsw.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(io_outw.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(oneC_sum.o) + +../../obj-ack//libc.a: + ar cr ../../obj-ack//libc.a ../../obj-ack//./i386/misc/*.o + rm ../../obj-ack//./i386/misc/*.o + +../../obj-ack//libc.a(alloca.o): alloca.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/alloca.o alloca.s +../../obj-ack//libc.a(get_bp.o): get_bp.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/get_bp.o get_bp.s +../../obj-ack//libc.a(getprocessor.o): getprocessor.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/getprocessor.o getprocessor.s +../../obj-ack//libc.a(io_inb.o): io_inb.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_inb.o io_inb.s +../../obj-ack//libc.a(io_inl.o): io_inl.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_inl.o io_inl.s +../../obj-ack//libc.a(io_insb.o): io_insb.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_insb.o io_insb.s +../../obj-ack//libc.a(io_insl.o): io_insl.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_insl.o io_insl.s +../../obj-ack//libc.a(io_insw.o): io_insw.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_insw.o io_insw.s +../../obj-ack//libc.a(io_intr.o): io_intr.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_intr.o io_intr.s +../../obj-ack//libc.a(io_inw.o): io_inw.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_inw.o io_inw.s +../../obj-ack//libc.a(io_outb.o): io_outb.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_outb.o io_outb.s +../../obj-ack//libc.a(io_outl.o): io_outl.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_outl.o io_outl.s +../../obj-ack//libc.a(io_outsb.o): io_outsb.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_outsb.o io_outsb.s +../../obj-ack//libc.a(io_outsl.o): io_outsl.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_outsl.o io_outsl.s +../../obj-ack//libc.a(io_outsw.o): io_outsw.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_outsw.o io_outsw.s +../../obj-ack//libc.a(io_outw.o): io_outw.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/io_outw.o io_outw.s +../../obj-ack//libc.a(oneC_sum.o): oneC_sum.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/misc/oneC_sum.o oneC_sum.s + +all-gnu: ../../obj-gnu/libc.a + +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/alloca.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/get_bp.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/getprocessor.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_inb.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_inl.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_insb.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_insl.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_insw.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_intr.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_inw.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_outb.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_outl.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_outsb.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_outsl.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_outsw.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/io_outw.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/misc/oneC_sum.o + +../../obj-gnu/libc.a: + gar cr ../../obj-gnu/libc.a $? + +../../obj-gnu/./i386/misc/alloca.o: alloca.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. alloca.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/alloca.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/alloca.o ../../obj-gnu/./i386/misc/alloca.s.gnu + +../../obj-gnu/./i386/misc/get_bp.o: get_bp.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. get_bp.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/get_bp.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/get_bp.o ../../obj-gnu/./i386/misc/get_bp.s.gnu + +../../obj-gnu/./i386/misc/getprocessor.o: getprocessor.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. getprocessor.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/getprocessor.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/getprocessor.o ../../obj-gnu/./i386/misc/getprocessor.s.gnu + +../../obj-gnu/./i386/misc/io_inb.o: io_inb.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_inb.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_inb.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_inb.o ../../obj-gnu/./i386/misc/io_inb.s.gnu + +../../obj-gnu/./i386/misc/io_inl.o: io_inl.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_inl.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_inl.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_inl.o ../../obj-gnu/./i386/misc/io_inl.s.gnu + +../../obj-gnu/./i386/misc/io_insb.o: io_insb.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_insb.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_insb.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_insb.o ../../obj-gnu/./i386/misc/io_insb.s.gnu + +../../obj-gnu/./i386/misc/io_insl.o: io_insl.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_insl.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_insl.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_insl.o ../../obj-gnu/./i386/misc/io_insl.s.gnu + +../../obj-gnu/./i386/misc/io_insw.o: io_insw.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_insw.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_insw.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_insw.o ../../obj-gnu/./i386/misc/io_insw.s.gnu + +../../obj-gnu/./i386/misc/io_intr.o: io_intr.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_intr.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_intr.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_intr.o ../../obj-gnu/./i386/misc/io_intr.s.gnu + +../../obj-gnu/./i386/misc/io_inw.o: io_inw.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_inw.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_inw.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_inw.o ../../obj-gnu/./i386/misc/io_inw.s.gnu + +../../obj-gnu/./i386/misc/io_outb.o: io_outb.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_outb.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_outb.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_outb.o ../../obj-gnu/./i386/misc/io_outb.s.gnu + +../../obj-gnu/./i386/misc/io_outl.o: io_outl.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_outl.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_outl.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_outl.o ../../obj-gnu/./i386/misc/io_outl.s.gnu + +../../obj-gnu/./i386/misc/io_outsb.o: io_outsb.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_outsb.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_outsb.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_outsb.o ../../obj-gnu/./i386/misc/io_outsb.s.gnu + +../../obj-gnu/./i386/misc/io_outsl.o: io_outsl.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_outsl.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_outsl.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_outsl.o ../../obj-gnu/./i386/misc/io_outsl.s.gnu + +../../obj-gnu/./i386/misc/io_outsw.o: io_outsw.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_outsw.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_outsw.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_outsw.o ../../obj-gnu/./i386/misc/io_outsw.s.gnu + +../../obj-gnu/./i386/misc/io_outw.o: io_outw.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. io_outw.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/io_outw.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/io_outw.o ../../obj-gnu/./i386/misc/io_outw.s.gnu + +../../obj-gnu/./i386/misc/oneC_sum.o: oneC_sum.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. oneC_sum.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/misc/oneC_sum.s.gnu || true + gas -o ../../obj-gnu/./i386/misc/oneC_sum.o ../../obj-gnu/./i386/misc/oneC_sum.s.gnu + + + + +clean:: + rm -f ../../obj-ack//./i386/misc/* + rm -f ../../obj-gnu/./i386/misc/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/i386/misc: Makefile.in Only in src/lib/i386/rts: .depend-ack Only in src/lib/i386/rts: .depend-gnu Only in src/lib/i386/rts: Makedepend-ack Only in src/lib/i386/rts: Makedepend-gnu diff -ur oldsrc/lib/i386/rts/Makefile src/lib/i386/rts/Makefile --- oldsrc/lib/i386/rts/Makefile 2005-10-21 15:19:33.000000000 +0400 +++ src/lib/i386/rts/Makefile 2006-02-20 19:10:57.000000000 +0300 @@ -1,17 +1,105 @@ -# Makefile for lib/i386/rts. +#Generated from ./i386/rts/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./i386/rts ../../obj-ack/ ../../obj-gnu -libc_OBJECTS = \ - __sigreturn.o \ - _ipc.o \ - brksize.o \ - -TOPLEVEL_OBJECTS = \ - crtso.o \ - m2rtso.o \ - prtso.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./i386/rts ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../../Makefile.inc +depend: depend-ack +all-ack: ../../obj-ack//libc.a + +../../obj-ack//libc.a: ../../obj-ack//libc.a(__sigreturn.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(_ipc.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(brksize.o) + +../../obj-ack//libc.a: + ar cr ../../obj-ack//libc.a ../../obj-ack//./i386/rts/*.o + rm ../../obj-ack//./i386/rts/*.o + +../../obj-ack//libc.a(__sigreturn.o): __sigreturn.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/rts/__sigreturn.o __sigreturn.s +../../obj-ack//libc.a(_ipc.o): _ipc.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/rts/_ipc.o _ipc.s +../../obj-ack//libc.a(brksize.o): brksize.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//./i386/rts/brksize.o brksize.s + +all-gnu: ../../obj-gnu/libc.a + +../../obj-gnu/libc.a: ../../obj-gnu/./i386/rts/__sigreturn.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/rts/_ipc.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/rts/brksize.o + +../../obj-gnu/libc.a: + gar cr ../../obj-gnu/libc.a $? + +../../obj-gnu/./i386/rts/__sigreturn.o: __sigreturn.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. __sigreturn.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/__sigreturn.s.gnu || true + gas -o ../../obj-gnu/./i386/rts/__sigreturn.o ../../obj-gnu/./i386/rts/__sigreturn.s.gnu + +../../obj-gnu/./i386/rts/_ipc.o: _ipc.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. _ipc.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/_ipc.s.gnu || true + gas -o ../../obj-gnu/./i386/rts/_ipc.o ../../obj-gnu/./i386/rts/_ipc.s.gnu + +../../obj-gnu/./i386/rts/brksize.o: brksize.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. brksize.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/brksize.s.gnu || true + gas -o ../../obj-gnu/./i386/rts/brksize.o ../../obj-gnu/./i386/rts/brksize.s.gnu + + + +all-ack: ../../obj-ack//crtso.o + +../../obj-ack//crtso.o: crtso.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//crtso.o crtso.s + +all-gnu: ../../obj-gnu/crtso.o + +../../obj-gnu/crtso.o: crtso.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. crtso.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/crtso.s.gnu || true + gas -o ../../obj-gnu/crtso.o ../../obj-gnu/./i386/rts/crtso.s.gnu + + +all-ack: ../../obj-ack//m2rtso.o + +../../obj-ack//m2rtso.o: m2rtso.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//m2rtso.o m2rtso.s + +all-gnu: ../../obj-gnu/m2rtso.o + +../../obj-gnu/m2rtso.o: m2rtso.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. m2rtso.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/m2rtso.s.gnu || true + gas -o ../../obj-gnu/m2rtso.o ../../obj-gnu/./i386/rts/m2rtso.s.gnu + + +all-ack: ../../obj-ack//prtso.o + +../../obj-ack//prtso.o: prtso.s + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../../obj-ack//prtso.o prtso.s + +all-gnu: ../../obj-gnu/prtso.o + +../../obj-gnu/prtso.o: prtso.s + gcc -O -D_MINIX -D_POSIX_SOURCE -E -x assembler-with-cpp -I. prtso.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/rts/prtso.s.gnu || true + gas -o ../../obj-gnu/prtso.o ../../obj-gnu/./i386/rts/prtso.s.gnu + + + +clean:: + rm -f ../../obj-ack//./i386/rts/* + rm -f ../../obj-gnu/./i386/rts/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/i386/rts: Makefile.in Only in src/lib/i386/string: .depend-ack Only in src/lib/i386/string: .depend-gnu Only in src/lib/i386/string: Makedepend-ack Only in src/lib/i386/string: Makedepend-gnu diff -ur oldsrc/lib/i386/string/Makefile src/lib/i386/string/Makefile --- oldsrc/lib/i386/string/Makefile 2005-10-21 15:19:33.000000000 +0400 +++ src/lib/i386/string/Makefile 2006-02-20 19:10:59.000000000 +0300 @@ -1,32 +1,245 @@ -# Makefile for lib/i386/string. +#Generated from ./i386/string/Makefile.in +all: all-ack -LIBRARIES = libc +all-ack: +all-gnu: -libc_OBJECTS = \ - _memmove.o \ - _strncat.o \ - _strncmp.o \ - _strncpy.o \ - _strnlen.o \ - bcmp.o \ - bcopy.o \ - bzero.o \ - index.o \ - memchr.o \ - memcmp.o \ - memcpy.o \ - memmove.o \ - memset.o \ - rindex.o \ - strcat.o \ - strchr.o \ - strcmp.o \ - strcpy.o \ - strlen.o \ - strncat.o \ - strncmp.o \ - strncpy.o \ - strnlen.o \ - strrchr.o \ +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../../generate.sh ./i386/string ../../obj-ack/ ../../obj-gnu -include ../../Makefile.inc +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../../generate.sh ./i386/string ../../obj-ack/ ../../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +depend: depend-ack +all-ack: ../../obj-ack//libc.a + +../../obj-ack//libc.a: ../../obj-ack//libc.a(_memmove.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(_strncat.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(_strncmp.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(_strncpy.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(_strnlen.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(bcmp.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(bcopy.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(bzero.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(index.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(memchr.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(memcmp.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(memcpy.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(memmove.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(memset.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(rindex.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strcat.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strchr.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strcmp.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strcpy.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strlen.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strncat.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strncmp.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strncpy.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strnlen.o) +../../obj-ack//libc.a: ../../obj-ack//libc.a(strrchr.o) + +../../obj-ack//libc.a: + ar cr ../../obj-ack//libc.a ../../obj-ack//./i386/string/*.o + rm ../../obj-ack//./i386/string/*.o + +../../obj-ack//libc.a(_memmove.o): _memmove.s + cc -c -o ../../obj-ack//./i386/string/_memmove.o _memmove.s +../../obj-ack//libc.a(_strncat.o): _strncat.s + cc -c -o ../../obj-ack//./i386/string/_strncat.o _strncat.s +../../obj-ack//libc.a(_strncmp.o): _strncmp.s + cc -c -o ../../obj-ack//./i386/string/_strncmp.o _strncmp.s +../../obj-ack//libc.a(_strncpy.o): _strncpy.s + cc -c -o ../../obj-ack//./i386/string/_strncpy.o _strncpy.s +../../obj-ack//libc.a(_strnlen.o): _strnlen.s + cc -c -o ../../obj-ack//./i386/string/_strnlen.o _strnlen.s +../../obj-ack//libc.a(bcmp.o): bcmp.s + cc -c -o ../../obj-ack//./i386/string/bcmp.o bcmp.s +../../obj-ack//libc.a(bcopy.o): bcopy.s + cc -c -o ../../obj-ack//./i386/string/bcopy.o bcopy.s +../../obj-ack//libc.a(bzero.o): bzero.s + cc -c -o ../../obj-ack//./i386/string/bzero.o bzero.s +../../obj-ack//libc.a(index.o): index.s + cc -c -o ../../obj-ack//./i386/string/index.o index.s +../../obj-ack//libc.a(memchr.o): memchr.s + cc -c -o ../../obj-ack//./i386/string/memchr.o memchr.s +../../obj-ack//libc.a(memcmp.o): memcmp.s + cc -c -o ../../obj-ack//./i386/string/memcmp.o memcmp.s +../../obj-ack//libc.a(memcpy.o): memcpy.s + cc -c -o ../../obj-ack//./i386/string/memcpy.o memcpy.s +../../obj-ack//libc.a(memmove.o): memmove.s + cc -c -o ../../obj-ack//./i386/string/memmove.o memmove.s +../../obj-ack//libc.a(memset.o): memset.s + cc -c -o ../../obj-ack//./i386/string/memset.o memset.s +../../obj-ack//libc.a(rindex.o): rindex.s + cc -c -o ../../obj-ack//./i386/string/rindex.o rindex.s +../../obj-ack//libc.a(strcat.o): strcat.s + cc -c -o ../../obj-ack//./i386/string/strcat.o strcat.s +../../obj-ack//libc.a(strchr.o): strchr.s + cc -c -o ../../obj-ack//./i386/string/strchr.o strchr.s +../../obj-ack//libc.a(strcmp.o): strcmp.s + cc -c -o ../../obj-ack//./i386/string/strcmp.o strcmp.s +../../obj-ack//libc.a(strcpy.o): strcpy.s + cc -c -o ../../obj-ack//./i386/string/strcpy.o strcpy.s +../../obj-ack//libc.a(strlen.o): strlen.s + cc -c -o ../../obj-ack//./i386/string/strlen.o strlen.s +../../obj-ack//libc.a(strncat.o): strncat.s + cc -c -o ../../obj-ack//./i386/string/strncat.o strncat.s +../../obj-ack//libc.a(strncmp.o): strncmp.s + cc -c -o ../../obj-ack//./i386/string/strncmp.o strncmp.s +../../obj-ack//libc.a(strncpy.o): strncpy.s + cc -c -o ../../obj-ack//./i386/string/strncpy.o strncpy.s +../../obj-ack//libc.a(strnlen.o): strnlen.s + cc -c -o ../../obj-ack//./i386/string/strnlen.o strnlen.s +../../obj-ack//libc.a(strrchr.o): strrchr.s + cc -c -o ../../obj-ack//./i386/string/strrchr.o strrchr.s + +all-gnu: ../../obj-gnu/libc.a + +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/_memmove.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/_strncat.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/_strncmp.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/_strncpy.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/_strnlen.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/bcmp.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/bcopy.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/bzero.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/index.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/memchr.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/memcmp.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/memcpy.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/memmove.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/memset.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/rindex.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strcat.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strchr.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strcmp.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strcpy.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strlen.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strncat.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strncmp.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strncpy.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strnlen.o +../../obj-gnu/libc.a: ../../obj-gnu/./i386/string/strrchr.o + +../../obj-gnu/libc.a: + gar cr ../../obj-gnu/libc.a $? + +../../obj-gnu/./i386/string/_memmove.o: _memmove.s + gcc -E -x assembler-with-cpp -I. _memmove.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/_memmove.s.gnu || true + gas -o ../../obj-gnu/./i386/string/_memmove.o ../../obj-gnu/./i386/string/_memmove.s.gnu + +../../obj-gnu/./i386/string/_strncat.o: _strncat.s + gcc -E -x assembler-with-cpp -I. _strncat.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/_strncat.s.gnu || true + gas -o ../../obj-gnu/./i386/string/_strncat.o ../../obj-gnu/./i386/string/_strncat.s.gnu + +../../obj-gnu/./i386/string/_strncmp.o: _strncmp.s + gcc -E -x assembler-with-cpp -I. _strncmp.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/_strncmp.s.gnu || true + gas -o ../../obj-gnu/./i386/string/_strncmp.o ../../obj-gnu/./i386/string/_strncmp.s.gnu + +../../obj-gnu/./i386/string/_strncpy.o: _strncpy.s + gcc -E -x assembler-with-cpp -I. _strncpy.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/_strncpy.s.gnu || true + gas -o ../../obj-gnu/./i386/string/_strncpy.o ../../obj-gnu/./i386/string/_strncpy.s.gnu + +../../obj-gnu/./i386/string/_strnlen.o: _strnlen.s + gcc -E -x assembler-with-cpp -I. _strnlen.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/_strnlen.s.gnu || true + gas -o ../../obj-gnu/./i386/string/_strnlen.o ../../obj-gnu/./i386/string/_strnlen.s.gnu + +../../obj-gnu/./i386/string/bcmp.o: bcmp.s + gcc -E -x assembler-with-cpp -I. bcmp.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/bcmp.s.gnu || true + gas -o ../../obj-gnu/./i386/string/bcmp.o ../../obj-gnu/./i386/string/bcmp.s.gnu + +../../obj-gnu/./i386/string/bcopy.o: bcopy.s + gcc -E -x assembler-with-cpp -I. bcopy.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/bcopy.s.gnu || true + gas -o ../../obj-gnu/./i386/string/bcopy.o ../../obj-gnu/./i386/string/bcopy.s.gnu + +../../obj-gnu/./i386/string/bzero.o: bzero.s + gcc -E -x assembler-with-cpp -I. bzero.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/bzero.s.gnu || true + gas -o ../../obj-gnu/./i386/string/bzero.o ../../obj-gnu/./i386/string/bzero.s.gnu + +../../obj-gnu/./i386/string/index.o: index.s + gcc -E -x assembler-with-cpp -I. index.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/index.s.gnu || true + gas -o ../../obj-gnu/./i386/string/index.o ../../obj-gnu/./i386/string/index.s.gnu + +../../obj-gnu/./i386/string/memchr.o: memchr.s + gcc -E -x assembler-with-cpp -I. memchr.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/memchr.s.gnu || true + gas -o ../../obj-gnu/./i386/string/memchr.o ../../obj-gnu/./i386/string/memchr.s.gnu + +../../obj-gnu/./i386/string/memcmp.o: memcmp.s + gcc -E -x assembler-with-cpp -I. memcmp.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/memcmp.s.gnu || true + gas -o ../../obj-gnu/./i386/string/memcmp.o ../../obj-gnu/./i386/string/memcmp.s.gnu + +../../obj-gnu/./i386/string/memcpy.o: memcpy.s + gcc -E -x assembler-with-cpp -I. memcpy.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/memcpy.s.gnu || true + gas -o ../../obj-gnu/./i386/string/memcpy.o ../../obj-gnu/./i386/string/memcpy.s.gnu + +../../obj-gnu/./i386/string/memmove.o: memmove.s + gcc -E -x assembler-with-cpp -I. memmove.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/memmove.s.gnu || true + gas -o ../../obj-gnu/./i386/string/memmove.o ../../obj-gnu/./i386/string/memmove.s.gnu + +../../obj-gnu/./i386/string/memset.o: memset.s + gcc -E -x assembler-with-cpp -I. memset.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/memset.s.gnu || true + gas -o ../../obj-gnu/./i386/string/memset.o ../../obj-gnu/./i386/string/memset.s.gnu + +../../obj-gnu/./i386/string/rindex.o: rindex.s + gcc -E -x assembler-with-cpp -I. rindex.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/rindex.s.gnu || true + gas -o ../../obj-gnu/./i386/string/rindex.o ../../obj-gnu/./i386/string/rindex.s.gnu + +../../obj-gnu/./i386/string/strcat.o: strcat.s + gcc -E -x assembler-with-cpp -I. strcat.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strcat.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strcat.o ../../obj-gnu/./i386/string/strcat.s.gnu + +../../obj-gnu/./i386/string/strchr.o: strchr.s + gcc -E -x assembler-with-cpp -I. strchr.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strchr.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strchr.o ../../obj-gnu/./i386/string/strchr.s.gnu + +../../obj-gnu/./i386/string/strcmp.o: strcmp.s + gcc -E -x assembler-with-cpp -I. strcmp.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strcmp.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strcmp.o ../../obj-gnu/./i386/string/strcmp.s.gnu + +../../obj-gnu/./i386/string/strcpy.o: strcpy.s + gcc -E -x assembler-with-cpp -I. strcpy.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strcpy.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strcpy.o ../../obj-gnu/./i386/string/strcpy.s.gnu + +../../obj-gnu/./i386/string/strlen.o: strlen.s + gcc -E -x assembler-with-cpp -I. strlen.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strlen.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strlen.o ../../obj-gnu/./i386/string/strlen.s.gnu + +../../obj-gnu/./i386/string/strncat.o: strncat.s + gcc -E -x assembler-with-cpp -I. strncat.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strncat.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strncat.o ../../obj-gnu/./i386/string/strncat.s.gnu + +../../obj-gnu/./i386/string/strncmp.o: strncmp.s + gcc -E -x assembler-with-cpp -I. strncmp.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strncmp.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strncmp.o ../../obj-gnu/./i386/string/strncmp.s.gnu + +../../obj-gnu/./i386/string/strncpy.o: strncpy.s + gcc -E -x assembler-with-cpp -I. strncpy.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strncpy.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strncpy.o ../../obj-gnu/./i386/string/strncpy.s.gnu + +../../obj-gnu/./i386/string/strnlen.o: strnlen.s + gcc -E -x assembler-with-cpp -I. strnlen.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strnlen.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strnlen.o ../../obj-gnu/./i386/string/strnlen.s.gnu + +../../obj-gnu/./i386/string/strrchr.o: strrchr.s + gcc -E -x assembler-with-cpp -I. strrchr.s | asmconv -mi386 ack gnu > ../../obj-gnu/./i386/string/strrchr.s.gnu || true + gas -o ../../obj-gnu/./i386/string/strrchr.o ../../obj-gnu/./i386/string/strrchr.s.gnu + + + + +clean:: + rm -f ../../obj-ack//./i386/string/* + rm -f ../../obj-gnu/./i386/string/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/i386/string: Makefile.in Only in oldsrc/lib/i86: Makefile Only in oldsrc/lib/i86/em: Makefile Only in oldsrc/lib/i86/int64: Makefile Only in oldsrc/lib/i86/misc: Makefile Only in oldsrc/lib/i86/rts: Makefile Only in oldsrc/lib/i86/string: Makefile Only in src/lib/ip: .depend-ack Only in src/lib/ip: .depend-gnu Only in src/lib/ip: Makedepend-ack Only in src/lib/ip: Makedepend-gnu diff -ur oldsrc/lib/ip/Makefile src/lib/ip/Makefile --- oldsrc/lib/ip/Makefile 2005-10-21 15:19:33.000000000 +0400 +++ src/lib/ip/Makefile 2006-02-20 19:10:43.000000000 +0300 @@ -1,59 +1,402 @@ -# Makefile for lib/ip. -# -# Note: The oneC_sum.c file is not used if there is an assembly equivalent. - -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG - -LIBRARIES = libc - -libc_OBJECTS = \ - accept.o \ - bind.o \ - connect.o \ - dhcp_gettag.o \ - dhcp_settag.o \ - ether_line.o \ - ethera2n.o \ - ethere2a.o \ - etherh2n.o \ - ethern2h.o \ - getdomain.o \ - gethnmadr.o \ - gethostent.o \ - gethostname.o \ - getnetent.o \ - getnetbyname.o \ - getnetbyaddr.o \ - getpeername.o \ - getproto.o \ - getprotoent.o \ - getservent.o \ - getsockname.o \ - getsockopt.o \ - getsrvbyname.o \ - getsrvbyport.o \ - hton.o \ - inet_addr.o \ - inet_network.o \ - inet_ntoa.o \ - listen.o \ - memcspn.o \ - rcmd.o \ - recv.o \ - recvfrom.o \ - res_comp.o \ - res_init.o \ - res_mkquery.o \ - res_query.o \ - res_send.o \ - ruserok.o \ - send.o \ - sendto.o \ - sethostent.o \ - setsockopt.o \ - servxcheck.o \ - shutdown.o \ - socket.o \ - strcasecmp.o \ +#Generated from ./ip/Makefile.in +all: all-ack -include ../Makefile.inc +all-ack: +all-gnu: + +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./ip ../obj-ack/ ../obj-gnu + +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./ip ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +depend: depend-ack +all-ack: ../obj-ack//libc.a + +../obj-ack//libc.a: ../obj-ack//libc.a(accept.o) +../obj-ack//libc.a: ../obj-ack//libc.a(bind.o) +../obj-ack//libc.a: ../obj-ack//libc.a(connect.o) +../obj-ack//libc.a: ../obj-ack//libc.a(dhcp_gettag.o) +../obj-ack//libc.a: ../obj-ack//libc.a(dhcp_settag.o) +../obj-ack//libc.a: ../obj-ack//libc.a(domainname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ether_line.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ethera2n.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ethere2a.o) +../obj-ack//libc.a: ../obj-ack//libc.a(etherh2n.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ethern2h.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getdomain.o) +../obj-ack//libc.a: ../obj-ack//libc.a(gethnmadr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(gethostent.o) +../obj-ack//libc.a: ../obj-ack//libc.a(gethostname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getnetbyaddr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getnetbyname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getnetent.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getpeername.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getproto.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getprotoent.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getprotoname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getservent.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getsockname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getsockopt.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getsrvbyname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getsrvbyport.o) +../obj-ack//libc.a: ../obj-ack//libc.a(hton.o) +../obj-ack//libc.a: ../obj-ack//libc.a(inet_addr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(inet_network.o) +../obj-ack//libc.a: ../obj-ack//libc.a(inet_ntoa.o) +../obj-ack//libc.a: ../obj-ack//libc.a(listen.o) +../obj-ack//libc.a: ../obj-ack//libc.a(memcspn.o) +../obj-ack//libc.a: ../obj-ack//libc.a(oneC_sum.o) +../obj-ack//libc.a: ../obj-ack//libc.a(rcmd.o) +../obj-ack//libc.a: ../obj-ack//libc.a(recv.o) +../obj-ack//libc.a: ../obj-ack//libc.a(recvfrom.o) +../obj-ack//libc.a: ../obj-ack//libc.a(res_comp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(res_init.o) +../obj-ack//libc.a: ../obj-ack//libc.a(res_mkquery.o) +../obj-ack//libc.a: ../obj-ack//libc.a(res_query.o) +../obj-ack//libc.a: ../obj-ack//libc.a(res_send.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ruserok.o) +../obj-ack//libc.a: ../obj-ack//libc.a(send.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sendto.o) +../obj-ack//libc.a: ../obj-ack//libc.a(servxcheck.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sethostent.o) +../obj-ack//libc.a: ../obj-ack//libc.a(setsockopt.o) +../obj-ack//libc.a: ../obj-ack//libc.a(shutdown.o) +../obj-ack//libc.a: ../obj-ack//libc.a(socket.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strcasecmp.o) + +../obj-ack//libc.a: + ar cr ../obj-ack//libc.a ../obj-ack//./ip/*.o + rm ../obj-ack//./ip/*.o + +../obj-ack//libc.a(accept.o): accept.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/accept.o accept.c +../obj-ack//libc.a(bind.o): bind.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/bind.o bind.c +../obj-ack//libc.a(connect.o): connect.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/connect.o connect.c +../obj-ack//libc.a(dhcp_gettag.o): dhcp_gettag.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/dhcp_gettag.o dhcp_gettag.c +../obj-ack//libc.a(dhcp_settag.o): dhcp_settag.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/dhcp_settag.o dhcp_settag.c +../obj-ack//libc.a(domainname.o): domainname.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/domainname.o domainname.c +../obj-ack//libc.a(ether_line.o): ether_line.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/ether_line.o ether_line.c +../obj-ack//libc.a(ethera2n.o): ethera2n.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/ethera2n.o ethera2n.c +../obj-ack//libc.a(ethere2a.o): ethere2a.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/ethere2a.o ethere2a.c +../obj-ack//libc.a(etherh2n.o): etherh2n.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/etherh2n.o etherh2n.c +../obj-ack//libc.a(ethern2h.o): ethern2h.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/ethern2h.o ethern2h.c +../obj-ack//libc.a(getdomain.o): getdomain.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getdomain.o getdomain.c +../obj-ack//libc.a(gethnmadr.o): gethnmadr.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/gethnmadr.o gethnmadr.c +../obj-ack//libc.a(gethostent.o): gethostent.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/gethostent.o gethostent.c +../obj-ack//libc.a(gethostname.o): gethostname.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/gethostname.o gethostname.c +../obj-ack//libc.a(getnetbyaddr.o): getnetbyaddr.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getnetbyaddr.o getnetbyaddr.c +../obj-ack//libc.a(getnetbyname.o): getnetbyname.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getnetbyname.o getnetbyname.c +../obj-ack//libc.a(getnetent.o): getnetent.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getnetent.o getnetent.c +../obj-ack//libc.a(getpeername.o): getpeername.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getpeername.o getpeername.c +../obj-ack//libc.a(getproto.o): getproto.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getproto.o getproto.c +../obj-ack//libc.a(getprotoent.o): getprotoent.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getprotoent.o getprotoent.c +../obj-ack//libc.a(getprotoname.o): getprotoname.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getprotoname.o getprotoname.c +../obj-ack//libc.a(getservent.o): getservent.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getservent.o getservent.c +../obj-ack//libc.a(getsockname.o): getsockname.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getsockname.o getsockname.c +../obj-ack//libc.a(getsockopt.o): getsockopt.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getsockopt.o getsockopt.c +../obj-ack//libc.a(getsrvbyname.o): getsrvbyname.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getsrvbyname.o getsrvbyname.c +../obj-ack//libc.a(getsrvbyport.o): getsrvbyport.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/getsrvbyport.o getsrvbyport.c +../obj-ack//libc.a(hton.o): hton.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/hton.o hton.c +../obj-ack//libc.a(inet_addr.o): inet_addr.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/inet_addr.o inet_addr.c +../obj-ack//libc.a(inet_network.o): inet_network.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/inet_network.o inet_network.c +../obj-ack//libc.a(inet_ntoa.o): inet_ntoa.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/inet_ntoa.o inet_ntoa.c +../obj-ack//libc.a(listen.o): listen.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/listen.o listen.c +../obj-ack//libc.a(memcspn.o): memcspn.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/memcspn.o memcspn.c +../obj-ack//libc.a(oneC_sum.o): oneC_sum.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/oneC_sum.o oneC_sum.c +../obj-ack//libc.a(rcmd.o): rcmd.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/rcmd.o rcmd.c +../obj-ack//libc.a(recv.o): recv.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/recv.o recv.c +../obj-ack//libc.a(recvfrom.o): recvfrom.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/recvfrom.o recvfrom.c +../obj-ack//libc.a(res_comp.o): res_comp.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/res_comp.o res_comp.c +../obj-ack//libc.a(res_init.o): res_init.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/res_init.o res_init.c +../obj-ack//libc.a(res_mkquery.o): res_mkquery.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/res_mkquery.o res_mkquery.c +../obj-ack//libc.a(res_query.o): res_query.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/res_query.o res_query.c +../obj-ack//libc.a(res_send.o): res_send.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/res_send.o res_send.c +../obj-ack//libc.a(ruserok.o): ruserok.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/ruserok.o ruserok.c +../obj-ack//libc.a(send.o): send.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/send.o send.c +../obj-ack//libc.a(sendto.o): sendto.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/sendto.o sendto.c +../obj-ack//libc.a(servxcheck.o): servxcheck.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/servxcheck.o servxcheck.c +../obj-ack//libc.a(sethostent.o): sethostent.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/sethostent.o sethostent.c +../obj-ack//libc.a(setsockopt.o): setsockopt.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/setsockopt.o setsockopt.c +../obj-ack//libc.a(shutdown.o): shutdown.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/shutdown.o shutdown.c +../obj-ack//libc.a(socket.o): socket.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/socket.o socket.c +../obj-ack//libc.a(strcasecmp.o): strcasecmp.c + cc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-ack//./ip/strcasecmp.o strcasecmp.c + +all-gnu: ../obj-gnu/libc.a + +../obj-gnu/libc.a: ../obj-gnu/./ip/accept.o +../obj-gnu/libc.a: ../obj-gnu/./ip/bind.o +../obj-gnu/libc.a: ../obj-gnu/./ip/connect.o +../obj-gnu/libc.a: ../obj-gnu/./ip/dhcp_gettag.o +../obj-gnu/libc.a: ../obj-gnu/./ip/dhcp_settag.o +../obj-gnu/libc.a: ../obj-gnu/./ip/domainname.o +../obj-gnu/libc.a: ../obj-gnu/./ip/ether_line.o +../obj-gnu/libc.a: ../obj-gnu/./ip/ethera2n.o +../obj-gnu/libc.a: ../obj-gnu/./ip/ethere2a.o +../obj-gnu/libc.a: ../obj-gnu/./ip/etherh2n.o +../obj-gnu/libc.a: ../obj-gnu/./ip/ethern2h.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getdomain.o +../obj-gnu/libc.a: ../obj-gnu/./ip/gethnmadr.o +../obj-gnu/libc.a: ../obj-gnu/./ip/gethostent.o +../obj-gnu/libc.a: ../obj-gnu/./ip/gethostname.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getnetbyaddr.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getnetbyname.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getnetent.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getpeername.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getproto.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getprotoent.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getprotoname.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getservent.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getsockname.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getsockopt.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getsrvbyname.o +../obj-gnu/libc.a: ../obj-gnu/./ip/getsrvbyport.o +../obj-gnu/libc.a: ../obj-gnu/./ip/hton.o +../obj-gnu/libc.a: ../obj-gnu/./ip/inet_addr.o +../obj-gnu/libc.a: ../obj-gnu/./ip/inet_network.o +../obj-gnu/libc.a: ../obj-gnu/./ip/inet_ntoa.o +../obj-gnu/libc.a: ../obj-gnu/./ip/listen.o +../obj-gnu/libc.a: ../obj-gnu/./ip/memcspn.o +../obj-gnu/libc.a: ../obj-gnu/./ip/oneC_sum.o +../obj-gnu/libc.a: ../obj-gnu/./ip/rcmd.o +../obj-gnu/libc.a: ../obj-gnu/./ip/recv.o +../obj-gnu/libc.a: ../obj-gnu/./ip/recvfrom.o +../obj-gnu/libc.a: ../obj-gnu/./ip/res_comp.o +../obj-gnu/libc.a: ../obj-gnu/./ip/res_init.o +../obj-gnu/libc.a: ../obj-gnu/./ip/res_mkquery.o +../obj-gnu/libc.a: ../obj-gnu/./ip/res_query.o +../obj-gnu/libc.a: ../obj-gnu/./ip/res_send.o +../obj-gnu/libc.a: ../obj-gnu/./ip/ruserok.o +../obj-gnu/libc.a: ../obj-gnu/./ip/send.o +../obj-gnu/libc.a: ../obj-gnu/./ip/sendto.o +../obj-gnu/libc.a: ../obj-gnu/./ip/servxcheck.o +../obj-gnu/libc.a: ../obj-gnu/./ip/sethostent.o +../obj-gnu/libc.a: ../obj-gnu/./ip/setsockopt.o +../obj-gnu/libc.a: ../obj-gnu/./ip/shutdown.o +../obj-gnu/libc.a: ../obj-gnu/./ip/socket.o +../obj-gnu/libc.a: ../obj-gnu/./ip/strcasecmp.o + +../obj-gnu/libc.a: + gar cr ../obj-gnu/libc.a $? + +../obj-gnu/./ip/accept.o: accept.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/accept.o accept.c + +../obj-gnu/./ip/bind.o: bind.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/bind.o bind.c + +../obj-gnu/./ip/connect.o: connect.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/connect.o connect.c + +../obj-gnu/./ip/dhcp_gettag.o: dhcp_gettag.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/dhcp_gettag.o dhcp_gettag.c + +../obj-gnu/./ip/dhcp_settag.o: dhcp_settag.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/dhcp_settag.o dhcp_settag.c + +../obj-gnu/./ip/domainname.o: domainname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/domainname.o domainname.c + +../obj-gnu/./ip/ether_line.o: ether_line.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/ether_line.o ether_line.c + +../obj-gnu/./ip/ethera2n.o: ethera2n.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/ethera2n.o ethera2n.c + +../obj-gnu/./ip/ethere2a.o: ethere2a.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/ethere2a.o ethere2a.c + +../obj-gnu/./ip/etherh2n.o: etherh2n.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/etherh2n.o etherh2n.c + +../obj-gnu/./ip/ethern2h.o: ethern2h.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/ethern2h.o ethern2h.c + +../obj-gnu/./ip/getdomain.o: getdomain.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getdomain.o getdomain.c + +../obj-gnu/./ip/gethnmadr.o: gethnmadr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/gethnmadr.o gethnmadr.c + +../obj-gnu/./ip/gethostent.o: gethostent.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/gethostent.o gethostent.c + +../obj-gnu/./ip/gethostname.o: gethostname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/gethostname.o gethostname.c + +../obj-gnu/./ip/getnetbyaddr.o: getnetbyaddr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getnetbyaddr.o getnetbyaddr.c + +../obj-gnu/./ip/getnetbyname.o: getnetbyname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getnetbyname.o getnetbyname.c + +../obj-gnu/./ip/getnetent.o: getnetent.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getnetent.o getnetent.c + +../obj-gnu/./ip/getpeername.o: getpeername.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getpeername.o getpeername.c + +../obj-gnu/./ip/getproto.o: getproto.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getproto.o getproto.c + +../obj-gnu/./ip/getprotoent.o: getprotoent.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getprotoent.o getprotoent.c + +../obj-gnu/./ip/getprotoname.o: getprotoname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getprotoname.o getprotoname.c + +../obj-gnu/./ip/getservent.o: getservent.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getservent.o getservent.c + +../obj-gnu/./ip/getsockname.o: getsockname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getsockname.o getsockname.c + +../obj-gnu/./ip/getsockopt.o: getsockopt.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getsockopt.o getsockopt.c + +../obj-gnu/./ip/getsrvbyname.o: getsrvbyname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getsrvbyname.o getsrvbyname.c + +../obj-gnu/./ip/getsrvbyport.o: getsrvbyport.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/getsrvbyport.o getsrvbyport.c + +../obj-gnu/./ip/hton.o: hton.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/hton.o hton.c + +../obj-gnu/./ip/inet_addr.o: inet_addr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/inet_addr.o inet_addr.c + +../obj-gnu/./ip/inet_network.o: inet_network.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/inet_network.o inet_network.c + +../obj-gnu/./ip/inet_ntoa.o: inet_ntoa.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/inet_ntoa.o inet_ntoa.c + +../obj-gnu/./ip/listen.o: listen.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/listen.o listen.c + +../obj-gnu/./ip/memcspn.o: memcspn.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/memcspn.o memcspn.c + +../obj-gnu/./ip/oneC_sum.o: oneC_sum.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/oneC_sum.o oneC_sum.c + +../obj-gnu/./ip/rcmd.o: rcmd.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/rcmd.o rcmd.c + +../obj-gnu/./ip/recv.o: recv.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/recv.o recv.c + +../obj-gnu/./ip/recvfrom.o: recvfrom.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/recvfrom.o recvfrom.c + +../obj-gnu/./ip/res_comp.o: res_comp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/res_comp.o res_comp.c + +../obj-gnu/./ip/res_init.o: res_init.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/res_init.o res_init.c + +../obj-gnu/./ip/res_mkquery.o: res_mkquery.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/res_mkquery.o res_mkquery.c + +../obj-gnu/./ip/res_query.o: res_query.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/res_query.o res_query.c + +../obj-gnu/./ip/res_send.o: res_send.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/res_send.o res_send.c + +../obj-gnu/./ip/ruserok.o: ruserok.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/ruserok.o ruserok.c + +../obj-gnu/./ip/send.o: send.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/send.o send.c + +../obj-gnu/./ip/sendto.o: sendto.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/sendto.o sendto.c + +../obj-gnu/./ip/servxcheck.o: servxcheck.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/servxcheck.o servxcheck.c + +../obj-gnu/./ip/sethostent.o: sethostent.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/sethostent.o sethostent.c + +../obj-gnu/./ip/setsockopt.o: setsockopt.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/setsockopt.o setsockopt.c + +../obj-gnu/./ip/shutdown.o: shutdown.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/shutdown.o shutdown.c + +../obj-gnu/./ip/socket.o: socket.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/socket.o socket.c + +../obj-gnu/./ip/strcasecmp.o: strcasecmp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I. -DNDEBUG -c -o ../obj-gnu/./ip/strcasecmp.o strcasecmp.c + + + + +clean:: + rm -f ../obj-ack//./ip/* + rm -f ../obj-gnu/./ip/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/ip: Makefile.in Only in src/lib/ip: getprotoname.c diff -ur oldsrc/lib/ip/getsockname.c src/lib/ip/getsockname.c --- oldsrc/lib/ip/getsockname.c 2005-09-01 18:59:28.000000000 +0400 +++ src/lib/ip/getsockname.c 2006-02-15 17:22:40.000000000 +0300 @@ -21,7 +21,9 @@ #include -#define DEBUG 1 +/* +#define DEBUG 0 +*/ /* getsockname... diff -ur oldsrc/lib/ip/getsockopt.c src/lib/ip/getsockopt.c --- oldsrc/lib/ip/getsockopt.c 2005-08-25 19:10:57.000000000 +0400 +++ src/lib/ip/getsockopt.c 2006-02-17 16:45:41.000000000 +0300 @@ -5,21 +5,27 @@ #include #include #include +#include #include #include #include +#include +#include #define DEBUG 0 static int _tcp_getsockopt(int socket, int level, int option_name, void *_RESTRICT option_value, socklen_t *_RESTRICT option_len); +static int _udp_getsockopt(int socket, int level, int option_name, + void *_RESTRICT option_value, socklen_t *_RESTRICT option_len); int getsockopt(int socket, int level, int option_name, void *_RESTRICT option_value, socklen_t *_RESTRICT option_len) { int r; nwio_tcpopt_t tcpopt; + nwio_udpopt_t udpopt; r= ioctl(socket, NWIOGTCPOPT, &tcpopt); if (r != -1 || errno != ENOTTY) @@ -33,10 +39,22 @@ option_value, option_len); } + r= ioctl(socket, NWIOGUDPOPT, &udpopt); + if (r != -1 || errno != ENOTTY) + { + if (r == -1) + { + /* Bad file descriptor */ + return -1; + } + return _udp_getsockopt(socket, level, option_name, + option_value, option_len); + } + #if DEBUG fprintf(stderr, "getsockopt: not implemented for fd %d\n", socket); #endif - errno= ENOSYS; + errno= ENOTSOCK; return -1; } @@ -55,12 +73,57 @@ *option_len= sizeof(i); return 0; } + if (level == SOL_SOCKET && option_name == SO_RCVBUF) + { + i= 32*1024; /* Receive buffer in the current + * implementation + */ + if (*option_len < sizeof(i)) + memcpy(option_value, &i, *option_len); + else + memcpy(option_value, &i, sizeof(i)); + *option_len= sizeof(i); + return 0; + } + if (level == SOL_SOCKET && option_name == SO_SNDBUF) + { + i= 32*1024; /* Send buffer in the current implementation */ + if (*option_len < sizeof(i)) + memcpy(option_value, &i, *option_len); + else + memcpy(option_value, &i, sizeof(i)); + *option_len= sizeof(i); + return 0; + } + if (level == IPPROTO_TCP && option_name == TCP_NODELAY) + { + i= 0; /* nodelay is always off */ + if (*option_len < sizeof(i)) + memcpy(option_value, &i, *option_len); + else + memcpy(option_value, &i, sizeof(i)); + *option_len= sizeof(i); + return 0; + } #if DEBUG fprintf(stderr, "_tcp_getsocketopt: level %d, name %d\n", level, option_name); #endif - errno= ENOSYS; + errno= ENOPROTOOPT; return -1; } +static int _udp_getsockopt(int socket, int level, int option_name, + void *_RESTRICT option_value, socklen_t *_RESTRICT option_len) +{ + int i; + +#if DEBUG + fprintf(stderr, "_udp_getsocketopt: level %d, name %d\n", + level, option_name); +#endif + + errno= ENOSYS; + return -1; +} diff -ur oldsrc/lib/ip/setsockopt.c src/lib/ip/setsockopt.c --- oldsrc/lib/ip/setsockopt.c 2005-08-25 19:10:57.000000000 +0400 +++ src/lib/ip/setsockopt.c 2006-02-17 16:45:41.000000000 +0300 @@ -4,21 +4,28 @@ #include #include #include +#include #include #include #include +#include +#include #define DEBUG 0 static int _tcp_setsockopt(int socket, int level, int option_name, const void *option_value, socklen_t option_len); +static int _udp_setsockopt(int socket, int level, int option_name, + const void *option_value, socklen_t option_len); + int setsockopt(int socket, int level, int option_name, const void *option_value, socklen_t option_len) { int r; nwio_tcpopt_t tcpopt; + nwio_udpopt_t udpopt; r= ioctl(socket, NWIOGTCPOPT, &tcpopt); if (r != -1 || errno != ENOTTY) @@ -32,10 +39,22 @@ option_value, option_len); } + r= ioctl(socket, NWIOGUDPOPT, &udpopt); + if (r != -1 || errno != ENOTTY) + { + if (r == -1) + { + /* Bad file descriptor */ + return -1; + } + return _udp_setsockopt(socket, level, option_name, + option_value, option_len); + } + #if DEBUG fprintf(stderr, "setsockopt: not implemented for fd %d\n", socket); #endif - errno= ENOSYS; + errno= ENOTSOCK; return -1; } @@ -62,6 +81,64 @@ } return 0; } + if (level == SOL_SOCKET && option_name == SO_RCVBUF) + { + if (option_len != sizeof(i)) + { + errno= EINVAL; + return -1; + } + i= *(int *)option_value; + if (i > 32*1024) + { + /* The receive buffer is limited to 32K at the moment. + */ + errno= ENOSYS; + return -1; + } + /* There is no way to reduce the receive buffer, do we have to + * let this call fail for smaller buffers? + */ + return 0; + } + if (level == SOL_SOCKET && option_name == SO_SNDBUF) + { + if (option_len != sizeof(i)) + { + errno= EINVAL; + return -1; + } + i= *(int *)option_value; + if (i > 32*1024) + { + /* The send buffer is limited to 32K at the moment. + */ + errno= ENOSYS; + return -1; + } + /* There is no way to reduce the send buffer, do we have to + * let this call fail for smaller buffers? + */ + return 0; + } + if (level == IPPROTO_TCP && option_name == TCP_NODELAY) + { + if (option_len != sizeof(i)) + { + errno= EINVAL; + return -1; + } + i= *(int *)option_value; + if (i) + { + /* At the moment there is no way to turn on + * nodelay. + */ + errno= ENOSYS; + return -1; + } + return 0; + } #if DEBUG fprintf(stderr, "_tcp_setsocketopt: level %d, name %d\n", level, option_name); @@ -71,3 +148,17 @@ return -1; } +static int _udp_setsockopt(int socket, int level, int option_name, + const void *option_value, socklen_t option_len) +{ + int i; + +#if DEBUG + fprintf(stderr, "_udp_setsocketopt: level %d, name %d\n", + level, option_name); +#endif + + errno= ENOSYS; + return -1; +} + Only in oldsrc/lib: libm2 Only in oldsrc/lib: libp Only in oldsrc/lib: liby Only in src/lib/math: .depend-ack Only in src/lib/math: .depend-gnu Only in src/lib/math: Makedepend-ack Only in src/lib/math: Makedepend-gnu diff -ur oldsrc/lib/math/Makefile src/lib/math/Makefile --- oldsrc/lib/math/Makefile 2005-10-21 15:19:33.000000000 +0400 +++ src/lib/math/Makefile 2006-02-20 19:10:44.000000000 +0300 @@ -1,26 +1,164 @@ -# Makefile for lib/math. +#Generated from ./math/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./math ../obj-ack/ ../obj-gnu -libc_OBJECTS = \ - asin.o \ - atan.o \ - atan2.o \ - ceil.o \ - exp.o \ - fabs.o \ - floor.o \ - fmod.o \ - hugeval.o \ - log.o \ - log10.o \ - pow.o \ - sin.o \ - sinh.o \ - sqrt.o \ - tan.o \ - tanh.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./math ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libc.a + +../obj-ack//libc.a: ../obj-ack//libc.a(asin.o) +../obj-ack//libc.a: ../obj-ack//libc.a(atan.o) +../obj-ack//libc.a: ../obj-ack//libc.a(atan2.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ceil.o) +../obj-ack//libc.a: ../obj-ack//libc.a(exp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fabs.o) +../obj-ack//libc.a: ../obj-ack//libc.a(floor.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fmod.o) +../obj-ack//libc.a: ../obj-ack//libc.a(hugeval.o) +../obj-ack//libc.a: ../obj-ack//libc.a(log.o) +../obj-ack//libc.a: ../obj-ack//libc.a(log10.o) +../obj-ack//libc.a: ../obj-ack//libc.a(pow.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sin.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sinh.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sqrt.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tan.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tanh.o) + +../obj-ack//libc.a: + ar cr ../obj-ack//libc.a ../obj-ack//./math/*.o + rm ../obj-ack//./math/*.o + +../obj-ack//libc.a(asin.o): asin.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/asin.o asin.c +../obj-ack//libc.a(atan.o): atan.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/atan.o atan.c +../obj-ack//libc.a(atan2.o): atan2.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/atan2.o atan2.c +../obj-ack//libc.a(ceil.o): ceil.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/ceil.o ceil.c +../obj-ack//libc.a(exp.o): exp.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/exp.o exp.c +../obj-ack//libc.a(fabs.o): fabs.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/fabs.o fabs.c +../obj-ack//libc.a(floor.o): floor.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/floor.o floor.c +../obj-ack//libc.a(fmod.o): fmod.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/fmod.o fmod.c +../obj-ack//libc.a(hugeval.o): hugeval.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/hugeval.o hugeval.c +../obj-ack//libc.a(log.o): log.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/log.o log.c +../obj-ack//libc.a(log10.o): log10.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/log10.o log10.c +../obj-ack//libc.a(pow.o): pow.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/pow.o pow.c +../obj-ack//libc.a(sin.o): sin.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/sin.o sin.c +../obj-ack//libc.a(sinh.o): sinh.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/sinh.o sinh.c +../obj-ack//libc.a(sqrt.o): sqrt.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/sqrt.o sqrt.c +../obj-ack//libc.a(tan.o): tan.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/tan.o tan.c +../obj-ack//libc.a(tanh.o): tanh.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./math/tanh.o tanh.c + +all-gnu: ../obj-gnu/libc.a + +../obj-gnu/libc.a: ../obj-gnu/./math/asin.o +../obj-gnu/libc.a: ../obj-gnu/./math/atan.o +../obj-gnu/libc.a: ../obj-gnu/./math/atan2.o +../obj-gnu/libc.a: ../obj-gnu/./math/ceil.o +../obj-gnu/libc.a: ../obj-gnu/./math/exp.o +../obj-gnu/libc.a: ../obj-gnu/./math/fabs.o +../obj-gnu/libc.a: ../obj-gnu/./math/floor.o +../obj-gnu/libc.a: ../obj-gnu/./math/fmod.o +../obj-gnu/libc.a: ../obj-gnu/./math/hugeval.o +../obj-gnu/libc.a: ../obj-gnu/./math/log.o +../obj-gnu/libc.a: ../obj-gnu/./math/log10.o +../obj-gnu/libc.a: ../obj-gnu/./math/pow.o +../obj-gnu/libc.a: ../obj-gnu/./math/sin.o +../obj-gnu/libc.a: ../obj-gnu/./math/sinh.o +../obj-gnu/libc.a: ../obj-gnu/./math/sqrt.o +../obj-gnu/libc.a: ../obj-gnu/./math/tan.o +../obj-gnu/libc.a: ../obj-gnu/./math/tanh.o + +../obj-gnu/libc.a: + gar cr ../obj-gnu/libc.a $? + +../obj-gnu/./math/asin.o: asin.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/asin.o asin.c + +../obj-gnu/./math/atan.o: atan.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/atan.o atan.c + +../obj-gnu/./math/atan2.o: atan2.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/atan2.o atan2.c + +../obj-gnu/./math/ceil.o: ceil.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/ceil.o ceil.c + +../obj-gnu/./math/exp.o: exp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/exp.o exp.c + +../obj-gnu/./math/fabs.o: fabs.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/fabs.o fabs.c + +../obj-gnu/./math/floor.o: floor.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/floor.o floor.c + +../obj-gnu/./math/fmod.o: fmod.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/fmod.o fmod.c + +../obj-gnu/./math/hugeval.o: hugeval.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/hugeval.o hugeval.c + +../obj-gnu/./math/log.o: log.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/log.o log.c + +../obj-gnu/./math/log10.o: log10.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/log10.o log10.c + +../obj-gnu/./math/pow.o: pow.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/pow.o pow.c + +../obj-gnu/./math/sin.o: sin.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/sin.o sin.c + +../obj-gnu/./math/sinh.o: sinh.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/sinh.o sinh.c + +../obj-gnu/./math/sqrt.o: sqrt.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/sqrt.o sqrt.c + +../obj-gnu/./math/tan.o: tan.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/tan.o tan.c + +../obj-gnu/./math/tanh.o: tanh.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./math/tanh.o tanh.c + + + + +clean:: + rm -f ../obj-ack//./math/* + rm -f ../obj-gnu/./math/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/math: Makefile.in Only in oldsrc/lib/math: frexp.s Only in oldsrc/lib/math: isnan.c Only in oldsrc/lib/math: ldexp.c Only in oldsrc/lib/math: modf.s Only in src/lib/obj-ack: ack Only in src/lib/obj-ack: ansi Only in src/lib/obj-ack: curses Only in src/lib/obj-ack: dummy Only in src/lib/obj-ack: editline Only in src/lib/obj-ack: end Only in src/lib/obj-ack: gnu Only in src/lib/obj-ack: i386 Only in src/lib/obj-ack: ip Only in src/lib/obj-ack: math Only in src/lib/obj-ack: other Only in src/lib/obj-ack: posix Only in src/lib/obj-ack: regex Only in src/lib/obj-ack: stdio Only in src/lib/obj-ack: syscall Only in src/lib/obj-ack: syslib Only in src/lib/obj-ack: sysutil Only in src/lib/obj-ack: timers Only in src/lib/obj-ack: util Only in src/lib/obj-ack: zlib-1.2.3 Only in src/lib/other: .depend-ack Only in src/lib/other: .depend-gnu Only in src/lib/other: Makedepend-ack Only in src/lib/other: Makedepend-gnu diff -ur oldsrc/lib/other/Makefile src/lib/other/Makefile --- oldsrc/lib/other/Makefile 2005-10-21 15:19:33.000000000 +0400 +++ src/lib/other/Makefile 2006-02-20 19:10:45.000000000 +0300 @@ -1,71 +1,563 @@ -# Makefile for lib/other. +#Generated from ./other/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE -I../../servers +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./other ../obj-ack/ ../obj-gnu -libc_OBJECTS = \ - _allocmem.o \ - _freemem.o \ - _brk.o \ - _reboot.o \ - _seekdir.o \ - _svrctl.o \ - _getsysinfo.o \ - _getprocnr.o \ - _getnpid.o \ - _getnprocnr.o \ - _getpprocnr.o \ - _devctl.o \ - _findproc.o \ - asynchio.o \ - basename.o \ - configfile.o \ - crypt.o \ - ctermid.o \ - cuserid.o \ - environ.o \ - errno.o \ - fdopen.o \ - ffs.o \ - fslib.o \ - fsversion.o \ - getgrent.o \ - getlogin.o \ - getopt.o \ - getpagesize.o \ - getpass.o \ - getpwent.o \ - getttyent.o \ - getw.o \ - hypot.o \ - itoa.o \ - loadname.o \ - lock.o \ - lrand.o \ - lsearch.o \ - memccpy.o \ - mstats.o \ - mtab.o \ - nlist.o \ - peekpoke.o \ - popen.o \ - putenv.o \ - putw.o \ - random.o \ - setgroups.o \ - settimeofday.o \ - stderr.o \ - strdup.o \ - strtok_r.o \ - swab.o \ - syscall.o \ - sysconf.o \ - telldir.o \ - termcap.o \ - ttyname.o \ - ttyslot.o \ - v8regexp.o \ - v8regsub.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./other ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libc.a + +../obj-ack//libc.a: ../obj-ack//libc.a(_allocmem.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_brk.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_devctl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_findproc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_freemem.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getnpid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getnprocnr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getpprocnr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getprocnr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getsysinfo.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_reboot.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_seekdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_svrctl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(asynchio.o) +../obj-ack//libc.a: ../obj-ack//libc.a(basename.o) +../obj-ack//libc.a: ../obj-ack//libc.a(bcmp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(bcopy.o) +../obj-ack//libc.a: ../obj-ack//libc.a(bzero.o) +../obj-ack//libc.a: ../obj-ack//libc.a(configfile.o) +../obj-ack//libc.a: ../obj-ack//libc.a(crypt.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ctermid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(cuserid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(environ.o) +../obj-ack//libc.a: ../obj-ack//libc.a(errno.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fdopen.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ffs.o) +../obj-ack//libc.a: ../obj-ack//libc.a(flock.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fslib.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fts.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fsversion.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getgrent.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getlogin.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getpagesize.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getpass.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getpwent.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getttyent.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getw.o) +../obj-ack//libc.a: ../obj-ack//libc.a(hypot.o) +../obj-ack//libc.a: ../obj-ack//libc.a(index.o) +../obj-ack//libc.a: ../obj-ack//libc.a(itoa.o) +../obj-ack//libc.a: ../obj-ack//libc.a(loadname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(lock.o) +../obj-ack//libc.a: ../obj-ack//libc.a(lrand.o) +../obj-ack//libc.a: ../obj-ack//libc.a(lsearch.o) +../obj-ack//libc.a: ../obj-ack//libc.a(memccpy.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mstats.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mtab.o) +../obj-ack//libc.a: ../obj-ack//libc.a(nlist.o) +../obj-ack//libc.a: ../obj-ack//libc.a(paramvalue.o) +../obj-ack//libc.a: ../obj-ack//libc.a(peekpoke.o) +../obj-ack//libc.a: ../obj-ack//libc.a(popen.o) +../obj-ack//libc.a: ../obj-ack//libc.a(putenv.o) +../obj-ack//libc.a: ../obj-ack//libc.a(putw.o) +../obj-ack//libc.a: ../obj-ack//libc.a(random.o) +../obj-ack//libc.a: ../obj-ack//libc.a(rindex.o) +../obj-ack//libc.a: ../obj-ack//libc.a(setgroups.o) +../obj-ack//libc.a: ../obj-ack//libc.a(settimeofday.o) +../obj-ack//libc.a: ../obj-ack//libc.a(stderr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strdup.o) +../obj-ack//libc.a: ../obj-ack//libc.a(strtok_r.o) +../obj-ack//libc.a: ../obj-ack//libc.a(swab.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sys_eniop.o) +../obj-ack//libc.a: ../obj-ack//libc.a(syscall.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sysconf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(syslog.o) +../obj-ack//libc.a: ../obj-ack//libc.a(taskcall.o) +../obj-ack//libc.a: ../obj-ack//libc.a(telldir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(termcap.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ttyname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ttyslot.o) +../obj-ack//libc.a: ../obj-ack//libc.a(v8regerror.o) +../obj-ack//libc.a: ../obj-ack//libc.a(v8regexp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(v8regsub.o) +../obj-ack//libc.a: ../obj-ack//libc.a(writev.o) + +../obj-ack//libc.a: + ar cr ../obj-ack//libc.a ../obj-ack//./other/*.o + rm ../obj-ack//./other/*.o + +../obj-ack//libc.a(_allocmem.o): _allocmem.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_allocmem.o _allocmem.c +../obj-ack//libc.a(_brk.o): _brk.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_brk.o _brk.c +../obj-ack//libc.a(_devctl.o): _devctl.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_devctl.o _devctl.c +../obj-ack//libc.a(_findproc.o): _findproc.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_findproc.o _findproc.c +../obj-ack//libc.a(_freemem.o): _freemem.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_freemem.o _freemem.c +../obj-ack//libc.a(_getnpid.o): _getnpid.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_getnpid.o _getnpid.c +../obj-ack//libc.a(_getnprocnr.o): _getnprocnr.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_getnprocnr.o _getnprocnr.c +../obj-ack//libc.a(_getpprocnr.o): _getpprocnr.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_getpprocnr.o _getpprocnr.c +../obj-ack//libc.a(_getprocnr.o): _getprocnr.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_getprocnr.o _getprocnr.c +../obj-ack//libc.a(_getsysinfo.o): _getsysinfo.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_getsysinfo.o _getsysinfo.c +../obj-ack//libc.a(_reboot.o): _reboot.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_reboot.o _reboot.c +../obj-ack//libc.a(_seekdir.o): _seekdir.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_seekdir.o _seekdir.c +../obj-ack//libc.a(_svrctl.o): _svrctl.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/_svrctl.o _svrctl.c +../obj-ack//libc.a(asynchio.o): asynchio.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/asynchio.o asynchio.c +../obj-ack//libc.a(basename.o): basename.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/basename.o basename.c +../obj-ack//libc.a(bcmp.o): bcmp.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/bcmp.o bcmp.c +../obj-ack//libc.a(bcopy.o): bcopy.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/bcopy.o bcopy.c +../obj-ack//libc.a(bzero.o): bzero.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/bzero.o bzero.c +../obj-ack//libc.a(configfile.o): configfile.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/configfile.o configfile.c +../obj-ack//libc.a(crypt.o): crypt.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/crypt.o crypt.c +../obj-ack//libc.a(ctermid.o): ctermid.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/ctermid.o ctermid.c +../obj-ack//libc.a(cuserid.o): cuserid.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/cuserid.o cuserid.c +../obj-ack//libc.a(environ.o): environ.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/environ.o environ.c +../obj-ack//libc.a(errno.o): errno.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/errno.o errno.c +../obj-ack//libc.a(fdopen.o): fdopen.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/fdopen.o fdopen.c +../obj-ack//libc.a(ffs.o): ffs.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/ffs.o ffs.c +../obj-ack//libc.a(flock.o): flock.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/flock.o flock.c +../obj-ack//libc.a(fslib.o): fslib.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/fslib.o fslib.c +../obj-ack//libc.a(fts.o): fts.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/fts.o fts.c +../obj-ack//libc.a(fsversion.o): fsversion.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/fsversion.o fsversion.c +../obj-ack//libc.a(getgrent.o): getgrent.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/getgrent.o getgrent.c +../obj-ack//libc.a(getlogin.o): getlogin.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/getlogin.o getlogin.c +../obj-ack//libc.a(getpagesize.o): getpagesize.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/getpagesize.o getpagesize.c +../obj-ack//libc.a(getpass.o): getpass.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/getpass.o getpass.c +../obj-ack//libc.a(getpwent.o): getpwent.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/getpwent.o getpwent.c +../obj-ack//libc.a(getttyent.o): getttyent.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/getttyent.o getttyent.c +../obj-ack//libc.a(getw.o): getw.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/getw.o getw.c +../obj-ack//libc.a(hypot.o): hypot.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/hypot.o hypot.c +../obj-ack//libc.a(index.o): index.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/index.o index.c +../obj-ack//libc.a(itoa.o): itoa.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/itoa.o itoa.c +../obj-ack//libc.a(loadname.o): loadname.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/loadname.o loadname.c +../obj-ack//libc.a(lock.o): lock.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/lock.o lock.c +../obj-ack//libc.a(lrand.o): lrand.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/lrand.o lrand.c +../obj-ack//libc.a(lsearch.o): lsearch.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/lsearch.o lsearch.c +../obj-ack//libc.a(memccpy.o): memccpy.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/memccpy.o memccpy.c +../obj-ack//libc.a(mstats.o): mstats.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/mstats.o mstats.c +../obj-ack//libc.a(mtab.o): mtab.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/mtab.o mtab.c +../obj-ack//libc.a(nlist.o): nlist.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/nlist.o nlist.c +../obj-ack//libc.a(paramvalue.o): paramvalue.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/paramvalue.o paramvalue.c +../obj-ack//libc.a(peekpoke.o): peekpoke.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/peekpoke.o peekpoke.c +../obj-ack//libc.a(popen.o): popen.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/popen.o popen.c +../obj-ack//libc.a(putenv.o): putenv.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/putenv.o putenv.c +../obj-ack//libc.a(putw.o): putw.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/putw.o putw.c +../obj-ack//libc.a(random.o): random.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/random.o random.c +../obj-ack//libc.a(rindex.o): rindex.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/rindex.o rindex.c +../obj-ack//libc.a(setgroups.o): setgroups.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/setgroups.o setgroups.c +../obj-ack//libc.a(settimeofday.o): settimeofday.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/settimeofday.o settimeofday.c +../obj-ack//libc.a(stderr.o): stderr.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/stderr.o stderr.c +../obj-ack//libc.a(strdup.o): strdup.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/strdup.o strdup.c +../obj-ack//libc.a(strtok_r.o): strtok_r.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/strtok_r.o strtok_r.c +../obj-ack//libc.a(swab.o): swab.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/swab.o swab.c +../obj-ack//libc.a(sys_eniop.o): sys_eniop.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/sys_eniop.o sys_eniop.c +../obj-ack//libc.a(syscall.o): syscall.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/syscall.o syscall.c +../obj-ack//libc.a(sysconf.o): sysconf.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/sysconf.o sysconf.c +../obj-ack//libc.a(syslog.o): syslog.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/syslog.o syslog.c +../obj-ack//libc.a(taskcall.o): taskcall.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/taskcall.o taskcall.c +../obj-ack//libc.a(telldir.o): telldir.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/telldir.o telldir.c +../obj-ack//libc.a(termcap.o): termcap.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/termcap.o termcap.c +../obj-ack//libc.a(ttyname.o): ttyname.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/ttyname.o ttyname.c +../obj-ack//libc.a(ttyslot.o): ttyslot.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/ttyslot.o ttyslot.c +../obj-ack//libc.a(v8regerror.o): v8regerror.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/v8regerror.o v8regerror.c +../obj-ack//libc.a(v8regexp.o): v8regexp.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/v8regexp.o v8regexp.c +../obj-ack//libc.a(v8regsub.o): v8regsub.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/v8regsub.o v8regsub.c +../obj-ack//libc.a(writev.o): writev.c + cc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-ack//./other/writev.o writev.c + +all-gnu: ../obj-gnu/libc.a + +../obj-gnu/libc.a: ../obj-gnu/./other/_allocmem.o +../obj-gnu/libc.a: ../obj-gnu/./other/_brk.o +../obj-gnu/libc.a: ../obj-gnu/./other/_devctl.o +../obj-gnu/libc.a: ../obj-gnu/./other/_findproc.o +../obj-gnu/libc.a: ../obj-gnu/./other/_freemem.o +../obj-gnu/libc.a: ../obj-gnu/./other/_getnpid.o +../obj-gnu/libc.a: ../obj-gnu/./other/_getnprocnr.o +../obj-gnu/libc.a: ../obj-gnu/./other/_getpprocnr.o +../obj-gnu/libc.a: ../obj-gnu/./other/_getprocnr.o +../obj-gnu/libc.a: ../obj-gnu/./other/_getsysinfo.o +../obj-gnu/libc.a: ../obj-gnu/./other/_reboot.o +../obj-gnu/libc.a: ../obj-gnu/./other/_seekdir.o +../obj-gnu/libc.a: ../obj-gnu/./other/_svrctl.o +../obj-gnu/libc.a: ../obj-gnu/./other/asynchio.o +../obj-gnu/libc.a: ../obj-gnu/./other/basename.o +../obj-gnu/libc.a: ../obj-gnu/./other/bcmp.o +../obj-gnu/libc.a: ../obj-gnu/./other/bcopy.o +../obj-gnu/libc.a: ../obj-gnu/./other/bzero.o +../obj-gnu/libc.a: ../obj-gnu/./other/configfile.o +../obj-gnu/libc.a: ../obj-gnu/./other/crypt.o +../obj-gnu/libc.a: ../obj-gnu/./other/ctermid.o +../obj-gnu/libc.a: ../obj-gnu/./other/cuserid.o +../obj-gnu/libc.a: ../obj-gnu/./other/environ.o +../obj-gnu/libc.a: ../obj-gnu/./other/errno.o +../obj-gnu/libc.a: ../obj-gnu/./other/fdopen.o +../obj-gnu/libc.a: ../obj-gnu/./other/ffs.o +../obj-gnu/libc.a: ../obj-gnu/./other/flock.o +../obj-gnu/libc.a: ../obj-gnu/./other/fslib.o +../obj-gnu/libc.a: ../obj-gnu/./other/fts.o +../obj-gnu/libc.a: ../obj-gnu/./other/fsversion.o +../obj-gnu/libc.a: ../obj-gnu/./other/getgrent.o +../obj-gnu/libc.a: ../obj-gnu/./other/getlogin.o +../obj-gnu/libc.a: ../obj-gnu/./other/getpagesize.o +../obj-gnu/libc.a: ../obj-gnu/./other/getpass.o +../obj-gnu/libc.a: ../obj-gnu/./other/getpwent.o +../obj-gnu/libc.a: ../obj-gnu/./other/getttyent.o +../obj-gnu/libc.a: ../obj-gnu/./other/getw.o +../obj-gnu/libc.a: ../obj-gnu/./other/hypot.o +../obj-gnu/libc.a: ../obj-gnu/./other/index.o +../obj-gnu/libc.a: ../obj-gnu/./other/itoa.o +../obj-gnu/libc.a: ../obj-gnu/./other/loadname.o +../obj-gnu/libc.a: ../obj-gnu/./other/lock.o +../obj-gnu/libc.a: ../obj-gnu/./other/lrand.o +../obj-gnu/libc.a: ../obj-gnu/./other/lsearch.o +../obj-gnu/libc.a: ../obj-gnu/./other/memccpy.o +../obj-gnu/libc.a: ../obj-gnu/./other/mstats.o +../obj-gnu/libc.a: ../obj-gnu/./other/mtab.o +../obj-gnu/libc.a: ../obj-gnu/./other/nlist.o +../obj-gnu/libc.a: ../obj-gnu/./other/paramvalue.o +../obj-gnu/libc.a: ../obj-gnu/./other/peekpoke.o +../obj-gnu/libc.a: ../obj-gnu/./other/popen.o +../obj-gnu/libc.a: ../obj-gnu/./other/putenv.o +../obj-gnu/libc.a: ../obj-gnu/./other/putw.o +../obj-gnu/libc.a: ../obj-gnu/./other/random.o +../obj-gnu/libc.a: ../obj-gnu/./other/rindex.o +../obj-gnu/libc.a: ../obj-gnu/./other/setgroups.o +../obj-gnu/libc.a: ../obj-gnu/./other/settimeofday.o +../obj-gnu/libc.a: ../obj-gnu/./other/stderr.o +../obj-gnu/libc.a: ../obj-gnu/./other/strdup.o +../obj-gnu/libc.a: ../obj-gnu/./other/strtok_r.o +../obj-gnu/libc.a: ../obj-gnu/./other/swab.o +../obj-gnu/libc.a: ../obj-gnu/./other/sys_eniop.o +../obj-gnu/libc.a: ../obj-gnu/./other/syscall.o +../obj-gnu/libc.a: ../obj-gnu/./other/sysconf.o +../obj-gnu/libc.a: ../obj-gnu/./other/syslog.o +../obj-gnu/libc.a: ../obj-gnu/./other/taskcall.o +../obj-gnu/libc.a: ../obj-gnu/./other/telldir.o +../obj-gnu/libc.a: ../obj-gnu/./other/termcap.o +../obj-gnu/libc.a: ../obj-gnu/./other/ttyname.o +../obj-gnu/libc.a: ../obj-gnu/./other/ttyslot.o +../obj-gnu/libc.a: ../obj-gnu/./other/v8regerror.o +../obj-gnu/libc.a: ../obj-gnu/./other/v8regexp.o +../obj-gnu/libc.a: ../obj-gnu/./other/v8regsub.o +../obj-gnu/libc.a: ../obj-gnu/./other/writev.o + +../obj-gnu/libc.a: + gar cr ../obj-gnu/libc.a $? + +../obj-gnu/./other/_allocmem.o: _allocmem.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_allocmem.o _allocmem.c + +../obj-gnu/./other/_brk.o: _brk.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_brk.o _brk.c + +../obj-gnu/./other/_devctl.o: _devctl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_devctl.o _devctl.c + +../obj-gnu/./other/_findproc.o: _findproc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_findproc.o _findproc.c + +../obj-gnu/./other/_freemem.o: _freemem.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_freemem.o _freemem.c + +../obj-gnu/./other/_getnpid.o: _getnpid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_getnpid.o _getnpid.c + +../obj-gnu/./other/_getnprocnr.o: _getnprocnr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_getnprocnr.o _getnprocnr.c + +../obj-gnu/./other/_getpprocnr.o: _getpprocnr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_getpprocnr.o _getpprocnr.c + +../obj-gnu/./other/_getprocnr.o: _getprocnr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_getprocnr.o _getprocnr.c + +../obj-gnu/./other/_getsysinfo.o: _getsysinfo.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_getsysinfo.o _getsysinfo.c + +../obj-gnu/./other/_reboot.o: _reboot.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_reboot.o _reboot.c + +../obj-gnu/./other/_seekdir.o: _seekdir.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_seekdir.o _seekdir.c + +../obj-gnu/./other/_svrctl.o: _svrctl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/_svrctl.o _svrctl.c + +../obj-gnu/./other/asynchio.o: asynchio.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/asynchio.o asynchio.c + +../obj-gnu/./other/basename.o: basename.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/basename.o basename.c + +../obj-gnu/./other/bcmp.o: bcmp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/bcmp.o bcmp.c + +../obj-gnu/./other/bcopy.o: bcopy.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/bcopy.o bcopy.c + +../obj-gnu/./other/bzero.o: bzero.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/bzero.o bzero.c + +../obj-gnu/./other/configfile.o: configfile.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/configfile.o configfile.c + +../obj-gnu/./other/crypt.o: crypt.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/crypt.o crypt.c + +../obj-gnu/./other/ctermid.o: ctermid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/ctermid.o ctermid.c + +../obj-gnu/./other/cuserid.o: cuserid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/cuserid.o cuserid.c + +../obj-gnu/./other/environ.o: environ.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/environ.o environ.c + +../obj-gnu/./other/errno.o: errno.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/errno.o errno.c + +../obj-gnu/./other/fdopen.o: fdopen.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/fdopen.o fdopen.c + +../obj-gnu/./other/ffs.o: ffs.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/ffs.o ffs.c + +../obj-gnu/./other/flock.o: flock.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/flock.o flock.c + +../obj-gnu/./other/fslib.o: fslib.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/fslib.o fslib.c + +../obj-gnu/./other/fts.o: fts.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/fts.o fts.c + +../obj-gnu/./other/fsversion.o: fsversion.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/fsversion.o fsversion.c + +../obj-gnu/./other/getgrent.o: getgrent.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/getgrent.o getgrent.c + +../obj-gnu/./other/getlogin.o: getlogin.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/getlogin.o getlogin.c + +../obj-gnu/./other/getpagesize.o: getpagesize.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/getpagesize.o getpagesize.c + +../obj-gnu/./other/getpass.o: getpass.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/getpass.o getpass.c + +../obj-gnu/./other/getpwent.o: getpwent.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/getpwent.o getpwent.c + +../obj-gnu/./other/getttyent.o: getttyent.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/getttyent.o getttyent.c + +../obj-gnu/./other/getw.o: getw.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/getw.o getw.c + +../obj-gnu/./other/hypot.o: hypot.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/hypot.o hypot.c + +../obj-gnu/./other/index.o: index.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/index.o index.c + +../obj-gnu/./other/itoa.o: itoa.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/itoa.o itoa.c + +../obj-gnu/./other/loadname.o: loadname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/loadname.o loadname.c + +../obj-gnu/./other/lock.o: lock.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/lock.o lock.c + +../obj-gnu/./other/lrand.o: lrand.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/lrand.o lrand.c + +../obj-gnu/./other/lsearch.o: lsearch.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/lsearch.o lsearch.c + +../obj-gnu/./other/memccpy.o: memccpy.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/memccpy.o memccpy.c + +../obj-gnu/./other/mstats.o: mstats.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/mstats.o mstats.c + +../obj-gnu/./other/mtab.o: mtab.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/mtab.o mtab.c + +../obj-gnu/./other/nlist.o: nlist.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/nlist.o nlist.c + +../obj-gnu/./other/paramvalue.o: paramvalue.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/paramvalue.o paramvalue.c + +../obj-gnu/./other/peekpoke.o: peekpoke.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/peekpoke.o peekpoke.c + +../obj-gnu/./other/popen.o: popen.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/popen.o popen.c + +../obj-gnu/./other/putenv.o: putenv.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/putenv.o putenv.c + +../obj-gnu/./other/putw.o: putw.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/putw.o putw.c + +../obj-gnu/./other/random.o: random.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/random.o random.c + +../obj-gnu/./other/rindex.o: rindex.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/rindex.o rindex.c + +../obj-gnu/./other/setgroups.o: setgroups.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/setgroups.o setgroups.c + +../obj-gnu/./other/settimeofday.o: settimeofday.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/settimeofday.o settimeofday.c + +../obj-gnu/./other/stderr.o: stderr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/stderr.o stderr.c + +../obj-gnu/./other/strdup.o: strdup.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/strdup.o strdup.c + +../obj-gnu/./other/strtok_r.o: strtok_r.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/strtok_r.o strtok_r.c + +../obj-gnu/./other/swab.o: swab.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/swab.o swab.c + +../obj-gnu/./other/sys_eniop.o: sys_eniop.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/sys_eniop.o sys_eniop.c + +../obj-gnu/./other/syscall.o: syscall.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/syscall.o syscall.c + +../obj-gnu/./other/sysconf.o: sysconf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/sysconf.o sysconf.c + +../obj-gnu/./other/syslog.o: syslog.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/syslog.o syslog.c + +../obj-gnu/./other/taskcall.o: taskcall.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/taskcall.o taskcall.c + +../obj-gnu/./other/telldir.o: telldir.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/telldir.o telldir.c + +../obj-gnu/./other/termcap.o: termcap.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/termcap.o termcap.c + +../obj-gnu/./other/ttyname.o: ttyname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/ttyname.o ttyname.c + +../obj-gnu/./other/ttyslot.o: ttyslot.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/ttyslot.o ttyslot.c + +../obj-gnu/./other/v8regerror.o: v8regerror.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/v8regerror.o v8regerror.c + +../obj-gnu/./other/v8regexp.o: v8regexp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/v8regexp.o v8regexp.c + +../obj-gnu/./other/v8regsub.o: v8regsub.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/v8regsub.o v8regsub.c + +../obj-gnu/./other/writev.o: writev.c + gcc -O -D_MINIX -D_POSIX_SOURCE -I../../servers -c -o ../obj-gnu/./other/writev.o writev.c + + + + +clean:: + rm -f ../obj-ack//./other/* + rm -f ../obj-gnu/./other/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/other: Makefile.in Only in src/lib/other: flock.c Only in src/lib/other: fts.c Only in oldsrc/lib/other: getopt.c Only in src/lib/other: namespace.h Only in src/lib/other: paramvalue.c diff -ur oldsrc/lib/other/setgroups.c src/lib/other/setgroups.c --- oldsrc/lib/other/setgroups.c 2005-06-10 19:12:03.000000000 +0400 +++ src/lib/other/setgroups.c 2006-02-15 17:16:06.000000000 +0300 @@ -4,12 +4,50 @@ #include #include +#include +#include int setgroups(int ngroups, const gid_t *gidset) { - /* Not implemented */ + if(ngroups > 1) { + /* Supplementary groups not implemented */ + errno= EINVAL; + return -1; + } - errno= ENOSYS; - return -1; + if(ngroups == 1) + return setgid(gidset[0]); + + return 0; +} + +int initgroups(const char *name, gid_t basegid) +{ + struct group *gr; + int r, found = 0; + if((r = setgid(basegid)) < 0) + return r; + + setgrent(); + while (!found && (gr = getgrent()) != NULL) { + char **mem; + for(mem = gr->gr_mem; mem && *mem; mem++) { + if(!strcmp(name, *mem)) { + found = 1; + break; + } + } + } + endgrent(); + + /* Because supplemental groups aren't implemented, this call + * should fail if the user is in any supplemental groups. + */ + if(found) { + errno = EINVAL; + return -1; + } + + return 0; } Only in src/lib/other: syslog.c Only in src/lib/other: un-namespace.h Only in src/lib/posix: .depend-ack Only in src/lib/posix: .depend-gnu Only in src/lib/posix: Makedepend-ack Only in src/lib/posix: Makedepend-gnu diff -ur oldsrc/lib/posix/Makefile src/lib/posix/Makefile --- oldsrc/lib/posix/Makefile 2005-10-21 15:19:34.000000000 +0400 +++ src/lib/posix/Makefile 2006-02-20 19:10:46.000000000 +0300 @@ -1,105 +1,724 @@ -# Makefile for lib/posix. +#Generated from ./posix/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./posix ../obj-ack/ ../obj-gnu -libc_OBJECTS = \ - __exit.o \ - _access.o \ - _alarm.o \ - _cfgetispeed.o \ - _cfgetospeed.o \ - _cfsetispeed.o \ - _cfsetospeed.o \ - _chdir.o \ - _chmod.o \ - _chown.o \ - _chroot.o \ - _close.o \ - _closedir.o \ - _creat.o \ - _dup.o \ - _dup2.o \ - _execl.o \ - _execle.o \ - _execlp.o \ - _execv.o \ - _execve.o \ - _execvp.o \ - _fcntl.o \ - _fork.o \ - _fpathconf.o \ - _fstat.o \ - _fstatfs.o \ - _fsync.o \ - _getcwd.o \ - _getegid.o \ - _geteuid.o \ - _getgid.o \ - _getgroups.o \ - _getpgrp.o \ - _getpid.o \ - _getppid.o \ - _getuid.o \ - _ioctl.o \ - _isatty.o \ - _kill.o \ - _link.o \ - _lseek.o \ - _mkdir.o \ - _mkfifo.o \ - _mknod.o \ - _mount.o \ - _open.o \ - _opendir.o \ - _pathconf.o \ - _pause.o \ - _pipe.o \ - _ptrace.o \ - _read.o \ - _readdir.o \ - _rename.o \ - _rewinddir.o \ - _rmdir.o \ - _select.o \ - _setgid.o \ - _setsid.o \ - _setuid.o \ - _sigaction.o \ - _sigpending.o \ - _sigprocmask.o \ - _sigreturn.o \ - _sigset.o \ - _sigsuspend.o \ - _sleep.o \ - _stat.o \ - _stime.o \ - _sync.o \ - _tcdrain.o \ - _tcflow.o \ - _tcflush.o \ - _tcgetattr.o \ - _tcsendbreak.o \ - _tcsetattr.o \ - _time.o \ - _times.o \ - _umask.o \ - _umount.o \ - _uname.o \ - _unlink.o \ - _utime.o \ - _wait.o \ - _waitpid.o \ - _write.o \ - gettimeofday.o \ - getopt.o \ - lstat.o \ - priority.o \ - readlink.o \ - symlink.o \ - usleep.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./posix ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libc.a -$(call ADDDEPENDENCIES,_uname.o,/usr/include/minix/config.h) +../obj-ack//libc.a: ../obj-ack//libc.a(__exit.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_access.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_alarm.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_cfgetispeed.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_cfgetospeed.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_cfsetispeed.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_cfsetospeed.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_chdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_chmod.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_chown.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_chroot.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_close.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_closedir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_creat.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_dup.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_dup2.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_execl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_execle.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_execlp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_execv.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_execve.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_execvp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_fcntl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_fork.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_fpathconf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_fstat.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_fstatfs.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_fsync.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getcwd.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getegid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_geteuid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getgid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getgroups.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getpgrp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getpid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getppid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_getuid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_ioctl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_isatty.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_kill.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_link.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_lseek.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_lstat.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_mkdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_mkfifo.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_mknod.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_mount.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_open.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_opendir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_pathconf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_pause.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_pipe.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_ptrace.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_read.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_readdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_readlink.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_rename.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_rewinddir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_rmdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_select.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_setgid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_setsid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_setuid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_sigaction.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_sigpending.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_sigprocmask.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_sigreturn.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_sigset.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_sigsetjmp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_sigsuspend.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_sleep.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_stat.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_stime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_symlink.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_sync.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_tcdrain.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_tcflow.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_tcflush.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_tcgetattr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_tcsendbreak.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_tcsetattr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_time.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_times.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_truncate.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_umask.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_umount.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_uname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_unlink.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_utime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_wait.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_waitpid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(_write.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getloadavg.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getopt.o) +../obj-ack//libc.a: ../obj-ack//libc.a(gettimeofday.o) +../obj-ack//libc.a: ../obj-ack//libc.a(priority.o) +../obj-ack//libc.a: ../obj-ack//libc.a(usleep.o) + +../obj-ack//libc.a: + ar cr ../obj-ack//libc.a ../obj-ack//./posix/*.o + rm ../obj-ack//./posix/*.o + +../obj-ack//libc.a(__exit.o): __exit.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/__exit.o __exit.c +../obj-ack//libc.a(_access.o): _access.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_access.o _access.c +../obj-ack//libc.a(_alarm.o): _alarm.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_alarm.o _alarm.c +../obj-ack//libc.a(_cfgetispeed.o): _cfgetispeed.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_cfgetispeed.o _cfgetispeed.c +../obj-ack//libc.a(_cfgetospeed.o): _cfgetospeed.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_cfgetospeed.o _cfgetospeed.c +../obj-ack//libc.a(_cfsetispeed.o): _cfsetispeed.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_cfsetispeed.o _cfsetispeed.c +../obj-ack//libc.a(_cfsetospeed.o): _cfsetospeed.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_cfsetospeed.o _cfsetospeed.c +../obj-ack//libc.a(_chdir.o): _chdir.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_chdir.o _chdir.c +../obj-ack//libc.a(_chmod.o): _chmod.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_chmod.o _chmod.c +../obj-ack//libc.a(_chown.o): _chown.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_chown.o _chown.c +../obj-ack//libc.a(_chroot.o): _chroot.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_chroot.o _chroot.c +../obj-ack//libc.a(_close.o): _close.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_close.o _close.c +../obj-ack//libc.a(_closedir.o): _closedir.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_closedir.o _closedir.c +../obj-ack//libc.a(_creat.o): _creat.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_creat.o _creat.c +../obj-ack//libc.a(_dup.o): _dup.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_dup.o _dup.c +../obj-ack//libc.a(_dup2.o): _dup2.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_dup2.o _dup2.c +../obj-ack//libc.a(_execl.o): _execl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_execl.o _execl.c +../obj-ack//libc.a(_execle.o): _execle.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_execle.o _execle.c +../obj-ack//libc.a(_execlp.o): _execlp.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_execlp.o _execlp.c +../obj-ack//libc.a(_execv.o): _execv.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_execv.o _execv.c +../obj-ack//libc.a(_execve.o): _execve.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_execve.o _execve.c +../obj-ack//libc.a(_execvp.o): _execvp.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_execvp.o _execvp.c +../obj-ack//libc.a(_fcntl.o): _fcntl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_fcntl.o _fcntl.c +../obj-ack//libc.a(_fork.o): _fork.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_fork.o _fork.c +../obj-ack//libc.a(_fpathconf.o): _fpathconf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_fpathconf.o _fpathconf.c +../obj-ack//libc.a(_fstat.o): _fstat.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_fstat.o _fstat.c +../obj-ack//libc.a(_fstatfs.o): _fstatfs.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_fstatfs.o _fstatfs.c +../obj-ack//libc.a(_fsync.o): _fsync.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_fsync.o _fsync.c +../obj-ack//libc.a(_getcwd.o): _getcwd.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_getcwd.o _getcwd.c +../obj-ack//libc.a(_getegid.o): _getegid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_getegid.o _getegid.c +../obj-ack//libc.a(_geteuid.o): _geteuid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_geteuid.o _geteuid.c +../obj-ack//libc.a(_getgid.o): _getgid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_getgid.o _getgid.c +../obj-ack//libc.a(_getgroups.o): _getgroups.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_getgroups.o _getgroups.c +../obj-ack//libc.a(_getpgrp.o): _getpgrp.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_getpgrp.o _getpgrp.c +../obj-ack//libc.a(_getpid.o): _getpid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_getpid.o _getpid.c +../obj-ack//libc.a(_getppid.o): _getppid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_getppid.o _getppid.c +../obj-ack//libc.a(_getuid.o): _getuid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_getuid.o _getuid.c +../obj-ack//libc.a(_ioctl.o): _ioctl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_ioctl.o _ioctl.c +../obj-ack//libc.a(_isatty.o): _isatty.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_isatty.o _isatty.c +../obj-ack//libc.a(_kill.o): _kill.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_kill.o _kill.c +../obj-ack//libc.a(_link.o): _link.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_link.o _link.c +../obj-ack//libc.a(_lseek.o): _lseek.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_lseek.o _lseek.c +../obj-ack//libc.a(_lstat.o): _lstat.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_lstat.o _lstat.c +../obj-ack//libc.a(_mkdir.o): _mkdir.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_mkdir.o _mkdir.c +../obj-ack//libc.a(_mkfifo.o): _mkfifo.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_mkfifo.o _mkfifo.c +../obj-ack//libc.a(_mknod.o): _mknod.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_mknod.o _mknod.c +../obj-ack//libc.a(_mount.o): _mount.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_mount.o _mount.c +../obj-ack//libc.a(_open.o): _open.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_open.o _open.c +../obj-ack//libc.a(_opendir.o): _opendir.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_opendir.o _opendir.c +../obj-ack//libc.a(_pathconf.o): _pathconf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_pathconf.o _pathconf.c +../obj-ack//libc.a(_pause.o): _pause.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_pause.o _pause.c +../obj-ack//libc.a(_pipe.o): _pipe.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_pipe.o _pipe.c +../obj-ack//libc.a(_ptrace.o): _ptrace.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_ptrace.o _ptrace.c +../obj-ack//libc.a(_read.o): _read.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_read.o _read.c +../obj-ack//libc.a(_readdir.o): _readdir.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_readdir.o _readdir.c +../obj-ack//libc.a(_readlink.o): _readlink.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_readlink.o _readlink.c +../obj-ack//libc.a(_rename.o): _rename.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_rename.o _rename.c +../obj-ack//libc.a(_rewinddir.o): _rewinddir.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_rewinddir.o _rewinddir.c +../obj-ack//libc.a(_rmdir.o): _rmdir.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_rmdir.o _rmdir.c +../obj-ack//libc.a(_select.o): _select.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_select.o _select.c +../obj-ack//libc.a(_setgid.o): _setgid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_setgid.o _setgid.c +../obj-ack//libc.a(_setsid.o): _setsid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_setsid.o _setsid.c +../obj-ack//libc.a(_setuid.o): _setuid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_setuid.o _setuid.c +../obj-ack//libc.a(_sigaction.o): _sigaction.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_sigaction.o _sigaction.c +../obj-ack//libc.a(_sigpending.o): _sigpending.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_sigpending.o _sigpending.c +../obj-ack//libc.a(_sigprocmask.o): _sigprocmask.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_sigprocmask.o _sigprocmask.c +../obj-ack//libc.a(_sigreturn.o): _sigreturn.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_sigreturn.o _sigreturn.c +../obj-ack//libc.a(_sigset.o): _sigset.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_sigset.o _sigset.c +../obj-ack//libc.a(_sigsetjmp.o): _sigsetjmp.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_sigsetjmp.o _sigsetjmp.c +../obj-ack//libc.a(_sigsuspend.o): _sigsuspend.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_sigsuspend.o _sigsuspend.c +../obj-ack//libc.a(_sleep.o): _sleep.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_sleep.o _sleep.c +../obj-ack//libc.a(_stat.o): _stat.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_stat.o _stat.c +../obj-ack//libc.a(_stime.o): _stime.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_stime.o _stime.c +../obj-ack//libc.a(_symlink.o): _symlink.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_symlink.o _symlink.c +../obj-ack//libc.a(_sync.o): _sync.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_sync.o _sync.c +../obj-ack//libc.a(_tcdrain.o): _tcdrain.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_tcdrain.o _tcdrain.c +../obj-ack//libc.a(_tcflow.o): _tcflow.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_tcflow.o _tcflow.c +../obj-ack//libc.a(_tcflush.o): _tcflush.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_tcflush.o _tcflush.c +../obj-ack//libc.a(_tcgetattr.o): _tcgetattr.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_tcgetattr.o _tcgetattr.c +../obj-ack//libc.a(_tcsendbreak.o): _tcsendbreak.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_tcsendbreak.o _tcsendbreak.c +../obj-ack//libc.a(_tcsetattr.o): _tcsetattr.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_tcsetattr.o _tcsetattr.c +../obj-ack//libc.a(_time.o): _time.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_time.o _time.c +../obj-ack//libc.a(_times.o): _times.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_times.o _times.c +../obj-ack//libc.a(_truncate.o): _truncate.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_truncate.o _truncate.c +../obj-ack//libc.a(_umask.o): _umask.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_umask.o _umask.c +../obj-ack//libc.a(_umount.o): _umount.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_umount.o _umount.c +../obj-ack//libc.a(_uname.o): _uname.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_uname.o _uname.c +../obj-ack//libc.a(_unlink.o): _unlink.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_unlink.o _unlink.c +../obj-ack//libc.a(_utime.o): _utime.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_utime.o _utime.c +../obj-ack//libc.a(_wait.o): _wait.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_wait.o _wait.c +../obj-ack//libc.a(_waitpid.o): _waitpid.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_waitpid.o _waitpid.c +../obj-ack//libc.a(_write.o): _write.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/_write.o _write.c +../obj-ack//libc.a(getloadavg.o): getloadavg.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/getloadavg.o getloadavg.c +../obj-ack//libc.a(getopt.o): getopt.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/getopt.o getopt.c +../obj-ack//libc.a(gettimeofday.o): gettimeofday.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/gettimeofday.o gettimeofday.c +../obj-ack//libc.a(priority.o): priority.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/priority.o priority.c +../obj-ack//libc.a(usleep.o): usleep.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./posix/usleep.o usleep.c + +all-gnu: ../obj-gnu/libc.a + +../obj-gnu/libc.a: ../obj-gnu/./posix/__exit.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_access.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_alarm.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_cfgetispeed.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_cfgetospeed.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_cfsetispeed.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_cfsetospeed.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_chdir.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_chmod.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_chown.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_chroot.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_close.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_closedir.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_creat.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_dup.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_dup2.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_execl.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_execle.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_execlp.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_execv.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_execve.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_execvp.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_fcntl.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_fork.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_fpathconf.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_fstat.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_fstatfs.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_fsync.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_getcwd.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_getegid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_geteuid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_getgid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_getgroups.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_getpgrp.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_getpid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_getppid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_getuid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_ioctl.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_isatty.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_kill.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_link.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_lseek.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_lstat.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_mkdir.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_mkfifo.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_mknod.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_mount.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_open.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_opendir.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_pathconf.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_pause.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_pipe.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_ptrace.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_read.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_readdir.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_readlink.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_rename.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_rewinddir.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_rmdir.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_select.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_setgid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_setsid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_setuid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_sigaction.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_sigpending.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_sigprocmask.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_sigreturn.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_sigset.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_sigsetjmp.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_sigsuspend.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_sleep.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_stat.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_stime.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_symlink.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_sync.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_tcdrain.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_tcflow.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_tcflush.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_tcgetattr.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_tcsendbreak.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_tcsetattr.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_time.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_times.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_truncate.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_umask.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_umount.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_uname.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_unlink.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_utime.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_wait.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_waitpid.o +../obj-gnu/libc.a: ../obj-gnu/./posix/_write.o +../obj-gnu/libc.a: ../obj-gnu/./posix/getloadavg.o +../obj-gnu/libc.a: ../obj-gnu/./posix/getopt.o +../obj-gnu/libc.a: ../obj-gnu/./posix/gettimeofday.o +../obj-gnu/libc.a: ../obj-gnu/./posix/priority.o +../obj-gnu/libc.a: ../obj-gnu/./posix/usleep.o + +../obj-gnu/libc.a: + gar cr ../obj-gnu/libc.a $? + +../obj-gnu/./posix/__exit.o: __exit.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/__exit.o __exit.c + +../obj-gnu/./posix/_access.o: _access.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_access.o _access.c + +../obj-gnu/./posix/_alarm.o: _alarm.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_alarm.o _alarm.c + +../obj-gnu/./posix/_cfgetispeed.o: _cfgetispeed.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_cfgetispeed.o _cfgetispeed.c + +../obj-gnu/./posix/_cfgetospeed.o: _cfgetospeed.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_cfgetospeed.o _cfgetospeed.c + +../obj-gnu/./posix/_cfsetispeed.o: _cfsetispeed.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_cfsetispeed.o _cfsetispeed.c + +../obj-gnu/./posix/_cfsetospeed.o: _cfsetospeed.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_cfsetospeed.o _cfsetospeed.c + +../obj-gnu/./posix/_chdir.o: _chdir.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_chdir.o _chdir.c + +../obj-gnu/./posix/_chmod.o: _chmod.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_chmod.o _chmod.c + +../obj-gnu/./posix/_chown.o: _chown.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_chown.o _chown.c + +../obj-gnu/./posix/_chroot.o: _chroot.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_chroot.o _chroot.c + +../obj-gnu/./posix/_close.o: _close.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_close.o _close.c + +../obj-gnu/./posix/_closedir.o: _closedir.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_closedir.o _closedir.c + +../obj-gnu/./posix/_creat.o: _creat.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_creat.o _creat.c + +../obj-gnu/./posix/_dup.o: _dup.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_dup.o _dup.c + +../obj-gnu/./posix/_dup2.o: _dup2.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_dup2.o _dup2.c + +../obj-gnu/./posix/_execl.o: _execl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_execl.o _execl.c + +../obj-gnu/./posix/_execle.o: _execle.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_execle.o _execle.c + +../obj-gnu/./posix/_execlp.o: _execlp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_execlp.o _execlp.c + +../obj-gnu/./posix/_execv.o: _execv.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_execv.o _execv.c + +../obj-gnu/./posix/_execve.o: _execve.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_execve.o _execve.c + +../obj-gnu/./posix/_execvp.o: _execvp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_execvp.o _execvp.c + +../obj-gnu/./posix/_fcntl.o: _fcntl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_fcntl.o _fcntl.c + +../obj-gnu/./posix/_fork.o: _fork.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_fork.o _fork.c + +../obj-gnu/./posix/_fpathconf.o: _fpathconf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_fpathconf.o _fpathconf.c + +../obj-gnu/./posix/_fstat.o: _fstat.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_fstat.o _fstat.c + +../obj-gnu/./posix/_fstatfs.o: _fstatfs.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_fstatfs.o _fstatfs.c + +../obj-gnu/./posix/_fsync.o: _fsync.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_fsync.o _fsync.c + +../obj-gnu/./posix/_getcwd.o: _getcwd.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_getcwd.o _getcwd.c + +../obj-gnu/./posix/_getegid.o: _getegid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_getegid.o _getegid.c + +../obj-gnu/./posix/_geteuid.o: _geteuid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_geteuid.o _geteuid.c + +../obj-gnu/./posix/_getgid.o: _getgid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_getgid.o _getgid.c + +../obj-gnu/./posix/_getgroups.o: _getgroups.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_getgroups.o _getgroups.c + +../obj-gnu/./posix/_getpgrp.o: _getpgrp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_getpgrp.o _getpgrp.c + +../obj-gnu/./posix/_getpid.o: _getpid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_getpid.o _getpid.c + +../obj-gnu/./posix/_getppid.o: _getppid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_getppid.o _getppid.c + +../obj-gnu/./posix/_getuid.o: _getuid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_getuid.o _getuid.c + +../obj-gnu/./posix/_ioctl.o: _ioctl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_ioctl.o _ioctl.c + +../obj-gnu/./posix/_isatty.o: _isatty.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_isatty.o _isatty.c + +../obj-gnu/./posix/_kill.o: _kill.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_kill.o _kill.c + +../obj-gnu/./posix/_link.o: _link.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_link.o _link.c + +../obj-gnu/./posix/_lseek.o: _lseek.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_lseek.o _lseek.c + +../obj-gnu/./posix/_lstat.o: _lstat.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_lstat.o _lstat.c + +../obj-gnu/./posix/_mkdir.o: _mkdir.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_mkdir.o _mkdir.c + +../obj-gnu/./posix/_mkfifo.o: _mkfifo.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_mkfifo.o _mkfifo.c + +../obj-gnu/./posix/_mknod.o: _mknod.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_mknod.o _mknod.c + +../obj-gnu/./posix/_mount.o: _mount.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_mount.o _mount.c + +../obj-gnu/./posix/_open.o: _open.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_open.o _open.c + +../obj-gnu/./posix/_opendir.o: _opendir.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_opendir.o _opendir.c + +../obj-gnu/./posix/_pathconf.o: _pathconf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_pathconf.o _pathconf.c + +../obj-gnu/./posix/_pause.o: _pause.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_pause.o _pause.c + +../obj-gnu/./posix/_pipe.o: _pipe.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_pipe.o _pipe.c + +../obj-gnu/./posix/_ptrace.o: _ptrace.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_ptrace.o _ptrace.c + +../obj-gnu/./posix/_read.o: _read.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_read.o _read.c + +../obj-gnu/./posix/_readdir.o: _readdir.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_readdir.o _readdir.c + +../obj-gnu/./posix/_readlink.o: _readlink.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_readlink.o _readlink.c + +../obj-gnu/./posix/_rename.o: _rename.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_rename.o _rename.c + +../obj-gnu/./posix/_rewinddir.o: _rewinddir.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_rewinddir.o _rewinddir.c + +../obj-gnu/./posix/_rmdir.o: _rmdir.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_rmdir.o _rmdir.c + +../obj-gnu/./posix/_select.o: _select.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_select.o _select.c + +../obj-gnu/./posix/_setgid.o: _setgid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_setgid.o _setgid.c + +../obj-gnu/./posix/_setsid.o: _setsid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_setsid.o _setsid.c + +../obj-gnu/./posix/_setuid.o: _setuid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_setuid.o _setuid.c + +../obj-gnu/./posix/_sigaction.o: _sigaction.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_sigaction.o _sigaction.c + +../obj-gnu/./posix/_sigpending.o: _sigpending.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_sigpending.o _sigpending.c + +../obj-gnu/./posix/_sigprocmask.o: _sigprocmask.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_sigprocmask.o _sigprocmask.c + +../obj-gnu/./posix/_sigreturn.o: _sigreturn.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_sigreturn.o _sigreturn.c + +../obj-gnu/./posix/_sigset.o: _sigset.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_sigset.o _sigset.c + +../obj-gnu/./posix/_sigsetjmp.o: _sigsetjmp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_sigsetjmp.o _sigsetjmp.c + +../obj-gnu/./posix/_sigsuspend.o: _sigsuspend.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_sigsuspend.o _sigsuspend.c + +../obj-gnu/./posix/_sleep.o: _sleep.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_sleep.o _sleep.c + +../obj-gnu/./posix/_stat.o: _stat.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_stat.o _stat.c + +../obj-gnu/./posix/_stime.o: _stime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_stime.o _stime.c + +../obj-gnu/./posix/_symlink.o: _symlink.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_symlink.o _symlink.c + +../obj-gnu/./posix/_sync.o: _sync.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_sync.o _sync.c + +../obj-gnu/./posix/_tcdrain.o: _tcdrain.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_tcdrain.o _tcdrain.c + +../obj-gnu/./posix/_tcflow.o: _tcflow.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_tcflow.o _tcflow.c + +../obj-gnu/./posix/_tcflush.o: _tcflush.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_tcflush.o _tcflush.c + +../obj-gnu/./posix/_tcgetattr.o: _tcgetattr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_tcgetattr.o _tcgetattr.c + +../obj-gnu/./posix/_tcsendbreak.o: _tcsendbreak.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_tcsendbreak.o _tcsendbreak.c + +../obj-gnu/./posix/_tcsetattr.o: _tcsetattr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_tcsetattr.o _tcsetattr.c + +../obj-gnu/./posix/_time.o: _time.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_time.o _time.c + +../obj-gnu/./posix/_times.o: _times.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_times.o _times.c + +../obj-gnu/./posix/_truncate.o: _truncate.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_truncate.o _truncate.c + +../obj-gnu/./posix/_umask.o: _umask.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_umask.o _umask.c + +../obj-gnu/./posix/_umount.o: _umount.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_umount.o _umount.c + +../obj-gnu/./posix/_uname.o: _uname.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_uname.o _uname.c + +../obj-gnu/./posix/_unlink.o: _unlink.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_unlink.o _unlink.c + +../obj-gnu/./posix/_utime.o: _utime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_utime.o _utime.c + +../obj-gnu/./posix/_wait.o: _wait.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_wait.o _wait.c + +../obj-gnu/./posix/_waitpid.o: _waitpid.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_waitpid.o _waitpid.c + +../obj-gnu/./posix/_write.o: _write.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/_write.o _write.c + +../obj-gnu/./posix/getloadavg.o: getloadavg.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/getloadavg.o getloadavg.c + +../obj-gnu/./posix/getopt.o: getopt.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/getopt.o getopt.c + +../obj-gnu/./posix/gettimeofday.o: gettimeofday.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/gettimeofday.o gettimeofday.c + +../obj-gnu/./posix/priority.o: priority.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/priority.o priority.c + +../obj-gnu/./posix/usleep.o: usleep.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./posix/usleep.o usleep.c + + + + +clean:: + rm -f ../obj-ack//./posix/* + rm -f ../obj-gnu/./posix/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/posix: Makefile.in diff -ur oldsrc/lib/posix/_chdir.c src/lib/posix/_chdir.c --- oldsrc/lib/posix/_chdir.c 2005-07-27 22:48:48.000000000 +0400 +++ src/lib/posix/_chdir.c 2006-01-20 15:44:16.000000000 +0300 @@ -1,5 +1,6 @@ #include #define chdir _chdir +#define fchdir _fchdir #include PUBLIC int chdir(name) @@ -11,7 +12,6 @@ return(_syscall(FS, CHDIR, &m)); } -#if 0 PUBLIC int fchdir(fd) int fd; { @@ -20,5 +20,3 @@ m.m1_i1 = fd; return(_syscall(FS, FCHDIR, &m)); } -#endif - diff -ur oldsrc/lib/posix/_fcntl.c src/lib/posix/_fcntl.c --- oldsrc/lib/posix/_fcntl.c 2005-04-21 18:56:30.000000000 +0400 +++ src/lib/posix/_fcntl.c 2006-01-11 20:14:50.000000000 +0300 @@ -32,6 +32,7 @@ case F_GETLK: case F_SETLK: case F_SETLKW: + case F_FREESP: m.m1_p1 = (char *) va_arg(argp, struct flock *); break; } Only in src/lib/posix: _lstat.c Only in src/lib/posix: _readlink.c diff -ur oldsrc/lib/posix/_setgid.c src/lib/posix/_setgid.c --- oldsrc/lib/posix/_setgid.c 2005-04-21 18:56:32.000000000 +0400 +++ src/lib/posix/_setgid.c 2005-12-13 12:48:28.000000000 +0300 @@ -1,5 +1,6 @@ #include #define setgid _setgid +#define setegid _setegid #include PUBLIC int setgid(grp) @@ -10,3 +11,12 @@ m.m1_i1 = (int) grp; return(_syscall(MM, SETGID, &m)); } + +PUBLIC int setegid(grp) +gid_t grp; +{ + message m; + + m.m1_i1 = (int) grp; + return(_syscall(MM, SETEGID, &m)); +} diff -ur oldsrc/lib/posix/_setuid.c src/lib/posix/_setuid.c --- oldsrc/lib/posix/_setuid.c 2005-06-23 15:07:31.000000000 +0400 +++ src/lib/posix/_setuid.c 2005-12-13 12:48:28.000000000 +0300 @@ -1,5 +1,6 @@ #include #define setuid _setuid +#define seteuid _seteuid #include PUBLIC int setuid(usr) @@ -10,3 +11,12 @@ m.m1_i1 = usr; return(_syscall(MM, SETUID, &m)); } + +PUBLIC int seteuid(usr) +_mnx_Uid_t usr; +{ + message m; + + m.m1_i1 = usr; + return(_syscall(MM, SETEUID, &m)); +} Only in src/lib/posix: _symlink.c Only in src/lib/posix: _truncate.c Only in src/lib/posix: getloadavg.c Only in oldsrc/lib/posix: lstat.c Only in oldsrc/lib/posix: readlink.c Only in oldsrc/lib/posix: symlink.c Only in src/lib/regex: .depend-ack Only in src/lib/regex: .depend-gnu Only in src/lib/regex: Makedepend-ack Only in src/lib/regex: Makedepend-gnu diff -ur oldsrc/lib/regex/Makefile src/lib/regex/Makefile --- oldsrc/lib/regex/Makefile 2005-10-21 15:19:34.000000000 +0400 +++ src/lib/regex/Makefile 2006-02-20 19:10:47.000000000 +0300 @@ -1,13 +1,73 @@ -# Makefile for lib/regex. +#Generated from ./regex/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./regex ../obj-ack/ ../obj-gnu -libc_OBJECTS = \ - regcomp.o \ - regerror.o \ - regexec.o \ - regfree.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./regex ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libc.a + +../obj-ack//libc.a: ../obj-ack//libc.a(regcomp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(regerror.o) +../obj-ack//libc.a: ../obj-ack//libc.a(regexec.o) +../obj-ack//libc.a: ../obj-ack//libc.a(regfree.o) + +../obj-ack//libc.a: + ar cr ../obj-ack//libc.a ../obj-ack//./regex/*.o + rm ../obj-ack//./regex/*.o + +../obj-ack//libc.a(regcomp.o): regcomp.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./regex/regcomp.o regcomp.c +../obj-ack//libc.a(regerror.o): regerror.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./regex/regerror.o regerror.c +../obj-ack//libc.a(regexec.o): regexec.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./regex/regexec.o regexec.c +../obj-ack//libc.a(regfree.o): regfree.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./regex/regfree.o regfree.c + +all-gnu: ../obj-gnu/libc.a + +../obj-gnu/libc.a: ../obj-gnu/./regex/regcomp.o +../obj-gnu/libc.a: ../obj-gnu/./regex/regerror.o +../obj-gnu/libc.a: ../obj-gnu/./regex/regexec.o +../obj-gnu/libc.a: ../obj-gnu/./regex/regfree.o + +../obj-gnu/libc.a: + gar cr ../obj-gnu/libc.a $? + +../obj-gnu/./regex/regcomp.o: regcomp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./regex/regcomp.o regcomp.c + +../obj-gnu/./regex/regerror.o: regerror.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./regex/regerror.o regerror.c + +../obj-gnu/./regex/regexec.o: regexec.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./regex/regexec.o regexec.c + +../obj-gnu/./regex/regfree.o: regfree.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./regex/regfree.o regfree.c + + + + +clean:: + rm -f ../obj-ack//./regex/* + rm -f ../obj-gnu/./regex/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/regex: Makefile.in Only in oldsrc/lib: rts Only in src/lib/stdio: .depend-ack Only in src/lib/stdio: .depend-gnu Only in src/lib/stdio: Makedepend-ack Only in src/lib/stdio: Makedepend-gnu diff -ur oldsrc/lib/stdio/Makefile src/lib/stdio/Makefile --- oldsrc/lib/stdio/Makefile 2005-10-21 15:19:34.000000000 +0400 +++ src/lib/stdio/Makefile 2006-02-20 19:10:48.000000000 +0300 @@ -1,60 +1,402 @@ -# Makefile for lib/stdio. +#Generated from ./stdio/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libc +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./stdio ../obj-ack/ ../obj-gnu -libc_OBJECTS = \ - clearerr.o \ - data.o \ - doprnt.o \ - doscan.o \ - ecvt.o \ - fclose.o \ - feof.o \ - ferror.o \ - fflush.o \ - fgetc.o \ - fgetpos.o \ - fgets.o \ - fileno.o \ - fillbuf.o \ - flushbuf.o \ - fopen.o \ - fprintf.o \ - fputc.o \ - fputs.o \ - fread.o \ - freopen.o \ - fscanf.o \ - fseek.o \ - fsetpos.o \ - ftell.o \ - fwrite.o \ - getc.o \ - getchar.o \ - gets.o \ - icompute.o \ - mktemp.o \ - perror.o \ - printf.o \ - putc.o \ - putchar.o \ - puts.o \ - remove.o \ - rewind.o \ - scanf.o \ - setbuf.o \ - setvbuf.o \ - sprintf.o \ - sscanf.o \ - tmpfile.o \ - tmpnam.o \ - ungetc.o \ - vfprintf.o \ - vprintf.o \ - vscanf.o \ - vsprintf.o \ - vsscanf.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./stdio ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libc.a + +../obj-ack//libc.a: ../obj-ack//libc.a(clearerr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(data.o) +../obj-ack//libc.a: ../obj-ack//libc.a(doprnt.o) +../obj-ack//libc.a: ../obj-ack//libc.a(doscan.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ecvt.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fclose.o) +../obj-ack//libc.a: ../obj-ack//libc.a(feof.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ferror.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fflush.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fgetc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fgetpos.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fgets.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fileno.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fillbuf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(flushbuf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fopen.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fprintf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fputc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fputs.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fread.o) +../obj-ack//libc.a: ../obj-ack//libc.a(freopen.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fscanf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fseek.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fsetpos.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ftell.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fwrite.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getchar.o) +../obj-ack//libc.a: ../obj-ack//libc.a(gets.o) +../obj-ack//libc.a: ../obj-ack//libc.a(icompute.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mktemp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(perror.o) +../obj-ack//libc.a: ../obj-ack//libc.a(printf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(putc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(putchar.o) +../obj-ack//libc.a: ../obj-ack//libc.a(puts.o) +../obj-ack//libc.a: ../obj-ack//libc.a(remove.o) +../obj-ack//libc.a: ../obj-ack//libc.a(rewind.o) +../obj-ack//libc.a: ../obj-ack//libc.a(scanf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(setbuf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(setvbuf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sprintf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sscanf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tmpfile.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tmpnam.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ungetc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(vfprintf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(vprintf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(vscanf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(vsprintf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(vsscanf.o) + +../obj-ack//libc.a: + ar cr ../obj-ack//libc.a ../obj-ack//./stdio/*.o + rm ../obj-ack//./stdio/*.o + +../obj-ack//libc.a(clearerr.o): clearerr.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/clearerr.o clearerr.c +../obj-ack//libc.a(data.o): data.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/data.o data.c +../obj-ack//libc.a(doprnt.o): doprnt.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/doprnt.o doprnt.c +../obj-ack//libc.a(doscan.o): doscan.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/doscan.o doscan.c +../obj-ack//libc.a(ecvt.o): ecvt.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/ecvt.o ecvt.c +../obj-ack//libc.a(fclose.o): fclose.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fclose.o fclose.c +../obj-ack//libc.a(feof.o): feof.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/feof.o feof.c +../obj-ack//libc.a(ferror.o): ferror.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/ferror.o ferror.c +../obj-ack//libc.a(fflush.o): fflush.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fflush.o fflush.c +../obj-ack//libc.a(fgetc.o): fgetc.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fgetc.o fgetc.c +../obj-ack//libc.a(fgetpos.o): fgetpos.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fgetpos.o fgetpos.c +../obj-ack//libc.a(fgets.o): fgets.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fgets.o fgets.c +../obj-ack//libc.a(fileno.o): fileno.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fileno.o fileno.c +../obj-ack//libc.a(fillbuf.o): fillbuf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fillbuf.o fillbuf.c +../obj-ack//libc.a(flushbuf.o): flushbuf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/flushbuf.o flushbuf.c +../obj-ack//libc.a(fopen.o): fopen.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fopen.o fopen.c +../obj-ack//libc.a(fprintf.o): fprintf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fprintf.o fprintf.c +../obj-ack//libc.a(fputc.o): fputc.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fputc.o fputc.c +../obj-ack//libc.a(fputs.o): fputs.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fputs.o fputs.c +../obj-ack//libc.a(fread.o): fread.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fread.o fread.c +../obj-ack//libc.a(freopen.o): freopen.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/freopen.o freopen.c +../obj-ack//libc.a(fscanf.o): fscanf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fscanf.o fscanf.c +../obj-ack//libc.a(fseek.o): fseek.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fseek.o fseek.c +../obj-ack//libc.a(fsetpos.o): fsetpos.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fsetpos.o fsetpos.c +../obj-ack//libc.a(ftell.o): ftell.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/ftell.o ftell.c +../obj-ack//libc.a(fwrite.o): fwrite.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/fwrite.o fwrite.c +../obj-ack//libc.a(getc.o): getc.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/getc.o getc.c +../obj-ack//libc.a(getchar.o): getchar.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/getchar.o getchar.c +../obj-ack//libc.a(gets.o): gets.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/gets.o gets.c +../obj-ack//libc.a(icompute.o): icompute.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/icompute.o icompute.c +../obj-ack//libc.a(mktemp.o): mktemp.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/mktemp.o mktemp.c +../obj-ack//libc.a(perror.o): perror.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/perror.o perror.c +../obj-ack//libc.a(printf.o): printf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/printf.o printf.c +../obj-ack//libc.a(putc.o): putc.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/putc.o putc.c +../obj-ack//libc.a(putchar.o): putchar.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/putchar.o putchar.c +../obj-ack//libc.a(puts.o): puts.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/puts.o puts.c +../obj-ack//libc.a(remove.o): remove.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/remove.o remove.c +../obj-ack//libc.a(rewind.o): rewind.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/rewind.o rewind.c +../obj-ack//libc.a(scanf.o): scanf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/scanf.o scanf.c +../obj-ack//libc.a(setbuf.o): setbuf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/setbuf.o setbuf.c +../obj-ack//libc.a(setvbuf.o): setvbuf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/setvbuf.o setvbuf.c +../obj-ack//libc.a(sprintf.o): sprintf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/sprintf.o sprintf.c +../obj-ack//libc.a(sscanf.o): sscanf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/sscanf.o sscanf.c +../obj-ack//libc.a(tmpfile.o): tmpfile.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/tmpfile.o tmpfile.c +../obj-ack//libc.a(tmpnam.o): tmpnam.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/tmpnam.o tmpnam.c +../obj-ack//libc.a(ungetc.o): ungetc.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/ungetc.o ungetc.c +../obj-ack//libc.a(vfprintf.o): vfprintf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/vfprintf.o vfprintf.c +../obj-ack//libc.a(vprintf.o): vprintf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/vprintf.o vprintf.c +../obj-ack//libc.a(vscanf.o): vscanf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/vscanf.o vscanf.c +../obj-ack//libc.a(vsprintf.o): vsprintf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/vsprintf.o vsprintf.c +../obj-ack//libc.a(vsscanf.o): vsscanf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./stdio/vsscanf.o vsscanf.c + +all-gnu: ../obj-gnu/libc.a + +../obj-gnu/libc.a: ../obj-gnu/./stdio/clearerr.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/data.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/doprnt.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/doscan.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/ecvt.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fclose.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/feof.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/ferror.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fflush.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fgetc.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fgetpos.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fgets.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fileno.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fillbuf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/flushbuf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fopen.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fprintf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fputc.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fputs.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fread.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/freopen.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fscanf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fseek.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fsetpos.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/ftell.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/fwrite.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/getc.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/getchar.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/gets.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/icompute.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/mktemp.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/perror.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/printf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/putc.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/putchar.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/puts.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/remove.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/rewind.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/scanf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/setbuf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/setvbuf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/sprintf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/sscanf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/tmpfile.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/tmpnam.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/ungetc.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/vfprintf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/vprintf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/vscanf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/vsprintf.o +../obj-gnu/libc.a: ../obj-gnu/./stdio/vsscanf.o + +../obj-gnu/libc.a: + gar cr ../obj-gnu/libc.a $? + +../obj-gnu/./stdio/clearerr.o: clearerr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/clearerr.o clearerr.c + +../obj-gnu/./stdio/data.o: data.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/data.o data.c + +../obj-gnu/./stdio/doprnt.o: doprnt.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/doprnt.o doprnt.c + +../obj-gnu/./stdio/doscan.o: doscan.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/doscan.o doscan.c + +../obj-gnu/./stdio/ecvt.o: ecvt.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/ecvt.o ecvt.c + +../obj-gnu/./stdio/fclose.o: fclose.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fclose.o fclose.c + +../obj-gnu/./stdio/feof.o: feof.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/feof.o feof.c + +../obj-gnu/./stdio/ferror.o: ferror.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/ferror.o ferror.c + +../obj-gnu/./stdio/fflush.o: fflush.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fflush.o fflush.c + +../obj-gnu/./stdio/fgetc.o: fgetc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fgetc.o fgetc.c + +../obj-gnu/./stdio/fgetpos.o: fgetpos.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fgetpos.o fgetpos.c + +../obj-gnu/./stdio/fgets.o: fgets.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fgets.o fgets.c + +../obj-gnu/./stdio/fileno.o: fileno.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fileno.o fileno.c + +../obj-gnu/./stdio/fillbuf.o: fillbuf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fillbuf.o fillbuf.c + +../obj-gnu/./stdio/flushbuf.o: flushbuf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/flushbuf.o flushbuf.c + +../obj-gnu/./stdio/fopen.o: fopen.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fopen.o fopen.c + +../obj-gnu/./stdio/fprintf.o: fprintf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fprintf.o fprintf.c + +../obj-gnu/./stdio/fputc.o: fputc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fputc.o fputc.c + +../obj-gnu/./stdio/fputs.o: fputs.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fputs.o fputs.c + +../obj-gnu/./stdio/fread.o: fread.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fread.o fread.c + +../obj-gnu/./stdio/freopen.o: freopen.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/freopen.o freopen.c + +../obj-gnu/./stdio/fscanf.o: fscanf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fscanf.o fscanf.c + +../obj-gnu/./stdio/fseek.o: fseek.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fseek.o fseek.c + +../obj-gnu/./stdio/fsetpos.o: fsetpos.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fsetpos.o fsetpos.c + +../obj-gnu/./stdio/ftell.o: ftell.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/ftell.o ftell.c + +../obj-gnu/./stdio/fwrite.o: fwrite.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/fwrite.o fwrite.c + +../obj-gnu/./stdio/getc.o: getc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/getc.o getc.c + +../obj-gnu/./stdio/getchar.o: getchar.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/getchar.o getchar.c + +../obj-gnu/./stdio/gets.o: gets.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/gets.o gets.c + +../obj-gnu/./stdio/icompute.o: icompute.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/icompute.o icompute.c + +../obj-gnu/./stdio/mktemp.o: mktemp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/mktemp.o mktemp.c + +../obj-gnu/./stdio/perror.o: perror.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/perror.o perror.c + +../obj-gnu/./stdio/printf.o: printf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/printf.o printf.c + +../obj-gnu/./stdio/putc.o: putc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/putc.o putc.c + +../obj-gnu/./stdio/putchar.o: putchar.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/putchar.o putchar.c + +../obj-gnu/./stdio/puts.o: puts.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/puts.o puts.c + +../obj-gnu/./stdio/remove.o: remove.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/remove.o remove.c + +../obj-gnu/./stdio/rewind.o: rewind.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/rewind.o rewind.c + +../obj-gnu/./stdio/scanf.o: scanf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/scanf.o scanf.c + +../obj-gnu/./stdio/setbuf.o: setbuf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/setbuf.o setbuf.c + +../obj-gnu/./stdio/setvbuf.o: setvbuf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/setvbuf.o setvbuf.c + +../obj-gnu/./stdio/sprintf.o: sprintf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/sprintf.o sprintf.c + +../obj-gnu/./stdio/sscanf.o: sscanf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/sscanf.o sscanf.c + +../obj-gnu/./stdio/tmpfile.o: tmpfile.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/tmpfile.o tmpfile.c + +../obj-gnu/./stdio/tmpnam.o: tmpnam.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/tmpnam.o tmpnam.c + +../obj-gnu/./stdio/ungetc.o: ungetc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/ungetc.o ungetc.c + +../obj-gnu/./stdio/vfprintf.o: vfprintf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/vfprintf.o vfprintf.c + +../obj-gnu/./stdio/vprintf.o: vprintf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/vprintf.o vprintf.c + +../obj-gnu/./stdio/vscanf.o: vscanf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/vscanf.o vscanf.c + +../obj-gnu/./stdio/vsprintf.o: vsprintf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/vsprintf.o vsprintf.c + +../obj-gnu/./stdio/vsscanf.o: vsscanf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./stdio/vsscanf.o vsscanf.c + + + + +clean:: + rm -f ../obj-ack//./stdio/* + rm -f ../obj-gnu/./stdio/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/stdio: Makefile.in diff -ur oldsrc/lib/stdio/fflush.c src/lib/stdio/fflush.c --- oldsrc/lib/stdio/fflush.c 2005-09-05 21:17:58.000000000 +0400 +++ src/lib/stdio/fflush.c 2006-02-02 19:59:07.000000000 +0300 @@ -1,10 +1,11 @@ /* * fflush.c - flush stream(s) */ -/* $Header: /cvsup/minix/src/lib/stdio/fflush.c,v 1.2 2005/09/05 17:17:58 beng Exp $ */ +/* $Header: /cvsup/minix/src/lib/stdio/fflush.c,v 1.3 2006/02/02 16:59:07 beng Exp $ */ #include #include +#include #include "loc_incl.h" ssize_t _write(int d, const char *buf, size_t nbytes); @@ -36,10 +37,12 @@ if (stream->_buf && !io_testflag(stream,_IONBF)) adjust = -stream->_count; stream->_count = 0; - if (_lseek(fileno(stream), (off_t) adjust, SEEK_CUR) == -1) { + if (_lseek(fileno(stream), (off_t) adjust, SEEK_CUR) == -1 && + errno != ESPIPE) { stream->_flags |= _IOERR; return EOF; } + errno = 0; if (io_testflag(stream, _IOWRITE)) stream->_flags &= ~(_IOREADING | _IOWRITING); stream->_ptr = stream->_buf; diff -ur oldsrc/lib/stdio/fopen.c src/lib/stdio/fopen.c --- oldsrc/lib/stdio/fopen.c 2005-09-05 21:17:58.000000000 +0400 +++ src/lib/stdio/fopen.c 2006-02-02 19:59:07.000000000 +0300 @@ -1,7 +1,7 @@ /* * fopen.c - open a stream */ -/* $Header: /cvsup/minix/src/lib/stdio/fopen.c,v 1.3 2005/09/05 17:17:58 beng Exp $ */ +/* $Header: /cvsup/minix/src/lib/stdio/fopen.c,v 1.4 2006/02/02 16:59:07 beng Exp $ */ #if defined(_POSIX_SOURCE) #include @@ -110,7 +110,7 @@ return (FILE *)NULL; } - if ( st.st_mode & S_IFIFO ) flags |= _IOFIFO; + if ( S_ISFIFO(st.st_mode) ) flags |= _IOFIFO; if (( stream = (FILE *) malloc(sizeof(FILE))) == NULL ) { _close(fd); diff -ur oldsrc/lib/stdio/freopen.c src/lib/stdio/freopen.c --- oldsrc/lib/stdio/freopen.c 2005-09-05 21:17:58.000000000 +0400 +++ src/lib/stdio/freopen.c 2006-02-02 19:59:07.000000000 +0300 @@ -1,7 +1,7 @@ /* * freopen.c - open a file and associate a stream with it */ -/* $Header: /cvsup/minix/src/lib/stdio/freopen.c,v 1.3 2005/09/05 17:17:58 beng Exp $ */ +/* $Header: /cvsup/minix/src/lib/stdio/freopen.c,v 1.4 2006/02/02 16:59:07 beng Exp $ */ #if defined(_POSIX_SOURCE) #include @@ -87,7 +87,7 @@ } if ( fstat( fd, &st ) == 0 ) { - if ( st.st_mode & S_IFIFO ) flags |= _IOFIFO; + if ( S_ISFIFO(st.st_mode) ) flags |= _IOFIFO; } else { goto loser; } Only in src/lib/syscall: .depend-ack Only in src/lib/syscall: .depend-gnu Only in src/lib/syscall: Makedepend-ack Only in src/lib/syscall: Makedepend-gnu diff -ur oldsrc/lib/syscall/Makefile src/lib/syscall/Makefile --- oldsrc/lib/syscall/Makefile 2005-10-21 15:19:34.000000000 +0400 +++ src/lib/syscall/Makefile 2006-02-20 19:10:49.000000000 +0300 @@ -1,110 +1,901 @@ -# Makefile for lib/syscall. +#Generated from ./syscall/Makefile.in +all: all-ack -LIBRARIES = libc +all-ack: +all-gnu: -libc_OBJECTS = \ - _exit.o \ - access.o \ - alarm.o \ - allocmem.o \ - freemem.o \ - brk.o \ - cfgetispeed.o \ - cfgetospeed.o \ - cfsetispeed.o \ - cfsetospeed.o \ - chdir.o \ - chmod.o \ - chown.o \ - chroot.o \ - close.o \ - closedir.o \ - creat.o \ - devctl.o \ - dup.o \ - dup2.o \ - execl.o \ - execle.o \ - execlp.o \ - execv.o \ - execve.o \ - execvp.o \ - fcntl.o \ - fork.o \ - fpathconf.o \ - fstat.o \ - fstatfs.o \ - getcwd.o \ - getegid.o \ - geteuid.o \ - getgid.o \ - getgroups.o \ - getnpid.o \ - getnprocnr.o \ - getpprocnr.o \ - getpgrp.o \ - getpid.o \ - getppid.o \ - getuid.o \ - getprocnr.o \ - getsysinfo.o \ - findproc.o \ - ioctl.o \ - isatty.o \ - kill.o \ - link.o \ - lseek.o \ - mkdir.o \ - mkfifo.o \ - mknod.o \ - mount.o \ - open.o \ - opendir.o \ - pathconf.o \ - pause.o \ - pipe.o \ - ptrace.o \ - read.o \ - readdir.o \ - reboot.o \ - rename.o \ - rewinddir.o \ - rmdir.o \ - sbrk.o \ - seekdir.o \ - setgid.o \ - setsid.o \ - setuid.o \ - sigaction.o \ - sigaddset.o \ - sigdelset.o \ - sigemptyset.o \ - sigfillset.o \ - sigismember.o \ - sigpending.o \ - sigprocmask.o \ - sigreturn.o \ - sigsuspend.o \ - sleep.o \ - stat.o \ - stime.o \ - sync.o \ - svrctl.o \ - tcdrain.o \ - tcflow.o \ - tcflush.o \ - tcgetattr.o \ - tcsendbreak.o \ - tcsetattr.o \ - time.o \ - times.o \ - umask.o \ - umount.o \ - uname.o \ - unlink.o \ - utime.o \ - wait.o \ - waitpid.o \ - write.o \ +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./syscall ../obj-ack/ ../obj-gnu -include ../Makefile.inc +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./syscall ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +depend: depend-ack +all-ack: ../obj-ack//libc.a + +../obj-ack//libc.a: ../obj-ack//libc.a(_exit.o) +../obj-ack//libc.a: ../obj-ack//libc.a(access.o) +../obj-ack//libc.a: ../obj-ack//libc.a(alarm.o) +../obj-ack//libc.a: ../obj-ack//libc.a(allocmem.o) +../obj-ack//libc.a: ../obj-ack//libc.a(brk.o) +../obj-ack//libc.a: ../obj-ack//libc.a(cfgetispeed.o) +../obj-ack//libc.a: ../obj-ack//libc.a(cfgetospeed.o) +../obj-ack//libc.a: ../obj-ack//libc.a(cfsetispeed.o) +../obj-ack//libc.a: ../obj-ack//libc.a(cfsetospeed.o) +../obj-ack//libc.a: ../obj-ack//libc.a(chdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(chmod.o) +../obj-ack//libc.a: ../obj-ack//libc.a(chown.o) +../obj-ack//libc.a: ../obj-ack//libc.a(chroot.o) +../obj-ack//libc.a: ../obj-ack//libc.a(close.o) +../obj-ack//libc.a: ../obj-ack//libc.a(closedir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(creat.o) +../obj-ack//libc.a: ../obj-ack//libc.a(devctl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(dup.o) +../obj-ack//libc.a: ../obj-ack//libc.a(dup2.o) +../obj-ack//libc.a: ../obj-ack//libc.a(execl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(execle.o) +../obj-ack//libc.a: ../obj-ack//libc.a(execlp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(execv.o) +../obj-ack//libc.a: ../obj-ack//libc.a(execve.o) +../obj-ack//libc.a: ../obj-ack//libc.a(execvp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fcntl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(findproc.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fork.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fpathconf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(freemem.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fstat.o) +../obj-ack//libc.a: ../obj-ack//libc.a(fstatfs.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getcwd.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getegid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(geteuid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getgid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getgroups.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getnpid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getnprocnr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getpgrp.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getpid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getppid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getpprocnr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getprocnr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getsysinfo.o) +../obj-ack//libc.a: ../obj-ack//libc.a(getuid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ioctl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(isatty.o) +../obj-ack//libc.a: ../obj-ack//libc.a(kill.o) +../obj-ack//libc.a: ../obj-ack//libc.a(link.o) +../obj-ack//libc.a: ../obj-ack//libc.a(lseek.o) +../obj-ack//libc.a: ../obj-ack//libc.a(lstat.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mkdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mkfifo.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mknod.o) +../obj-ack//libc.a: ../obj-ack//libc.a(mount.o) +../obj-ack//libc.a: ../obj-ack//libc.a(open.o) +../obj-ack//libc.a: ../obj-ack//libc.a(opendir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(pathconf.o) +../obj-ack//libc.a: ../obj-ack//libc.a(pause.o) +../obj-ack//libc.a: ../obj-ack//libc.a(pipe.o) +../obj-ack//libc.a: ../obj-ack//libc.a(ptrace.o) +../obj-ack//libc.a: ../obj-ack//libc.a(read.o) +../obj-ack//libc.a: ../obj-ack//libc.a(readdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(readlink.o) +../obj-ack//libc.a: ../obj-ack//libc.a(reboot.o) +../obj-ack//libc.a: ../obj-ack//libc.a(rename.o) +../obj-ack//libc.a: ../obj-ack//libc.a(rewinddir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(rmdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sbrk.o) +../obj-ack//libc.a: ../obj-ack//libc.a(seekdir.o) +../obj-ack//libc.a: ../obj-ack//libc.a(setgid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(setsid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(setuid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigaction.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigaddset.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigdelset.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigemptyset.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigfillset.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigismember.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigpending.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigprocmask.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigreturn.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sigsuspend.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sleep.o) +../obj-ack//libc.a: ../obj-ack//libc.a(stat.o) +../obj-ack//libc.a: ../obj-ack//libc.a(stime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(svrctl.o) +../obj-ack//libc.a: ../obj-ack//libc.a(symlink.o) +../obj-ack//libc.a: ../obj-ack//libc.a(sync.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tcdrain.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tcflow.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tcflush.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tcgetattr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tcsendbreak.o) +../obj-ack//libc.a: ../obj-ack//libc.a(tcsetattr.o) +../obj-ack//libc.a: ../obj-ack//libc.a(time.o) +../obj-ack//libc.a: ../obj-ack//libc.a(times.o) +../obj-ack//libc.a: ../obj-ack//libc.a(truncate.o) +../obj-ack//libc.a: ../obj-ack//libc.a(umask.o) +../obj-ack//libc.a: ../obj-ack//libc.a(umount.o) +../obj-ack//libc.a: ../obj-ack//libc.a(uname.o) +../obj-ack//libc.a: ../obj-ack//libc.a(unlink.o) +../obj-ack//libc.a: ../obj-ack//libc.a(utime.o) +../obj-ack//libc.a: ../obj-ack//libc.a(wait.o) +../obj-ack//libc.a: ../obj-ack//libc.a(waitpid.o) +../obj-ack//libc.a: ../obj-ack//libc.a(write.o) + +../obj-ack//libc.a: + ar cr ../obj-ack//libc.a ../obj-ack//./syscall/*.o + rm ../obj-ack//./syscall/*.o + +../obj-ack//libc.a(_exit.o): _exit.s + cc -c -o ../obj-ack//./syscall/_exit.o _exit.s +../obj-ack//libc.a(access.o): access.s + cc -c -o ../obj-ack//./syscall/access.o access.s +../obj-ack//libc.a(alarm.o): alarm.s + cc -c -o ../obj-ack//./syscall/alarm.o alarm.s +../obj-ack//libc.a(allocmem.o): allocmem.s + cc -c -o ../obj-ack//./syscall/allocmem.o allocmem.s +../obj-ack//libc.a(brk.o): brk.s + cc -c -o ../obj-ack//./syscall/brk.o brk.s +../obj-ack//libc.a(cfgetispeed.o): cfgetispeed.s + cc -c -o ../obj-ack//./syscall/cfgetispeed.o cfgetispeed.s +../obj-ack//libc.a(cfgetospeed.o): cfgetospeed.s + cc -c -o ../obj-ack//./syscall/cfgetospeed.o cfgetospeed.s +../obj-ack//libc.a(cfsetispeed.o): cfsetispeed.s + cc -c -o ../obj-ack//./syscall/cfsetispeed.o cfsetispeed.s +../obj-ack//libc.a(cfsetospeed.o): cfsetospeed.s + cc -c -o ../obj-ack//./syscall/cfsetospeed.o cfsetospeed.s +../obj-ack//libc.a(chdir.o): chdir.s + cc -c -o ../obj-ack//./syscall/chdir.o chdir.s +../obj-ack//libc.a(chmod.o): chmod.s + cc -c -o ../obj-ack//./syscall/chmod.o chmod.s +../obj-ack//libc.a(chown.o): chown.s + cc -c -o ../obj-ack//./syscall/chown.o chown.s +../obj-ack//libc.a(chroot.o): chroot.s + cc -c -o ../obj-ack//./syscall/chroot.o chroot.s +../obj-ack//libc.a(close.o): close.s + cc -c -o ../obj-ack//./syscall/close.o close.s +../obj-ack//libc.a(closedir.o): closedir.s + cc -c -o ../obj-ack//./syscall/closedir.o closedir.s +../obj-ack//libc.a(creat.o): creat.s + cc -c -o ../obj-ack//./syscall/creat.o creat.s +../obj-ack//libc.a(devctl.o): devctl.s + cc -c -o ../obj-ack//./syscall/devctl.o devctl.s +../obj-ack//libc.a(dup.o): dup.s + cc -c -o ../obj-ack//./syscall/dup.o dup.s +../obj-ack//libc.a(dup2.o): dup2.s + cc -c -o ../obj-ack//./syscall/dup2.o dup2.s +../obj-ack//libc.a(execl.o): execl.s + cc -c -o ../obj-ack//./syscall/execl.o execl.s +../obj-ack//libc.a(execle.o): execle.s + cc -c -o ../obj-ack//./syscall/execle.o execle.s +../obj-ack//libc.a(execlp.o): execlp.s + cc -c -o ../obj-ack//./syscall/execlp.o execlp.s +../obj-ack//libc.a(execv.o): execv.s + cc -c -o ../obj-ack//./syscall/execv.o execv.s +../obj-ack//libc.a(execve.o): execve.s + cc -c -o ../obj-ack//./syscall/execve.o execve.s +../obj-ack//libc.a(execvp.o): execvp.s + cc -c -o ../obj-ack//./syscall/execvp.o execvp.s +../obj-ack//libc.a(fcntl.o): fcntl.s + cc -c -o ../obj-ack//./syscall/fcntl.o fcntl.s +../obj-ack//libc.a(findproc.o): findproc.s + cc -c -o ../obj-ack//./syscall/findproc.o findproc.s +../obj-ack//libc.a(fork.o): fork.s + cc -c -o ../obj-ack//./syscall/fork.o fork.s +../obj-ack//libc.a(fpathconf.o): fpathconf.s + cc -c -o ../obj-ack//./syscall/fpathconf.o fpathconf.s +../obj-ack//libc.a(freemem.o): freemem.s + cc -c -o ../obj-ack//./syscall/freemem.o freemem.s +../obj-ack//libc.a(fstat.o): fstat.s + cc -c -o ../obj-ack//./syscall/fstat.o fstat.s +../obj-ack//libc.a(fstatfs.o): fstatfs.s + cc -c -o ../obj-ack//./syscall/fstatfs.o fstatfs.s +../obj-ack//libc.a(getcwd.o): getcwd.s + cc -c -o ../obj-ack//./syscall/getcwd.o getcwd.s +../obj-ack//libc.a(getegid.o): getegid.s + cc -c -o ../obj-ack//./syscall/getegid.o getegid.s +../obj-ack//libc.a(geteuid.o): geteuid.s + cc -c -o ../obj-ack//./syscall/geteuid.o geteuid.s +../obj-ack//libc.a(getgid.o): getgid.s + cc -c -o ../obj-ack//./syscall/getgid.o getgid.s +../obj-ack//libc.a(getgroups.o): getgroups.s + cc -c -o ../obj-ack//./syscall/getgroups.o getgroups.s +../obj-ack//libc.a(getnpid.o): getnpid.s + cc -c -o ../obj-ack//./syscall/getnpid.o getnpid.s +../obj-ack//libc.a(getnprocnr.o): getnprocnr.s + cc -c -o ../obj-ack//./syscall/getnprocnr.o getnprocnr.s +../obj-ack//libc.a(getpgrp.o): getpgrp.s + cc -c -o ../obj-ack//./syscall/getpgrp.o getpgrp.s +../obj-ack//libc.a(getpid.o): getpid.s + cc -c -o ../obj-ack//./syscall/getpid.o getpid.s +../obj-ack//libc.a(getppid.o): getppid.s + cc -c -o ../obj-ack//./syscall/getppid.o getppid.s +../obj-ack//libc.a(getpprocnr.o): getpprocnr.s + cc -c -o ../obj-ack//./syscall/getpprocnr.o getpprocnr.s +../obj-ack//libc.a(getprocnr.o): getprocnr.s + cc -c -o ../obj-ack//./syscall/getprocnr.o getprocnr.s +../obj-ack//libc.a(getsysinfo.o): getsysinfo.s + cc -c -o ../obj-ack//./syscall/getsysinfo.o getsysinfo.s +../obj-ack//libc.a(getuid.o): getuid.s + cc -c -o ../obj-ack//./syscall/getuid.o getuid.s +../obj-ack//libc.a(ioctl.o): ioctl.s + cc -c -o ../obj-ack//./syscall/ioctl.o ioctl.s +../obj-ack//libc.a(isatty.o): isatty.s + cc -c -o ../obj-ack//./syscall/isatty.o isatty.s +../obj-ack//libc.a(kill.o): kill.s + cc -c -o ../obj-ack//./syscall/kill.o kill.s +../obj-ack//libc.a(link.o): link.s + cc -c -o ../obj-ack//./syscall/link.o link.s +../obj-ack//libc.a(lseek.o): lseek.s + cc -c -o ../obj-ack//./syscall/lseek.o lseek.s +../obj-ack//libc.a(lstat.o): lstat.s + cc -c -o ../obj-ack//./syscall/lstat.o lstat.s +../obj-ack//libc.a(mkdir.o): mkdir.s + cc -c -o ../obj-ack//./syscall/mkdir.o mkdir.s +../obj-ack//libc.a(mkfifo.o): mkfifo.s + cc -c -o ../obj-ack//./syscall/mkfifo.o mkfifo.s +../obj-ack//libc.a(mknod.o): mknod.s + cc -c -o ../obj-ack//./syscall/mknod.o mknod.s +../obj-ack//libc.a(mount.o): mount.s + cc -c -o ../obj-ack//./syscall/mount.o mount.s +../obj-ack//libc.a(open.o): open.s + cc -c -o ../obj-ack//./syscall/open.o open.s +../obj-ack//libc.a(opendir.o): opendir.s + cc -c -o ../obj-ack//./syscall/opendir.o opendir.s +../obj-ack//libc.a(pathconf.o): pathconf.s + cc -c -o ../obj-ack//./syscall/pathconf.o pathconf.s +../obj-ack//libc.a(pause.o): pause.s + cc -c -o ../obj-ack//./syscall/pause.o pause.s +../obj-ack//libc.a(pipe.o): pipe.s + cc -c -o ../obj-ack//./syscall/pipe.o pipe.s +../obj-ack//libc.a(ptrace.o): ptrace.s + cc -c -o ../obj-ack//./syscall/ptrace.o ptrace.s +../obj-ack//libc.a(read.o): read.s + cc -c -o ../obj-ack//./syscall/read.o read.s +../obj-ack//libc.a(readdir.o): readdir.s + cc -c -o ../obj-ack//./syscall/readdir.o readdir.s +../obj-ack//libc.a(readlink.o): readlink.s + cc -c -o ../obj-ack//./syscall/readlink.o readlink.s +../obj-ack//libc.a(reboot.o): reboot.s + cc -c -o ../obj-ack//./syscall/reboot.o reboot.s +../obj-ack//libc.a(rename.o): rename.s + cc -c -o ../obj-ack//./syscall/rename.o rename.s +../obj-ack//libc.a(rewinddir.o): rewinddir.s + cc -c -o ../obj-ack//./syscall/rewinddir.o rewinddir.s +../obj-ack//libc.a(rmdir.o): rmdir.s + cc -c -o ../obj-ack//./syscall/rmdir.o rmdir.s +../obj-ack//libc.a(sbrk.o): sbrk.s + cc -c -o ../obj-ack//./syscall/sbrk.o sbrk.s +../obj-ack//libc.a(seekdir.o): seekdir.s + cc -c -o ../obj-ack//./syscall/seekdir.o seekdir.s +../obj-ack//libc.a(setgid.o): setgid.s + cc -c -o ../obj-ack//./syscall/setgid.o setgid.s +../obj-ack//libc.a(setsid.o): setsid.s + cc -c -o ../obj-ack//./syscall/setsid.o setsid.s +../obj-ack//libc.a(setuid.o): setuid.s + cc -c -o ../obj-ack//./syscall/setuid.o setuid.s +../obj-ack//libc.a(sigaction.o): sigaction.s + cc -c -o ../obj-ack//./syscall/sigaction.o sigaction.s +../obj-ack//libc.a(sigaddset.o): sigaddset.s + cc -c -o ../obj-ack//./syscall/sigaddset.o sigaddset.s +../obj-ack//libc.a(sigdelset.o): sigdelset.s + cc -c -o ../obj-ack//./syscall/sigdelset.o sigdelset.s +../obj-ack//libc.a(sigemptyset.o): sigemptyset.s + cc -c -o ../obj-ack//./syscall/sigemptyset.o sigemptyset.s +../obj-ack//libc.a(sigfillset.o): sigfillset.s + cc -c -o ../obj-ack//./syscall/sigfillset.o sigfillset.s +../obj-ack//libc.a(sigismember.o): sigismember.s + cc -c -o ../obj-ack//./syscall/sigismember.o sigismember.s +../obj-ack//libc.a(sigpending.o): sigpending.s + cc -c -o ../obj-ack//./syscall/sigpending.o sigpending.s +../obj-ack//libc.a(sigprocmask.o): sigprocmask.s + cc -c -o ../obj-ack//./syscall/sigprocmask.o sigprocmask.s +../obj-ack//libc.a(sigreturn.o): sigreturn.s + cc -c -o ../obj-ack//./syscall/sigreturn.o sigreturn.s +../obj-ack//libc.a(sigsuspend.o): sigsuspend.s + cc -c -o ../obj-ack//./syscall/sigsuspend.o sigsuspend.s +../obj-ack//libc.a(sleep.o): sleep.s + cc -c -o ../obj-ack//./syscall/sleep.o sleep.s +../obj-ack//libc.a(stat.o): stat.s + cc -c -o ../obj-ack//./syscall/stat.o stat.s +../obj-ack//libc.a(stime.o): stime.s + cc -c -o ../obj-ack//./syscall/stime.o stime.s +../obj-ack//libc.a(svrctl.o): svrctl.s + cc -c -o ../obj-ack//./syscall/svrctl.o svrctl.s +../obj-ack//libc.a(symlink.o): symlink.s + cc -c -o ../obj-ack//./syscall/symlink.o symlink.s +../obj-ack//libc.a(sync.o): sync.s + cc -c -o ../obj-ack//./syscall/sync.o sync.s +../obj-ack//libc.a(tcdrain.o): tcdrain.s + cc -c -o ../obj-ack//./syscall/tcdrain.o tcdrain.s +../obj-ack//libc.a(tcflow.o): tcflow.s + cc -c -o ../obj-ack//./syscall/tcflow.o tcflow.s +../obj-ack//libc.a(tcflush.o): tcflush.s + cc -c -o ../obj-ack//./syscall/tcflush.o tcflush.s +../obj-ack//libc.a(tcgetattr.o): tcgetattr.s + cc -c -o ../obj-ack//./syscall/tcgetattr.o tcgetattr.s +../obj-ack//libc.a(tcsendbreak.o): tcsendbreak.s + cc -c -o ../obj-ack//./syscall/tcsendbreak.o tcsendbreak.s +../obj-ack//libc.a(tcsetattr.o): tcsetattr.s + cc -c -o ../obj-ack//./syscall/tcsetattr.o tcsetattr.s +../obj-ack//libc.a(time.o): time.s + cc -c -o ../obj-ack//./syscall/time.o time.s +../obj-ack//libc.a(times.o): times.s + cc -c -o ../obj-ack//./syscall/times.o times.s +../obj-ack//libc.a(truncate.o): truncate.s + cc -c -o ../obj-ack//./syscall/truncate.o truncate.s +../obj-ack//libc.a(umask.o): umask.s + cc -c -o ../obj-ack//./syscall/umask.o umask.s +../obj-ack//libc.a(umount.o): umount.s + cc -c -o ../obj-ack//./syscall/umount.o umount.s +../obj-ack//libc.a(uname.o): uname.s + cc -c -o ../obj-ack//./syscall/uname.o uname.s +../obj-ack//libc.a(unlink.o): unlink.s + cc -c -o ../obj-ack//./syscall/unlink.o unlink.s +../obj-ack//libc.a(utime.o): utime.s + cc -c -o ../obj-ack//./syscall/utime.o utime.s +../obj-ack//libc.a(wait.o): wait.s + cc -c -o ../obj-ack//./syscall/wait.o wait.s +../obj-ack//libc.a(waitpid.o): waitpid.s + cc -c -o ../obj-ack//./syscall/waitpid.o waitpid.s +../obj-ack//libc.a(write.o): write.s + cc -c -o ../obj-ack//./syscall/write.o write.s + +all-gnu: ../obj-gnu/libc.a + +../obj-gnu/libc.a: ../obj-gnu/./syscall/_exit.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/access.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/alarm.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/allocmem.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/brk.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/cfgetispeed.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/cfgetospeed.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/cfsetispeed.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/cfsetospeed.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/chdir.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/chmod.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/chown.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/chroot.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/close.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/closedir.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/creat.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/devctl.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/dup.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/dup2.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/execl.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/execle.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/execlp.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/execv.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/execve.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/execvp.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/fcntl.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/findproc.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/fork.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/fpathconf.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/freemem.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/fstat.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/fstatfs.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getcwd.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getegid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/geteuid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getgid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getgroups.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getnpid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getnprocnr.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getpgrp.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getpid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getppid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getpprocnr.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getprocnr.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getsysinfo.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/getuid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/ioctl.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/isatty.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/kill.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/link.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/lseek.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/lstat.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/mkdir.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/mkfifo.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/mknod.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/mount.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/open.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/opendir.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/pathconf.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/pause.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/pipe.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/ptrace.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/read.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/readdir.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/readlink.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/reboot.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/rename.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/rewinddir.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/rmdir.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sbrk.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/seekdir.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/setgid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/setsid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/setuid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigaction.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigaddset.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigdelset.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigemptyset.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigfillset.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigismember.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigpending.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigprocmask.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigreturn.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sigsuspend.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sleep.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/stat.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/stime.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/svrctl.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/symlink.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/sync.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/tcdrain.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/tcflow.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/tcflush.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/tcgetattr.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/tcsendbreak.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/tcsetattr.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/time.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/times.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/truncate.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/umask.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/umount.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/uname.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/unlink.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/utime.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/wait.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/waitpid.o +../obj-gnu/libc.a: ../obj-gnu/./syscall/write.o + +../obj-gnu/libc.a: + gar cr ../obj-gnu/libc.a $? + +../obj-gnu/./syscall/_exit.o: _exit.s + gcc -E -x assembler-with-cpp -I. _exit.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/_exit.s.gnu || true + gas -o ../obj-gnu/./syscall/_exit.o ../obj-gnu/./syscall/_exit.s.gnu + +../obj-gnu/./syscall/access.o: access.s + gcc -E -x assembler-with-cpp -I. access.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/access.s.gnu || true + gas -o ../obj-gnu/./syscall/access.o ../obj-gnu/./syscall/access.s.gnu + +../obj-gnu/./syscall/alarm.o: alarm.s + gcc -E -x assembler-with-cpp -I. alarm.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/alarm.s.gnu || true + gas -o ../obj-gnu/./syscall/alarm.o ../obj-gnu/./syscall/alarm.s.gnu + +../obj-gnu/./syscall/allocmem.o: allocmem.s + gcc -E -x assembler-with-cpp -I. allocmem.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/allocmem.s.gnu || true + gas -o ../obj-gnu/./syscall/allocmem.o ../obj-gnu/./syscall/allocmem.s.gnu + +../obj-gnu/./syscall/brk.o: brk.s + gcc -E -x assembler-with-cpp -I. brk.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/brk.s.gnu || true + gas -o ../obj-gnu/./syscall/brk.o ../obj-gnu/./syscall/brk.s.gnu + +../obj-gnu/./syscall/cfgetispeed.o: cfgetispeed.s + gcc -E -x assembler-with-cpp -I. cfgetispeed.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/cfgetispeed.s.gnu || true + gas -o ../obj-gnu/./syscall/cfgetispeed.o ../obj-gnu/./syscall/cfgetispeed.s.gnu + +../obj-gnu/./syscall/cfgetospeed.o: cfgetospeed.s + gcc -E -x assembler-with-cpp -I. cfgetospeed.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/cfgetospeed.s.gnu || true + gas -o ../obj-gnu/./syscall/cfgetospeed.o ../obj-gnu/./syscall/cfgetospeed.s.gnu + +../obj-gnu/./syscall/cfsetispeed.o: cfsetispeed.s + gcc -E -x assembler-with-cpp -I. cfsetispeed.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/cfsetispeed.s.gnu || true + gas -o ../obj-gnu/./syscall/cfsetispeed.o ../obj-gnu/./syscall/cfsetispeed.s.gnu + +../obj-gnu/./syscall/cfsetospeed.o: cfsetospeed.s + gcc -E -x assembler-with-cpp -I. cfsetospeed.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/cfsetospeed.s.gnu || true + gas -o ../obj-gnu/./syscall/cfsetospeed.o ../obj-gnu/./syscall/cfsetospeed.s.gnu + +../obj-gnu/./syscall/chdir.o: chdir.s + gcc -E -x assembler-with-cpp -I. chdir.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/chdir.s.gnu || true + gas -o ../obj-gnu/./syscall/chdir.o ../obj-gnu/./syscall/chdir.s.gnu + +../obj-gnu/./syscall/chmod.o: chmod.s + gcc -E -x assembler-with-cpp -I. chmod.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/chmod.s.gnu || true + gas -o ../obj-gnu/./syscall/chmod.o ../obj-gnu/./syscall/chmod.s.gnu + +../obj-gnu/./syscall/chown.o: chown.s + gcc -E -x assembler-with-cpp -I. chown.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/chown.s.gnu || true + gas -o ../obj-gnu/./syscall/chown.o ../obj-gnu/./syscall/chown.s.gnu + +../obj-gnu/./syscall/chroot.o: chroot.s + gcc -E -x assembler-with-cpp -I. chroot.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/chroot.s.gnu || true + gas -o ../obj-gnu/./syscall/chroot.o ../obj-gnu/./syscall/chroot.s.gnu + +../obj-gnu/./syscall/close.o: close.s + gcc -E -x assembler-with-cpp -I. close.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/close.s.gnu || true + gas -o ../obj-gnu/./syscall/close.o ../obj-gnu/./syscall/close.s.gnu + +../obj-gnu/./syscall/closedir.o: closedir.s + gcc -E -x assembler-with-cpp -I. closedir.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/closedir.s.gnu || true + gas -o ../obj-gnu/./syscall/closedir.o ../obj-gnu/./syscall/closedir.s.gnu + +../obj-gnu/./syscall/creat.o: creat.s + gcc -E -x assembler-with-cpp -I. creat.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/creat.s.gnu || true + gas -o ../obj-gnu/./syscall/creat.o ../obj-gnu/./syscall/creat.s.gnu + +../obj-gnu/./syscall/devctl.o: devctl.s + gcc -E -x assembler-with-cpp -I. devctl.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/devctl.s.gnu || true + gas -o ../obj-gnu/./syscall/devctl.o ../obj-gnu/./syscall/devctl.s.gnu + +../obj-gnu/./syscall/dup.o: dup.s + gcc -E -x assembler-with-cpp -I. dup.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/dup.s.gnu || true + gas -o ../obj-gnu/./syscall/dup.o ../obj-gnu/./syscall/dup.s.gnu + +../obj-gnu/./syscall/dup2.o: dup2.s + gcc -E -x assembler-with-cpp -I. dup2.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/dup2.s.gnu || true + gas -o ../obj-gnu/./syscall/dup2.o ../obj-gnu/./syscall/dup2.s.gnu + +../obj-gnu/./syscall/execl.o: execl.s + gcc -E -x assembler-with-cpp -I. execl.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/execl.s.gnu || true + gas -o ../obj-gnu/./syscall/execl.o ../obj-gnu/./syscall/execl.s.gnu + +../obj-gnu/./syscall/execle.o: execle.s + gcc -E -x assembler-with-cpp -I. execle.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/execle.s.gnu || true + gas -o ../obj-gnu/./syscall/execle.o ../obj-gnu/./syscall/execle.s.gnu + +../obj-gnu/./syscall/execlp.o: execlp.s + gcc -E -x assembler-with-cpp -I. execlp.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/execlp.s.gnu || true + gas -o ../obj-gnu/./syscall/execlp.o ../obj-gnu/./syscall/execlp.s.gnu + +../obj-gnu/./syscall/execv.o: execv.s + gcc -E -x assembler-with-cpp -I. execv.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/execv.s.gnu || true + gas -o ../obj-gnu/./syscall/execv.o ../obj-gnu/./syscall/execv.s.gnu + +../obj-gnu/./syscall/execve.o: execve.s + gcc -E -x assembler-with-cpp -I. execve.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/execve.s.gnu || true + gas -o ../obj-gnu/./syscall/execve.o ../obj-gnu/./syscall/execve.s.gnu + +../obj-gnu/./syscall/execvp.o: execvp.s + gcc -E -x assembler-with-cpp -I. execvp.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/execvp.s.gnu || true + gas -o ../obj-gnu/./syscall/execvp.o ../obj-gnu/./syscall/execvp.s.gnu + +../obj-gnu/./syscall/fcntl.o: fcntl.s + gcc -E -x assembler-with-cpp -I. fcntl.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/fcntl.s.gnu || true + gas -o ../obj-gnu/./syscall/fcntl.o ../obj-gnu/./syscall/fcntl.s.gnu + +../obj-gnu/./syscall/findproc.o: findproc.s + gcc -E -x assembler-with-cpp -I. findproc.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/findproc.s.gnu || true + gas -o ../obj-gnu/./syscall/findproc.o ../obj-gnu/./syscall/findproc.s.gnu + +../obj-gnu/./syscall/fork.o: fork.s + gcc -E -x assembler-with-cpp -I. fork.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/fork.s.gnu || true + gas -o ../obj-gnu/./syscall/fork.o ../obj-gnu/./syscall/fork.s.gnu + +../obj-gnu/./syscall/fpathconf.o: fpathconf.s + gcc -E -x assembler-with-cpp -I. fpathconf.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/fpathconf.s.gnu || true + gas -o ../obj-gnu/./syscall/fpathconf.o ../obj-gnu/./syscall/fpathconf.s.gnu + +../obj-gnu/./syscall/freemem.o: freemem.s + gcc -E -x assembler-with-cpp -I. freemem.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/freemem.s.gnu || true + gas -o ../obj-gnu/./syscall/freemem.o ../obj-gnu/./syscall/freemem.s.gnu + +../obj-gnu/./syscall/fstat.o: fstat.s + gcc -E -x assembler-with-cpp -I. fstat.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/fstat.s.gnu || true + gas -o ../obj-gnu/./syscall/fstat.o ../obj-gnu/./syscall/fstat.s.gnu + +../obj-gnu/./syscall/fstatfs.o: fstatfs.s + gcc -E -x assembler-with-cpp -I. fstatfs.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/fstatfs.s.gnu || true + gas -o ../obj-gnu/./syscall/fstatfs.o ../obj-gnu/./syscall/fstatfs.s.gnu + +../obj-gnu/./syscall/getcwd.o: getcwd.s + gcc -E -x assembler-with-cpp -I. getcwd.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getcwd.s.gnu || true + gas -o ../obj-gnu/./syscall/getcwd.o ../obj-gnu/./syscall/getcwd.s.gnu + +../obj-gnu/./syscall/getegid.o: getegid.s + gcc -E -x assembler-with-cpp -I. getegid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getegid.s.gnu || true + gas -o ../obj-gnu/./syscall/getegid.o ../obj-gnu/./syscall/getegid.s.gnu + +../obj-gnu/./syscall/geteuid.o: geteuid.s + gcc -E -x assembler-with-cpp -I. geteuid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/geteuid.s.gnu || true + gas -o ../obj-gnu/./syscall/geteuid.o ../obj-gnu/./syscall/geteuid.s.gnu + +../obj-gnu/./syscall/getgid.o: getgid.s + gcc -E -x assembler-with-cpp -I. getgid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getgid.s.gnu || true + gas -o ../obj-gnu/./syscall/getgid.o ../obj-gnu/./syscall/getgid.s.gnu + +../obj-gnu/./syscall/getgroups.o: getgroups.s + gcc -E -x assembler-with-cpp -I. getgroups.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getgroups.s.gnu || true + gas -o ../obj-gnu/./syscall/getgroups.o ../obj-gnu/./syscall/getgroups.s.gnu + +../obj-gnu/./syscall/getnpid.o: getnpid.s + gcc -E -x assembler-with-cpp -I. getnpid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getnpid.s.gnu || true + gas -o ../obj-gnu/./syscall/getnpid.o ../obj-gnu/./syscall/getnpid.s.gnu + +../obj-gnu/./syscall/getnprocnr.o: getnprocnr.s + gcc -E -x assembler-with-cpp -I. getnprocnr.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getnprocnr.s.gnu || true + gas -o ../obj-gnu/./syscall/getnprocnr.o ../obj-gnu/./syscall/getnprocnr.s.gnu + +../obj-gnu/./syscall/getpgrp.o: getpgrp.s + gcc -E -x assembler-with-cpp -I. getpgrp.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getpgrp.s.gnu || true + gas -o ../obj-gnu/./syscall/getpgrp.o ../obj-gnu/./syscall/getpgrp.s.gnu + +../obj-gnu/./syscall/getpid.o: getpid.s + gcc -E -x assembler-with-cpp -I. getpid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getpid.s.gnu || true + gas -o ../obj-gnu/./syscall/getpid.o ../obj-gnu/./syscall/getpid.s.gnu + +../obj-gnu/./syscall/getppid.o: getppid.s + gcc -E -x assembler-with-cpp -I. getppid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getppid.s.gnu || true + gas -o ../obj-gnu/./syscall/getppid.o ../obj-gnu/./syscall/getppid.s.gnu + +../obj-gnu/./syscall/getpprocnr.o: getpprocnr.s + gcc -E -x assembler-with-cpp -I. getpprocnr.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getpprocnr.s.gnu || true + gas -o ../obj-gnu/./syscall/getpprocnr.o ../obj-gnu/./syscall/getpprocnr.s.gnu + +../obj-gnu/./syscall/getprocnr.o: getprocnr.s + gcc -E -x assembler-with-cpp -I. getprocnr.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getprocnr.s.gnu || true + gas -o ../obj-gnu/./syscall/getprocnr.o ../obj-gnu/./syscall/getprocnr.s.gnu + +../obj-gnu/./syscall/getsysinfo.o: getsysinfo.s + gcc -E -x assembler-with-cpp -I. getsysinfo.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getsysinfo.s.gnu || true + gas -o ../obj-gnu/./syscall/getsysinfo.o ../obj-gnu/./syscall/getsysinfo.s.gnu + +../obj-gnu/./syscall/getuid.o: getuid.s + gcc -E -x assembler-with-cpp -I. getuid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/getuid.s.gnu || true + gas -o ../obj-gnu/./syscall/getuid.o ../obj-gnu/./syscall/getuid.s.gnu + +../obj-gnu/./syscall/ioctl.o: ioctl.s + gcc -E -x assembler-with-cpp -I. ioctl.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/ioctl.s.gnu || true + gas -o ../obj-gnu/./syscall/ioctl.o ../obj-gnu/./syscall/ioctl.s.gnu + +../obj-gnu/./syscall/isatty.o: isatty.s + gcc -E -x assembler-with-cpp -I. isatty.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/isatty.s.gnu || true + gas -o ../obj-gnu/./syscall/isatty.o ../obj-gnu/./syscall/isatty.s.gnu + +../obj-gnu/./syscall/kill.o: kill.s + gcc -E -x assembler-with-cpp -I. kill.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/kill.s.gnu || true + gas -o ../obj-gnu/./syscall/kill.o ../obj-gnu/./syscall/kill.s.gnu + +../obj-gnu/./syscall/link.o: link.s + gcc -E -x assembler-with-cpp -I. link.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/link.s.gnu || true + gas -o ../obj-gnu/./syscall/link.o ../obj-gnu/./syscall/link.s.gnu + +../obj-gnu/./syscall/lseek.o: lseek.s + gcc -E -x assembler-with-cpp -I. lseek.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/lseek.s.gnu || true + gas -o ../obj-gnu/./syscall/lseek.o ../obj-gnu/./syscall/lseek.s.gnu + +../obj-gnu/./syscall/lstat.o: lstat.s + gcc -E -x assembler-with-cpp -I. lstat.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/lstat.s.gnu || true + gas -o ../obj-gnu/./syscall/lstat.o ../obj-gnu/./syscall/lstat.s.gnu + +../obj-gnu/./syscall/mkdir.o: mkdir.s + gcc -E -x assembler-with-cpp -I. mkdir.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/mkdir.s.gnu || true + gas -o ../obj-gnu/./syscall/mkdir.o ../obj-gnu/./syscall/mkdir.s.gnu + +../obj-gnu/./syscall/mkfifo.o: mkfifo.s + gcc -E -x assembler-with-cpp -I. mkfifo.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/mkfifo.s.gnu || true + gas -o ../obj-gnu/./syscall/mkfifo.o ../obj-gnu/./syscall/mkfifo.s.gnu + +../obj-gnu/./syscall/mknod.o: mknod.s + gcc -E -x assembler-with-cpp -I. mknod.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/mknod.s.gnu || true + gas -o ../obj-gnu/./syscall/mknod.o ../obj-gnu/./syscall/mknod.s.gnu + +../obj-gnu/./syscall/mount.o: mount.s + gcc -E -x assembler-with-cpp -I. mount.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/mount.s.gnu || true + gas -o ../obj-gnu/./syscall/mount.o ../obj-gnu/./syscall/mount.s.gnu + +../obj-gnu/./syscall/open.o: open.s + gcc -E -x assembler-with-cpp -I. open.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/open.s.gnu || true + gas -o ../obj-gnu/./syscall/open.o ../obj-gnu/./syscall/open.s.gnu + +../obj-gnu/./syscall/opendir.o: opendir.s + gcc -E -x assembler-with-cpp -I. opendir.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/opendir.s.gnu || true + gas -o ../obj-gnu/./syscall/opendir.o ../obj-gnu/./syscall/opendir.s.gnu + +../obj-gnu/./syscall/pathconf.o: pathconf.s + gcc -E -x assembler-with-cpp -I. pathconf.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/pathconf.s.gnu || true + gas -o ../obj-gnu/./syscall/pathconf.o ../obj-gnu/./syscall/pathconf.s.gnu + +../obj-gnu/./syscall/pause.o: pause.s + gcc -E -x assembler-with-cpp -I. pause.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/pause.s.gnu || true + gas -o ../obj-gnu/./syscall/pause.o ../obj-gnu/./syscall/pause.s.gnu + +../obj-gnu/./syscall/pipe.o: pipe.s + gcc -E -x assembler-with-cpp -I. pipe.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/pipe.s.gnu || true + gas -o ../obj-gnu/./syscall/pipe.o ../obj-gnu/./syscall/pipe.s.gnu + +../obj-gnu/./syscall/ptrace.o: ptrace.s + gcc -E -x assembler-with-cpp -I. ptrace.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/ptrace.s.gnu || true + gas -o ../obj-gnu/./syscall/ptrace.o ../obj-gnu/./syscall/ptrace.s.gnu + +../obj-gnu/./syscall/read.o: read.s + gcc -E -x assembler-with-cpp -I. read.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/read.s.gnu || true + gas -o ../obj-gnu/./syscall/read.o ../obj-gnu/./syscall/read.s.gnu + +../obj-gnu/./syscall/readdir.o: readdir.s + gcc -E -x assembler-with-cpp -I. readdir.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/readdir.s.gnu || true + gas -o ../obj-gnu/./syscall/readdir.o ../obj-gnu/./syscall/readdir.s.gnu + +../obj-gnu/./syscall/readlink.o: readlink.s + gcc -E -x assembler-with-cpp -I. readlink.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/readlink.s.gnu || true + gas -o ../obj-gnu/./syscall/readlink.o ../obj-gnu/./syscall/readlink.s.gnu + +../obj-gnu/./syscall/reboot.o: reboot.s + gcc -E -x assembler-with-cpp -I. reboot.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/reboot.s.gnu || true + gas -o ../obj-gnu/./syscall/reboot.o ../obj-gnu/./syscall/reboot.s.gnu + +../obj-gnu/./syscall/rename.o: rename.s + gcc -E -x assembler-with-cpp -I. rename.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/rename.s.gnu || true + gas -o ../obj-gnu/./syscall/rename.o ../obj-gnu/./syscall/rename.s.gnu + +../obj-gnu/./syscall/rewinddir.o: rewinddir.s + gcc -E -x assembler-with-cpp -I. rewinddir.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/rewinddir.s.gnu || true + gas -o ../obj-gnu/./syscall/rewinddir.o ../obj-gnu/./syscall/rewinddir.s.gnu + +../obj-gnu/./syscall/rmdir.o: rmdir.s + gcc -E -x assembler-with-cpp -I. rmdir.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/rmdir.s.gnu || true + gas -o ../obj-gnu/./syscall/rmdir.o ../obj-gnu/./syscall/rmdir.s.gnu + +../obj-gnu/./syscall/sbrk.o: sbrk.s + gcc -E -x assembler-with-cpp -I. sbrk.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sbrk.s.gnu || true + gas -o ../obj-gnu/./syscall/sbrk.o ../obj-gnu/./syscall/sbrk.s.gnu + +../obj-gnu/./syscall/seekdir.o: seekdir.s + gcc -E -x assembler-with-cpp -I. seekdir.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/seekdir.s.gnu || true + gas -o ../obj-gnu/./syscall/seekdir.o ../obj-gnu/./syscall/seekdir.s.gnu + +../obj-gnu/./syscall/setgid.o: setgid.s + gcc -E -x assembler-with-cpp -I. setgid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/setgid.s.gnu || true + gas -o ../obj-gnu/./syscall/setgid.o ../obj-gnu/./syscall/setgid.s.gnu + +../obj-gnu/./syscall/setsid.o: setsid.s + gcc -E -x assembler-with-cpp -I. setsid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/setsid.s.gnu || true + gas -o ../obj-gnu/./syscall/setsid.o ../obj-gnu/./syscall/setsid.s.gnu + +../obj-gnu/./syscall/setuid.o: setuid.s + gcc -E -x assembler-with-cpp -I. setuid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/setuid.s.gnu || true + gas -o ../obj-gnu/./syscall/setuid.o ../obj-gnu/./syscall/setuid.s.gnu + +../obj-gnu/./syscall/sigaction.o: sigaction.s + gcc -E -x assembler-with-cpp -I. sigaction.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigaction.s.gnu || true + gas -o ../obj-gnu/./syscall/sigaction.o ../obj-gnu/./syscall/sigaction.s.gnu + +../obj-gnu/./syscall/sigaddset.o: sigaddset.s + gcc -E -x assembler-with-cpp -I. sigaddset.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigaddset.s.gnu || true + gas -o ../obj-gnu/./syscall/sigaddset.o ../obj-gnu/./syscall/sigaddset.s.gnu + +../obj-gnu/./syscall/sigdelset.o: sigdelset.s + gcc -E -x assembler-with-cpp -I. sigdelset.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigdelset.s.gnu || true + gas -o ../obj-gnu/./syscall/sigdelset.o ../obj-gnu/./syscall/sigdelset.s.gnu + +../obj-gnu/./syscall/sigemptyset.o: sigemptyset.s + gcc -E -x assembler-with-cpp -I. sigemptyset.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigemptyset.s.gnu || true + gas -o ../obj-gnu/./syscall/sigemptyset.o ../obj-gnu/./syscall/sigemptyset.s.gnu + +../obj-gnu/./syscall/sigfillset.o: sigfillset.s + gcc -E -x assembler-with-cpp -I. sigfillset.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigfillset.s.gnu || true + gas -o ../obj-gnu/./syscall/sigfillset.o ../obj-gnu/./syscall/sigfillset.s.gnu + +../obj-gnu/./syscall/sigismember.o: sigismember.s + gcc -E -x assembler-with-cpp -I. sigismember.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigismember.s.gnu || true + gas -o ../obj-gnu/./syscall/sigismember.o ../obj-gnu/./syscall/sigismember.s.gnu + +../obj-gnu/./syscall/sigpending.o: sigpending.s + gcc -E -x assembler-with-cpp -I. sigpending.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigpending.s.gnu || true + gas -o ../obj-gnu/./syscall/sigpending.o ../obj-gnu/./syscall/sigpending.s.gnu + +../obj-gnu/./syscall/sigprocmask.o: sigprocmask.s + gcc -E -x assembler-with-cpp -I. sigprocmask.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigprocmask.s.gnu || true + gas -o ../obj-gnu/./syscall/sigprocmask.o ../obj-gnu/./syscall/sigprocmask.s.gnu + +../obj-gnu/./syscall/sigreturn.o: sigreturn.s + gcc -E -x assembler-with-cpp -I. sigreturn.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigreturn.s.gnu || true + gas -o ../obj-gnu/./syscall/sigreturn.o ../obj-gnu/./syscall/sigreturn.s.gnu + +../obj-gnu/./syscall/sigsuspend.o: sigsuspend.s + gcc -E -x assembler-with-cpp -I. sigsuspend.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sigsuspend.s.gnu || true + gas -o ../obj-gnu/./syscall/sigsuspend.o ../obj-gnu/./syscall/sigsuspend.s.gnu + +../obj-gnu/./syscall/sleep.o: sleep.s + gcc -E -x assembler-with-cpp -I. sleep.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sleep.s.gnu || true + gas -o ../obj-gnu/./syscall/sleep.o ../obj-gnu/./syscall/sleep.s.gnu + +../obj-gnu/./syscall/stat.o: stat.s + gcc -E -x assembler-with-cpp -I. stat.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/stat.s.gnu || true + gas -o ../obj-gnu/./syscall/stat.o ../obj-gnu/./syscall/stat.s.gnu + +../obj-gnu/./syscall/stime.o: stime.s + gcc -E -x assembler-with-cpp -I. stime.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/stime.s.gnu || true + gas -o ../obj-gnu/./syscall/stime.o ../obj-gnu/./syscall/stime.s.gnu + +../obj-gnu/./syscall/svrctl.o: svrctl.s + gcc -E -x assembler-with-cpp -I. svrctl.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/svrctl.s.gnu || true + gas -o ../obj-gnu/./syscall/svrctl.o ../obj-gnu/./syscall/svrctl.s.gnu + +../obj-gnu/./syscall/symlink.o: symlink.s + gcc -E -x assembler-with-cpp -I. symlink.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/symlink.s.gnu || true + gas -o ../obj-gnu/./syscall/symlink.o ../obj-gnu/./syscall/symlink.s.gnu + +../obj-gnu/./syscall/sync.o: sync.s + gcc -E -x assembler-with-cpp -I. sync.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/sync.s.gnu || true + gas -o ../obj-gnu/./syscall/sync.o ../obj-gnu/./syscall/sync.s.gnu + +../obj-gnu/./syscall/tcdrain.o: tcdrain.s + gcc -E -x assembler-with-cpp -I. tcdrain.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/tcdrain.s.gnu || true + gas -o ../obj-gnu/./syscall/tcdrain.o ../obj-gnu/./syscall/tcdrain.s.gnu + +../obj-gnu/./syscall/tcflow.o: tcflow.s + gcc -E -x assembler-with-cpp -I. tcflow.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/tcflow.s.gnu || true + gas -o ../obj-gnu/./syscall/tcflow.o ../obj-gnu/./syscall/tcflow.s.gnu + +../obj-gnu/./syscall/tcflush.o: tcflush.s + gcc -E -x assembler-with-cpp -I. tcflush.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/tcflush.s.gnu || true + gas -o ../obj-gnu/./syscall/tcflush.o ../obj-gnu/./syscall/tcflush.s.gnu + +../obj-gnu/./syscall/tcgetattr.o: tcgetattr.s + gcc -E -x assembler-with-cpp -I. tcgetattr.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/tcgetattr.s.gnu || true + gas -o ../obj-gnu/./syscall/tcgetattr.o ../obj-gnu/./syscall/tcgetattr.s.gnu + +../obj-gnu/./syscall/tcsendbreak.o: tcsendbreak.s + gcc -E -x assembler-with-cpp -I. tcsendbreak.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/tcsendbreak.s.gnu || true + gas -o ../obj-gnu/./syscall/tcsendbreak.o ../obj-gnu/./syscall/tcsendbreak.s.gnu + +../obj-gnu/./syscall/tcsetattr.o: tcsetattr.s + gcc -E -x assembler-with-cpp -I. tcsetattr.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/tcsetattr.s.gnu || true + gas -o ../obj-gnu/./syscall/tcsetattr.o ../obj-gnu/./syscall/tcsetattr.s.gnu + +../obj-gnu/./syscall/time.o: time.s + gcc -E -x assembler-with-cpp -I. time.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/time.s.gnu || true + gas -o ../obj-gnu/./syscall/time.o ../obj-gnu/./syscall/time.s.gnu + +../obj-gnu/./syscall/times.o: times.s + gcc -E -x assembler-with-cpp -I. times.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/times.s.gnu || true + gas -o ../obj-gnu/./syscall/times.o ../obj-gnu/./syscall/times.s.gnu + +../obj-gnu/./syscall/truncate.o: truncate.s + gcc -E -x assembler-with-cpp -I. truncate.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/truncate.s.gnu || true + gas -o ../obj-gnu/./syscall/truncate.o ../obj-gnu/./syscall/truncate.s.gnu + +../obj-gnu/./syscall/umask.o: umask.s + gcc -E -x assembler-with-cpp -I. umask.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/umask.s.gnu || true + gas -o ../obj-gnu/./syscall/umask.o ../obj-gnu/./syscall/umask.s.gnu + +../obj-gnu/./syscall/umount.o: umount.s + gcc -E -x assembler-with-cpp -I. umount.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/umount.s.gnu || true + gas -o ../obj-gnu/./syscall/umount.o ../obj-gnu/./syscall/umount.s.gnu + +../obj-gnu/./syscall/uname.o: uname.s + gcc -E -x assembler-with-cpp -I. uname.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/uname.s.gnu || true + gas -o ../obj-gnu/./syscall/uname.o ../obj-gnu/./syscall/uname.s.gnu + +../obj-gnu/./syscall/unlink.o: unlink.s + gcc -E -x assembler-with-cpp -I. unlink.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/unlink.s.gnu || true + gas -o ../obj-gnu/./syscall/unlink.o ../obj-gnu/./syscall/unlink.s.gnu + +../obj-gnu/./syscall/utime.o: utime.s + gcc -E -x assembler-with-cpp -I. utime.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/utime.s.gnu || true + gas -o ../obj-gnu/./syscall/utime.o ../obj-gnu/./syscall/utime.s.gnu + +../obj-gnu/./syscall/wait.o: wait.s + gcc -E -x assembler-with-cpp -I. wait.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/wait.s.gnu || true + gas -o ../obj-gnu/./syscall/wait.o ../obj-gnu/./syscall/wait.s.gnu + +../obj-gnu/./syscall/waitpid.o: waitpid.s + gcc -E -x assembler-with-cpp -I. waitpid.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/waitpid.s.gnu || true + gas -o ../obj-gnu/./syscall/waitpid.o ../obj-gnu/./syscall/waitpid.s.gnu + +../obj-gnu/./syscall/write.o: write.s + gcc -E -x assembler-with-cpp -I. write.s | asmconv -mi386 ack gnu > ../obj-gnu/./syscall/write.s.gnu || true + gas -o ../obj-gnu/./syscall/write.o ../obj-gnu/./syscall/write.s.gnu + + + + +clean:: + rm -f ../obj-ack//./syscall/* + rm -f ../obj-gnu/./syscall/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/syscall: Makefile.in diff -ur oldsrc/lib/syscall/chdir.s src/lib/syscall/chdir.s --- oldsrc/lib/syscall/chdir.s 2005-04-21 18:56:38.000000000 +0400 +++ src/lib/syscall/chdir.s 2006-01-20 15:49:24.000000000 +0300 @@ -1,7 +1,11 @@ .sect .text .extern __chdir .define _chdir +.extern __fchdir +.define _fchdir .align 2 _chdir: jmp __chdir +_fchdir: + jmp __fchdir Only in src/lib/syscall: lstat.s Only in src/lib/syscall: readlink.s diff -ur oldsrc/lib/syscall/setgid.s src/lib/syscall/setgid.s --- oldsrc/lib/syscall/setgid.s 2005-04-21 18:56:38.000000000 +0400 +++ src/lib/syscall/setgid.s 2005-12-13 12:48:29.000000000 +0300 @@ -1,7 +1,11 @@ .sect .text .extern __setgid .define _setgid +.define _setegid .align 2 _setgid: jmp __setgid + +_setegid: + jmp __setegid diff -ur oldsrc/lib/syscall/setuid.s src/lib/syscall/setuid.s --- oldsrc/lib/syscall/setuid.s 2005-04-21 18:56:38.000000000 +0400 +++ src/lib/syscall/setuid.s 2005-12-13 12:48:29.000000000 +0300 @@ -1,7 +1,11 @@ .sect .text .extern __setuid .define _setuid +.define _seteuid .align 2 _setuid: jmp __setuid + +_seteuid: + jmp __seteuid Only in src/lib/syscall: symlink.s Only in src/lib/syscall: truncate.s Only in src/lib/syslib: .depend-ack Only in src/lib/syslib: .depend-gnu Only in src/lib/syslib: Makedepend-ack Only in src/lib/syslib: Makedepend-gnu diff -ur oldsrc/lib/syslib/Makefile src/lib/syslib/Makefile --- oldsrc/lib/syslib/Makefile 2005-10-22 00:04:01.000000000 +0400 +++ src/lib/syslib/Makefile 2006-02-20 19:10:50.000000000 +0300 @@ -1,42 +1,409 @@ -# Makefile for lib/syslib. +#Generated from ./syslib/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libsys +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./syslib ../obj-ack/ ../obj-gnu -libsys_OBJECTS = \ - sys_times.o \ - sys_abort.o \ - sys_exec.o \ - sys_fork.o \ - sys_int86.o \ - sys_kill.o \ - sys_newmap.o \ - sys_sigsend.o \ - sys_sigreturn.o \ - sys_endsig.o \ - sys_getsig.o \ - sys_svrctl.o \ - sys_trace.o \ - sys_exit.o \ - sys_sdevio.o \ - sys_getinfo.o \ - sys_irqctl.o \ - sys_segctl.o \ - sys_nice.o \ - sys_umap.o \ - sys_physcopy.o \ - sys_vircopy.o \ - sys_in.o \ - sys_out.o \ - sys_vinb.o \ - sys_vinw.o \ - sys_vinl.o \ - sys_voutb.o \ - sys_voutw.o \ - sys_voutl.o \ - sys_setalarm.o \ - sys_memset.o \ - taskcall.o +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./syslib ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libsys.a + +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_attr_r16.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_attr_r32.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_attr_r8.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_attr_w16.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_attr_w32.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_attr_w8.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_dev_name.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_find_dev.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_first_dev.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_ids.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_init.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_init1.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_next_dev.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_rescan_bus.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_reserve.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(pci_slot_name.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_abort.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_endsig.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_eniop.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_exec.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_exit.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_fork.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_getinfo.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_getsig.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_in.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_int86.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_irqctl.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_kill.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_memset.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_newmap.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_nice.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_out.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_physcopy.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_sdevio.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_segctl.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_setalarm.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_sigreturn.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_sigsend.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_privctl.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_times.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_trace.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_umap.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_vinb.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_vinl.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_vinw.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_vircopy.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_vm_map.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_vm_setbuf.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_voutb.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_voutl.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(sys_voutw.o) +../obj-ack//libsys.a: ../obj-ack//libsys.a(taskcall.o) + +../obj-ack//libsys.a: + ar cr ../obj-ack//libsys.a ../obj-ack//./syslib/*.o + rm ../obj-ack//./syslib/*.o + +../obj-ack//libsys.a(pci_attr_r16.o): pci_attr_r16.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_attr_r16.o pci_attr_r16.c +../obj-ack//libsys.a(pci_attr_r32.o): pci_attr_r32.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_attr_r32.o pci_attr_r32.c +../obj-ack//libsys.a(pci_attr_r8.o): pci_attr_r8.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_attr_r8.o pci_attr_r8.c +../obj-ack//libsys.a(pci_attr_w16.o): pci_attr_w16.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_attr_w16.o pci_attr_w16.c +../obj-ack//libsys.a(pci_attr_w32.o): pci_attr_w32.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_attr_w32.o pci_attr_w32.c +../obj-ack//libsys.a(pci_attr_w8.o): pci_attr_w8.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_attr_w8.o pci_attr_w8.c +../obj-ack//libsys.a(pci_dev_name.o): pci_dev_name.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_dev_name.o pci_dev_name.c +../obj-ack//libsys.a(pci_find_dev.o): pci_find_dev.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_find_dev.o pci_find_dev.c +../obj-ack//libsys.a(pci_first_dev.o): pci_first_dev.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_first_dev.o pci_first_dev.c +../obj-ack//libsys.a(pci_ids.o): pci_ids.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_ids.o pci_ids.c +../obj-ack//libsys.a(pci_init.o): pci_init.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_init.o pci_init.c +../obj-ack//libsys.a(pci_init1.o): pci_init1.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_init1.o pci_init1.c +../obj-ack//libsys.a(pci_next_dev.o): pci_next_dev.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_next_dev.o pci_next_dev.c +../obj-ack//libsys.a(pci_rescan_bus.o): pci_rescan_bus.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_rescan_bus.o pci_rescan_bus.c +../obj-ack//libsys.a(pci_reserve.o): pci_reserve.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_reserve.o pci_reserve.c +../obj-ack//libsys.a(pci_slot_name.o): pci_slot_name.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/pci_slot_name.o pci_slot_name.c +../obj-ack//libsys.a(sys_abort.o): sys_abort.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_abort.o sys_abort.c +../obj-ack//libsys.a(sys_endsig.o): sys_endsig.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_endsig.o sys_endsig.c +../obj-ack//libsys.a(sys_eniop.o): sys_eniop.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_eniop.o sys_eniop.c +../obj-ack//libsys.a(sys_exec.o): sys_exec.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_exec.o sys_exec.c +../obj-ack//libsys.a(sys_exit.o): sys_exit.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_exit.o sys_exit.c +../obj-ack//libsys.a(sys_fork.o): sys_fork.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_fork.o sys_fork.c +../obj-ack//libsys.a(sys_getinfo.o): sys_getinfo.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_getinfo.o sys_getinfo.c +../obj-ack//libsys.a(sys_getsig.o): sys_getsig.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_getsig.o sys_getsig.c +../obj-ack//libsys.a(sys_in.o): sys_in.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_in.o sys_in.c +../obj-ack//libsys.a(sys_int86.o): sys_int86.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_int86.o sys_int86.c +../obj-ack//libsys.a(sys_irqctl.o): sys_irqctl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_irqctl.o sys_irqctl.c +../obj-ack//libsys.a(sys_kill.o): sys_kill.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_kill.o sys_kill.c +../obj-ack//libsys.a(sys_memset.o): sys_memset.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_memset.o sys_memset.c +../obj-ack//libsys.a(sys_newmap.o): sys_newmap.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_newmap.o sys_newmap.c +../obj-ack//libsys.a(sys_nice.o): sys_nice.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_nice.o sys_nice.c +../obj-ack//libsys.a(sys_out.o): sys_out.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_out.o sys_out.c +../obj-ack//libsys.a(sys_physcopy.o): sys_physcopy.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_physcopy.o sys_physcopy.c +../obj-ack//libsys.a(sys_sdevio.o): sys_sdevio.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_sdevio.o sys_sdevio.c +../obj-ack//libsys.a(sys_segctl.o): sys_segctl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_segctl.o sys_segctl.c +../obj-ack//libsys.a(sys_setalarm.o): sys_setalarm.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_setalarm.o sys_setalarm.c +../obj-ack//libsys.a(sys_sigreturn.o): sys_sigreturn.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_sigreturn.o sys_sigreturn.c +../obj-ack//libsys.a(sys_sigsend.o): sys_sigsend.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_sigsend.o sys_sigsend.c +../obj-ack//libsys.a(sys_privctl.o): sys_privctl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_privctl.o sys_privctl.c +../obj-ack//libsys.a(sys_times.o): sys_times.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_times.o sys_times.c +../obj-ack//libsys.a(sys_trace.o): sys_trace.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_trace.o sys_trace.c +../obj-ack//libsys.a(sys_umap.o): sys_umap.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_umap.o sys_umap.c +../obj-ack//libsys.a(sys_vinb.o): sys_vinb.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_vinb.o sys_vinb.c +../obj-ack//libsys.a(sys_vinl.o): sys_vinl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_vinl.o sys_vinl.c +../obj-ack//libsys.a(sys_vinw.o): sys_vinw.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_vinw.o sys_vinw.c +../obj-ack//libsys.a(sys_vircopy.o): sys_vircopy.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_vircopy.o sys_vircopy.c +../obj-ack//libsys.a(sys_vm_map.o): sys_vm_map.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_vm_map.o sys_vm_map.c +../obj-ack//libsys.a(sys_vm_setbuf.o): sys_vm_setbuf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_vm_setbuf.o sys_vm_setbuf.c +../obj-ack//libsys.a(sys_voutb.o): sys_voutb.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_voutb.o sys_voutb.c +../obj-ack//libsys.a(sys_voutl.o): sys_voutl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_voutl.o sys_voutl.c +../obj-ack//libsys.a(sys_voutw.o): sys_voutw.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/sys_voutw.o sys_voutw.c +../obj-ack//libsys.a(taskcall.o): taskcall.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./syslib/taskcall.o taskcall.c + +all-gnu: ../obj-gnu/libsys.a + +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_attr_r16.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_attr_r32.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_attr_r8.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_attr_w16.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_attr_w32.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_attr_w8.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_dev_name.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_find_dev.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_first_dev.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_ids.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_init.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_init1.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_next_dev.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_rescan_bus.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_reserve.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/pci_slot_name.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_abort.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_endsig.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_eniop.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_exec.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_exit.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_fork.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_getinfo.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_getsig.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_in.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_int86.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_irqctl.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_kill.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_memset.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_newmap.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_nice.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_out.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_physcopy.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_sdevio.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_segctl.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_setalarm.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_sigreturn.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_sigsend.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_privctl.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_times.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_trace.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_umap.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_vinb.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_vinl.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_vinw.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_vircopy.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_vm_map.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_vm_setbuf.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_voutb.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_voutl.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/sys_voutw.o +../obj-gnu/libsys.a: ../obj-gnu/./syslib/taskcall.o + +../obj-gnu/libsys.a: + gar cr ../obj-gnu/libsys.a $? + +../obj-gnu/./syslib/pci_attr_r16.o: pci_attr_r16.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_attr_r16.o pci_attr_r16.c + +../obj-gnu/./syslib/pci_attr_r32.o: pci_attr_r32.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_attr_r32.o pci_attr_r32.c + +../obj-gnu/./syslib/pci_attr_r8.o: pci_attr_r8.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_attr_r8.o pci_attr_r8.c + +../obj-gnu/./syslib/pci_attr_w16.o: pci_attr_w16.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_attr_w16.o pci_attr_w16.c + +../obj-gnu/./syslib/pci_attr_w32.o: pci_attr_w32.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_attr_w32.o pci_attr_w32.c + +../obj-gnu/./syslib/pci_attr_w8.o: pci_attr_w8.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_attr_w8.o pci_attr_w8.c + +../obj-gnu/./syslib/pci_dev_name.o: pci_dev_name.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_dev_name.o pci_dev_name.c + +../obj-gnu/./syslib/pci_find_dev.o: pci_find_dev.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_find_dev.o pci_find_dev.c + +../obj-gnu/./syslib/pci_first_dev.o: pci_first_dev.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_first_dev.o pci_first_dev.c + +../obj-gnu/./syslib/pci_ids.o: pci_ids.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_ids.o pci_ids.c + +../obj-gnu/./syslib/pci_init.o: pci_init.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_init.o pci_init.c + +../obj-gnu/./syslib/pci_init1.o: pci_init1.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_init1.o pci_init1.c + +../obj-gnu/./syslib/pci_next_dev.o: pci_next_dev.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_next_dev.o pci_next_dev.c + +../obj-gnu/./syslib/pci_rescan_bus.o: pci_rescan_bus.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_rescan_bus.o pci_rescan_bus.c + +../obj-gnu/./syslib/pci_reserve.o: pci_reserve.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_reserve.o pci_reserve.c + +../obj-gnu/./syslib/pci_slot_name.o: pci_slot_name.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/pci_slot_name.o pci_slot_name.c + +../obj-gnu/./syslib/sys_abort.o: sys_abort.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_abort.o sys_abort.c + +../obj-gnu/./syslib/sys_endsig.o: sys_endsig.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_endsig.o sys_endsig.c + +../obj-gnu/./syslib/sys_eniop.o: sys_eniop.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_eniop.o sys_eniop.c + +../obj-gnu/./syslib/sys_exec.o: sys_exec.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_exec.o sys_exec.c + +../obj-gnu/./syslib/sys_exit.o: sys_exit.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_exit.o sys_exit.c + +../obj-gnu/./syslib/sys_fork.o: sys_fork.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_fork.o sys_fork.c + +../obj-gnu/./syslib/sys_getinfo.o: sys_getinfo.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_getinfo.o sys_getinfo.c + +../obj-gnu/./syslib/sys_getsig.o: sys_getsig.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_getsig.o sys_getsig.c + +../obj-gnu/./syslib/sys_in.o: sys_in.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_in.o sys_in.c + +../obj-gnu/./syslib/sys_int86.o: sys_int86.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_int86.o sys_int86.c + +../obj-gnu/./syslib/sys_irqctl.o: sys_irqctl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_irqctl.o sys_irqctl.c + +../obj-gnu/./syslib/sys_kill.o: sys_kill.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_kill.o sys_kill.c + +../obj-gnu/./syslib/sys_memset.o: sys_memset.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_memset.o sys_memset.c + +../obj-gnu/./syslib/sys_newmap.o: sys_newmap.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_newmap.o sys_newmap.c + +../obj-gnu/./syslib/sys_nice.o: sys_nice.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_nice.o sys_nice.c + +../obj-gnu/./syslib/sys_out.o: sys_out.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_out.o sys_out.c + +../obj-gnu/./syslib/sys_physcopy.o: sys_physcopy.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_physcopy.o sys_physcopy.c + +../obj-gnu/./syslib/sys_sdevio.o: sys_sdevio.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_sdevio.o sys_sdevio.c + +../obj-gnu/./syslib/sys_segctl.o: sys_segctl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_segctl.o sys_segctl.c + +../obj-gnu/./syslib/sys_setalarm.o: sys_setalarm.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_setalarm.o sys_setalarm.c + +../obj-gnu/./syslib/sys_sigreturn.o: sys_sigreturn.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_sigreturn.o sys_sigreturn.c + +../obj-gnu/./syslib/sys_sigsend.o: sys_sigsend.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_sigsend.o sys_sigsend.c + +../obj-gnu/./syslib/sys_privctl.o: sys_privctl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_privctl.o sys_privctl.c + +../obj-gnu/./syslib/sys_times.o: sys_times.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_times.o sys_times.c + +../obj-gnu/./syslib/sys_trace.o: sys_trace.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_trace.o sys_trace.c + +../obj-gnu/./syslib/sys_umap.o: sys_umap.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_umap.o sys_umap.c + +../obj-gnu/./syslib/sys_vinb.o: sys_vinb.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_vinb.o sys_vinb.c + +../obj-gnu/./syslib/sys_vinl.o: sys_vinl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_vinl.o sys_vinl.c + +../obj-gnu/./syslib/sys_vinw.o: sys_vinw.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_vinw.o sys_vinw.c + +../obj-gnu/./syslib/sys_vircopy.o: sys_vircopy.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_vircopy.o sys_vircopy.c + +../obj-gnu/./syslib/sys_vm_map.o: sys_vm_map.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_vm_map.o sys_vm_map.c + +../obj-gnu/./syslib/sys_vm_setbuf.o: sys_vm_setbuf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_vm_setbuf.o sys_vm_setbuf.c + +../obj-gnu/./syslib/sys_voutb.o: sys_voutb.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_voutb.o sys_voutb.c + +../obj-gnu/./syslib/sys_voutl.o: sys_voutl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_voutl.o sys_voutl.c + +../obj-gnu/./syslib/sys_voutw.o: sys_voutw.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/sys_voutw.o sys_voutw.c + +../obj-gnu/./syslib/taskcall.o: taskcall.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./syslib/taskcall.o taskcall.c + + + + +clean:: + rm -f ../obj-ack//./syslib/* + rm -f ../obj-gnu/./syslib/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/syslib: Makefile.in Only in src/lib/syslib: pci.h Only in src/lib/syslib: pci_attr_r16.c Only in src/lib/syslib: pci_attr_r32.c Only in src/lib/syslib: pci_attr_r8.c Only in src/lib/syslib: pci_attr_w16.c Only in src/lib/syslib: pci_attr_w32.c Only in src/lib/syslib: pci_attr_w8.c Only in src/lib/syslib: pci_dev_name.c Only in src/lib/syslib: pci_find_dev.c Only in src/lib/syslib: pci_first_dev.c Only in src/lib/syslib: pci_ids.c Only in src/lib/syslib: pci_init.c Only in src/lib/syslib: pci_init1.c Only in src/lib/syslib: pci_next_dev.c Only in src/lib/syslib: pci_rescan_bus.c Only in src/lib/syslib: pci_reserve.c Only in src/lib/syslib: pci_slot_name.c Only in src/lib/syslib: sys_eniop.c Only in src/lib/syslib: sys_privctl.c Only in src/lib/syslib: sys_vm_map.c Only in src/lib/syslib: sys_vm_setbuf.c Only in src/lib/sysutil: .depend-ack Only in src/lib/sysutil: .depend-gnu Only in src/lib/sysutil: Makedepend-ack Only in src/lib/sysutil: Makedepend-gnu diff -ur oldsrc/lib/sysutil/Makefile src/lib/sysutil/Makefile --- oldsrc/lib/sysutil/Makefile 2005-10-21 15:19:34.000000000 +0400 +++ src/lib/sysutil/Makefile 2006-02-20 19:10:52.000000000 +0300 @@ -1,22 +1,136 @@ -# Makefile for lib/utils. +#Generated from ./sysutil/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libsysutil +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./sysutil ../obj-ack/ ../obj-gnu -libsysutil_OBJECTS = \ - kmalloc.o \ - kprintf.o \ - kputc.o \ - tickdelay.o \ - getuptime.o \ - env_get_prm.o \ - env_parse.o \ - env_panic.o \ - env_prefix.o \ - fkey_ctl.o \ - panic.o \ - report.o \ - taskcall.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./sysutil ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libsysutil.a + +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(kmalloc.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(kprintf.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(kputc.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(tickdelay.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(getuptime.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(env_get_prm.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(env_parse.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(env_panic.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(env_prefix.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(fkey_ctl.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(panic.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(report.o) +../obj-ack//libsysutil.a: ../obj-ack//libsysutil.a(taskcall.o) + +../obj-ack//libsysutil.a: + ar cr ../obj-ack//libsysutil.a ../obj-ack//./sysutil/*.o + rm ../obj-ack//./sysutil/*.o + +../obj-ack//libsysutil.a(kmalloc.o): kmalloc.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/kmalloc.o kmalloc.c +../obj-ack//libsysutil.a(kprintf.o): kprintf.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/kprintf.o kprintf.c +../obj-ack//libsysutil.a(kputc.o): kputc.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/kputc.o kputc.c +../obj-ack//libsysutil.a(tickdelay.o): tickdelay.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/tickdelay.o tickdelay.c +../obj-ack//libsysutil.a(getuptime.o): getuptime.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/getuptime.o getuptime.c +../obj-ack//libsysutil.a(env_get_prm.o): env_get_prm.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/env_get_prm.o env_get_prm.c +../obj-ack//libsysutil.a(env_parse.o): env_parse.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/env_parse.o env_parse.c +../obj-ack//libsysutil.a(env_panic.o): env_panic.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/env_panic.o env_panic.c +../obj-ack//libsysutil.a(env_prefix.o): env_prefix.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/env_prefix.o env_prefix.c +../obj-ack//libsysutil.a(fkey_ctl.o): fkey_ctl.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/fkey_ctl.o fkey_ctl.c +../obj-ack//libsysutil.a(panic.o): panic.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/panic.o panic.c +../obj-ack//libsysutil.a(report.o): report.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/report.o report.c +../obj-ack//libsysutil.a(taskcall.o): taskcall.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./sysutil/taskcall.o taskcall.c + +all-gnu: ../obj-gnu/libsysutil.a + +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/kmalloc.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/kprintf.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/kputc.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/tickdelay.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/getuptime.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/env_get_prm.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/env_parse.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/env_panic.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/env_prefix.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/fkey_ctl.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/panic.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/report.o +../obj-gnu/libsysutil.a: ../obj-gnu/./sysutil/taskcall.o + +../obj-gnu/libsysutil.a: + gar cr ../obj-gnu/libsysutil.a $? + +../obj-gnu/./sysutil/kmalloc.o: kmalloc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/kmalloc.o kmalloc.c + +../obj-gnu/./sysutil/kprintf.o: kprintf.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/kprintf.o kprintf.c + +../obj-gnu/./sysutil/kputc.o: kputc.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/kputc.o kputc.c + +../obj-gnu/./sysutil/tickdelay.o: tickdelay.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/tickdelay.o tickdelay.c + +../obj-gnu/./sysutil/getuptime.o: getuptime.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/getuptime.o getuptime.c + +../obj-gnu/./sysutil/env_get_prm.o: env_get_prm.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/env_get_prm.o env_get_prm.c + +../obj-gnu/./sysutil/env_parse.o: env_parse.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/env_parse.o env_parse.c + +../obj-gnu/./sysutil/env_panic.o: env_panic.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/env_panic.o env_panic.c + +../obj-gnu/./sysutil/env_prefix.o: env_prefix.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/env_prefix.o env_prefix.c + +../obj-gnu/./sysutil/fkey_ctl.o: fkey_ctl.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/fkey_ctl.o fkey_ctl.c + +../obj-gnu/./sysutil/panic.o: panic.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/panic.o panic.c + +../obj-gnu/./sysutil/report.o: report.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/report.o report.c + +../obj-gnu/./sysutil/taskcall.o: taskcall.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./sysutil/taskcall.o taskcall.c + + + + +clean:: + rm -f ../obj-ack//./sysutil/* + rm -f ../obj-gnu/./sysutil/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/sysutil: Makefile.in diff -ur oldsrc/lib/sysutil/panic.c src/lib/sysutil/panic.c --- oldsrc/lib/sysutil/panic.c 2005-10-17 17:19:22.000000000 +0400 +++ src/lib/sysutil/panic.c 2005-10-24 17:47:24.000000000 +0400 @@ -2,6 +2,8 @@ #include "sysutil.h" +int panicing= 0; + /*===========================================================================* * panic * *===========================================================================*/ @@ -16,6 +18,8 @@ */ message m; void (*suicide)(void); + + panicing= 1; if (NULL != who && NULL != mess) { if (num != NO_NUM) { printf("Panic in %s: %s: %d\n", who, mess, num); Only in src/lib/timers: .depend-ack Only in src/lib/timers: .depend-gnu Only in src/lib/timers: Makedepend-ack Only in src/lib/timers: Makedepend-gnu diff -ur oldsrc/lib/timers/Makefile src/lib/timers/Makefile --- oldsrc/lib/timers/Makefile 2005-10-21 15:19:34.000000000 +0400 +++ src/lib/timers/Makefile 2006-02-20 19:10:53.000000000 +0300 @@ -1,12 +1,66 @@ -# Makefile for lib/tmrslib. +#Generated from ./timers/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libtimers +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./timers ../obj-ack/ ../obj-gnu -libtimers_OBJECTS = \ - tmrs_set.o \ - tmrs_clr.o \ - tmrs_exp.o \ +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./timers ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libtimers.a + +../obj-ack//libtimers.a: ../obj-ack//libtimers.a(tmrs_set.o) +../obj-ack//libtimers.a: ../obj-ack//libtimers.a(tmrs_clr.o) +../obj-ack//libtimers.a: ../obj-ack//libtimers.a(tmrs_exp.o) + +../obj-ack//libtimers.a: + ar cr ../obj-ack//libtimers.a ../obj-ack//./timers/*.o + rm ../obj-ack//./timers/*.o + +../obj-ack//libtimers.a(tmrs_set.o): tmrs_set.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./timers/tmrs_set.o tmrs_set.c +../obj-ack//libtimers.a(tmrs_clr.o): tmrs_clr.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./timers/tmrs_clr.o tmrs_clr.c +../obj-ack//libtimers.a(tmrs_exp.o): tmrs_exp.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./timers/tmrs_exp.o tmrs_exp.c + +all-gnu: ../obj-gnu/libtimers.a + +../obj-gnu/libtimers.a: ../obj-gnu/./timers/tmrs_set.o +../obj-gnu/libtimers.a: ../obj-gnu/./timers/tmrs_clr.o +../obj-gnu/libtimers.a: ../obj-gnu/./timers/tmrs_exp.o + +../obj-gnu/libtimers.a: + gar cr ../obj-gnu/libtimers.a $? + +../obj-gnu/./timers/tmrs_set.o: tmrs_set.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./timers/tmrs_set.o tmrs_set.c + +../obj-gnu/./timers/tmrs_clr.o: tmrs_clr.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./timers/tmrs_clr.o tmrs_clr.c + +../obj-gnu/./timers/tmrs_exp.o: tmrs_exp.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./timers/tmrs_exp.o tmrs_exp.c + + + + +clean:: + rm -f ../obj-ack//./timers/* + rm -f ../obj-gnu/./timers/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/timers: Makefile.in Only in src/lib/util: .depend-ack Only in src/lib/util: .depend-gnu Only in src/lib/util: Makedepend-ack Only in src/lib/util: Makedepend-gnu diff -ur oldsrc/lib/util/Makefile src/lib/util/Makefile --- oldsrc/lib/util/Makefile 2005-10-21 15:19:34.000000000 +0400 +++ src/lib/util/Makefile 2006-02-20 19:10:51.000000000 +0300 @@ -1,10 +1,52 @@ -# Makefile for lib/util. +#Generated from ./util/Makefile.in +all: all-ack -CFLAGS = -O -D_MINIX -D_POSIX_SOURCE +all-ack: +all-gnu: -LIBRARIES = libutil +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./util ../obj-ack/ ../obj-gnu -libutil_OBJECTS = \ - openpty.o +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./util ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo -include ../Makefile.inc +depend: depend-ack +all-ack: ../obj-ack//libutil.a + +../obj-ack//libutil.a: ../obj-ack//libutil.a(openpty.o) + +../obj-ack//libutil.a: + ar cr ../obj-ack//libutil.a ../obj-ack//./util/*.o + rm ../obj-ack//./util/*.o + +../obj-ack//libutil.a(openpty.o): openpty.c + cc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-ack//./util/openpty.o openpty.c + +all-gnu: ../obj-gnu/libutil.a + +../obj-gnu/libutil.a: ../obj-gnu/./util/openpty.o + +../obj-gnu/libutil.a: + gar cr ../obj-gnu/libutil.a $? + +../obj-gnu/./util/openpty.o: openpty.c + gcc -O -D_MINIX -D_POSIX_SOURCE -c -o ../obj-gnu/./util/openpty.o openpty.c + + + + +clean:: + rm -f ../obj-ack//./util/* + rm -f ../obj-gnu/./util/* + +include Makedepend-ack +include .depend-ack + +include Makedepend-gnu +include .depend-gnu Only in src/lib/util: Makefile.in Only in src/lib/zlib-1.2.3: .depend-ack Only in src/lib/zlib-1.2.3: .depend-gnu Only in src/lib/zlib-1.2.3: Makedepend-ack Only in src/lib/zlib-1.2.3: Makedepend-gnu diff -ur oldsrc/lib/zlib-1.2.3/Makefile src/lib/zlib-1.2.3/Makefile --- oldsrc/lib/zlib-1.2.3/Makefile 2005-10-22 01:27:14.000000000 +0400 +++ src/lib/zlib-1.2.3/Makefile 2006-02-20 19:11:00.000000000 +0300 @@ -1,170 +1,129 @@ -# Makefile for zlib -# Copyright (C) 1995-2003 Jean-loup Gailly. -# For conditions of distribution and use, see copyright notice in zlib.h - -# To compile and test, type: -# ./configure; make test -# The call of configure is optional if you don't have special requirements -# If you wish to build zlib as a shared library, use: ./configure -s - -# To use the asm code, type: -# cp contrib/asm?86/match.S ./match.S -# make LOC=-DASMV OBJA=match.o - -# To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type: -# make install -# To install in $HOME instead of /usr/local, use: -# make install prefix=$HOME - -#CC=cc - -CFLAGS=-D_MINIX=1 -D_POSIX_SOURCE=1 -#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 -#CFLAGS=-g -DDEBUG -#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ -# -Wstrict-prototypes -Wmissing-prototypes - -#LDFLAGS=-L. libz.a -#LDSHARED=cc -#CPP=cc -E - -LIBS=$(ACKBASE)/libz.a -LIBRARIES=libz -#SHAREDLIB=libz.so -#SHAREDLIBV=libz.so.1.2.2 -#SHAREDLIBM=libz.so.1 - -#AR=ar rc -#RANLIB=ranlib -#TAR=tar -#SHELL=/bin/sh -#EXE= - -prefix =/usr/local -exec_prefix =${prefix} -libdir =${exec_prefix}/lib -includedir =${prefix}/include -mandir =/usr/local/man -man3dir = ${mandir}/man3 - -#OBJS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \ -# zutil.o inflate.o infback.o inftrees.o inffast.o - -#OBJA = -# to use the asm code: make OBJA=match.o - -libz_OBJECTS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \ - zutil.o inflate.o infback.o inftrees.o inffast.o - -# to use the asm code: add match.o to liz_OBJECTS - -#TEST_OBJS = example.o minigzip.o - -#all:: example$(EXE) minigzip$(EXE) - -#check: test -#test: all -# @LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \ -# echo hello world | ./minigzip | ./minigzip -d || \ -# echo ' *** minigzip test FAILED ***' ; \ -# if ./example; then \ -# echo ' *** zlib test OK ***'; \ -# else \ -# echo ' *** zlib test FAILED ***'; \ -# fi - -#libz.a: $(OBJS) $(OBJA) -# $(AR) $@ $(OBJS) $(OBJA) -# -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 - -#match.o: match.S -# $(CPP) match.S > _match.s -# $(CC) -c _match.s -# mv _match.o match.o -# rm -f _match.s - -#$(SHAREDLIBV): $(OBJS) -# $(LDSHARED) -o $@ $(OBJS) -# rm -f $(SHAREDLIB) $(SHAREDLIBM) -# ln -s $@ $(SHAREDLIB) -# ln -s $@ $(SHAREDLIBM) - -#example$(EXE): example.o $(LIBS) -# $(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS) - -#minigzip$(EXE): minigzip.o $(LIBS) -# $(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS) - -install:: - -@if [ ! -d $(exec_prefix) ]; then mkdir -p $(exec_prefix); fi - -@if [ ! -d $(includedir) ]; then mkdir -p $(includedir); fi - -@if [ ! -d $(libdir) ]; then mkdir -p $(libdir); fi - -@if [ ! -d $(man3dir) ]; then mkdir -p $(man3dir); fi - install -o bin zlib.h zconf.h $(includedir) - chmod 644 $(includedir)/zlib.h $(includedir)/zconf.h - install -o bin $(LIBS) $(libdir) - cd $(libdir); chmod 755 $(LIBS) - -@(cd $(libdir); $(RANLIB) libz.a || true) >/dev/null 2>&1 - cd $(libdir); if test -f $(SHAREDLIBV); then \ - rm -f $(SHAREDLIB) $(SHAREDLIBM); \ - ln -s $(SHAREDLIBV) $(SHAREDLIB); \ - ln -s $(SHAREDLIBV) $(SHAREDLIBM); \ - (ldconfig || true) >/dev/null 2>&1; \ - fi - install -o bin zlib.3 $(man3dir) - chmod 644 $(man3dir)/zlib.3 -# The ranlib in install is needed on NeXTSTEP which checks file times -# ldconfig is for Linux - -#uninstall: -# cd $(includedir); \ -# cd $(libdir); rm -f libz.a; \ -# if test -f $(SHAREDLIBV); then \ -# rm -f $(SHAREDLIBV) $(SHAREDLIB) $(SHAREDLIBM); \ -# fi -# cd $(man3dir); rm -f zlib.3 +#Generated from ./zlib-1.2.3/Makefile.in +all: all-ack + +all-ack: +all-gnu: + +makefiles: Makefile +Makedepend-ack Makedepend-gnu: + sh ../generate.sh ./zlib-1.2.3 ../obj-ack/ ../obj-gnu + +Makefile: Makefile.in Makedepend-ack Makedepend-gnu + sh ../generate.sh ./zlib-1.2.3 ../obj-ack/ ../obj-gnu + @echo + @echo *Attention* + @echo Makefile is regenerated... rerun command to see changes + @echo *Attention* + @echo + +depend: depend-ack +all-ack: ../obj-ack//libz.a + +../obj-ack//libz.a: ../obj-ack//libz.a(adler32.o) +../obj-ack//libz.a: ../obj-ack//libz.a(compress.o) +../obj-ack//libz.a: ../obj-ack//libz.a(crc32.o) +../obj-ack//libz.a: ../obj-ack//libz.a(gzio.o) +../obj-ack//libz.a: ../obj-ack//libz.a(uncompr.o) +../obj-ack//libz.a: ../obj-ack//libz.a(deflate.o) +../obj-ack//libz.a: ../obj-ack//libz.a(trees.o) +../obj-ack//libz.a: ../obj-ack//libz.a(zutil.o) +../obj-ack//libz.a: ../obj-ack//libz.a(inflate.o) +../obj-ack//libz.a: ../obj-ack//libz.a(infback.o) +../obj-ack//libz.a: ../obj-ack//libz.a(inftrees.o) +../obj-ack//libz.a: ../obj-ack//libz.a(inffast.o) + +../obj-ack//libz.a: + ar cr ../obj-ack//libz.a ../obj-ack//./zlib-1.2.3/*.o + rm ../obj-ack//./zlib-1.2.3/*.o + +../obj-ack//libz.a(adler32.o): adler32.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/adler32.o adler32.c +../obj-ack//libz.a(compress.o): compress.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/compress.o compress.c +../obj-ack//libz.a(crc32.o): crc32.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/crc32.o crc32.c +../obj-ack//libz.a(gzio.o): gzio.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/gzio.o gzio.c +../obj-ack//libz.a(uncompr.o): uncompr.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/uncompr.o uncompr.c +../obj-ack//libz.a(deflate.o): deflate.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/deflate.o deflate.c +../obj-ack//libz.a(trees.o): trees.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/trees.o trees.c +../obj-ack//libz.a(zutil.o): zutil.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/zutil.o zutil.c +../obj-ack//libz.a(inflate.o): inflate.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/inflate.o inflate.c +../obj-ack//libz.a(infback.o): infback.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/infback.o infback.c +../obj-ack//libz.a(inftrees.o): inftrees.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/inftrees.o inftrees.c +../obj-ack//libz.a(inffast.o): inffast.c + cc -O -c -o ../obj-ack//./zlib-1.2.3/inffast.o inffast.c + +all-gnu: ../obj-gnu/libz.a + +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/adler32.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/compress.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/crc32.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/gzio.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/uncompr.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/deflate.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/trees.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/zutil.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/inflate.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/infback.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/inftrees.o +../obj-gnu/libz.a: ../obj-gnu/./zlib-1.2.3/inffast.o + +../obj-gnu/libz.a: + gar cr ../obj-gnu/libz.a $? + +../obj-gnu/./zlib-1.2.3/adler32.o: adler32.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/adler32.o adler32.c + +../obj-gnu/./zlib-1.2.3/compress.o: compress.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/compress.o compress.c + +../obj-gnu/./zlib-1.2.3/crc32.o: crc32.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/crc32.o crc32.c + +../obj-gnu/./zlib-1.2.3/gzio.o: gzio.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/gzio.o gzio.c + +../obj-gnu/./zlib-1.2.3/uncompr.o: uncompr.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/uncompr.o uncompr.c + +../obj-gnu/./zlib-1.2.3/deflate.o: deflate.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/deflate.o deflate.c + +../obj-gnu/./zlib-1.2.3/trees.o: trees.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/trees.o trees.c + +../obj-gnu/./zlib-1.2.3/zutil.o: zutil.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/zutil.o zutil.c + +../obj-gnu/./zlib-1.2.3/inflate.o: inflate.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/inflate.o inflate.c + +../obj-gnu/./zlib-1.2.3/infback.o: infback.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/infback.o infback.c + +../obj-gnu/./zlib-1.2.3/inftrees.o: inftrees.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/inftrees.o inftrees.c + +../obj-gnu/./zlib-1.2.3/inffast.o: inffast.c + gcc -O -c -o ../obj-gnu/./zlib-1.2.3/inffast.o inffast.c + + + -mostlyclean: clean clean:: - rm -f *.o *~ example$(EXE) minigzip$(EXE) \ - libz.* foo.gz so_locations \ - _match.s maketree contrib/infback9/*.o - -#maintainer-clean: distclean -#distclean: clean -# cp -p Makefile.in Makefile -# cp -p zconf.in.h zconf.h -# rm -f .DS_Store - -#tags: -# etags *.[ch] -# -#depend: -# makedepend -- $(CFLAGS) -- *.[ch] - -## DO NOT DELETE THIS LINE -- make depend depends on it. - -#adler32.o: zlib.h zconf.h -#compress.o: zlib.h zconf.h -#crc32.o: crc32.h zlib.h zconf.h -#deflate.o: deflate.h zutil.h zlib.h zconf.h -#example.o: zlib.h zconf.h -#gzio.o: zutil.h zlib.h zconf.h -#inffast.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h -#inflate.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h -#infback.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h -#inftrees.o: zutil.h zlib.h zconf.h inftrees.h -#minigzip.o: zlib.h zconf.h -#trees.o: deflate.h zutil.h zlib.h zconf.h trees.h -#uncompr.o: zlib.h zconf.h -#zutil.o: zutil.h zlib.h zconf.h - -include ../Makefile.inc - -$(call ADDDEPENDENCIES,libz_OBJECTS,zlib.h zconf.h) -$(call ADDDEPENDENCIES,deflate.o gzio.o inffast.o inflate.o infback.o inftrees.o trees.o zutil.o,zutil.h) -$(call ADDDEPENDENCIES,deflate.o trees.o,deflate.h) -$(call ADDDEPENDENCIES,inffast.o inflate.o infback.o inftrees.o,inftrees.h) -$(call ADDDEPENDENCIES,inffast.o inflate.o infback.o,inflate.h inffast.h) -$(call ADDDEPENDENCIES,crc32.o,crc32.h) + rm -f ../obj-ack//./zlib-1.2.3/* + rm -f ../obj-gnu/./zlib-1.2.3/* + +include Makedepend-ack +include .depend-ack +include Makedepend-gnu +include .depend-gnu diff -ur oldsrc/lib/zlib-1.2.3/Makefile.in src/lib/zlib-1.2.3/Makefile.in --- oldsrc/lib/zlib-1.2.3/Makefile.in 2005-10-21 15:19:35.000000000 +0400 +++ src/lib/zlib-1.2.3/Makefile.in 2006-01-16 18:44:55.000000000 +0300 @@ -1,154 +1,12 @@ # Makefile for zlib -# Copyright (C) 1995-2003 Jean-loup Gailly. -# For conditions of distribution and use, see copyright notice in zlib.h - -# To compile and test, type: -# ./configure; make test -# The call of configure is optional if you don't have special requirements -# If you wish to build zlib as a shared library, use: ./configure -s - -# To use the asm code, type: -# cp contrib/asm?86/match.S ./match.S -# make LOC=-DASMV OBJA=match.o - -# To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type: -# make install -# To install in $HOME instead of /usr/local, use: -# make install prefix=$HOME CC=cc CFLAGS=-O -#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 -#CFLAGS=-g -DDEBUG -#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ -# -Wstrict-prototypes -Wmissing-prototypes - -LDFLAGS=libz.a -LDSHARED=$(CC) -CPP=$(CC) -E - -LIBS=libz.a -SHAREDLIB=libz.so -SHAREDLIBV=libz.so.1.2.3 -SHAREDLIBM=libz.so.1 - -AR=ar rc -RANLIB=ranlib -TAR=tar -SHELL=/bin/sh -EXE= - -prefix = /usr/local -exec_prefix = ${prefix} -libdir = ${exec_prefix}/lib -includedir = ${prefix}/include -mandir = ${prefix}/share/man -man3dir = ${mandir}/man3 - -OBJS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \ - zutil.o inflate.o infback.o inftrees.o inffast.o - -OBJA = -# to use the asm code: make OBJA=match.o - -TEST_OBJS = example.o minigzip.o - -all: example$(EXE) minigzip$(EXE) - -check: test -test: all - @LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \ - echo hello world | ./minigzip | ./minigzip -d || \ - echo ' *** minigzip test FAILED ***' ; \ - if ./example; then \ - echo ' *** zlib test OK ***'; \ - else \ - echo ' *** zlib test FAILED ***'; \ - fi - -libz.a: $(OBJS) $(OBJA) - $(AR) $@ $(OBJS) $(OBJA) - -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 - -match.o: match.S - $(CPP) match.S > _match.s - $(CC) -c _match.s - mv _match.o match.o - rm -f _match.s - -$(SHAREDLIBV): $(OBJS) - $(LDSHARED) -o $@ $(OBJS) - rm -f $(SHAREDLIB) $(SHAREDLIBM) - ln -s $@ $(SHAREDLIB) - ln -s $@ $(SHAREDLIBM) - -example$(EXE): example.o $(LIBS) - $(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS) - -minigzip$(EXE): minigzip.o $(LIBS) - $(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS) - -install: $(LIBS) - -@if [ ! -d $(exec_prefix) ]; then mkdir -p $(exec_prefix); fi - -@if [ ! -d $(includedir) ]; then mkdir -p $(includedir); fi - -@if [ ! -d $(libdir) ]; then mkdir -p $(libdir); fi - -@if [ ! -d $(man3dir) ]; then mkdir -p $(man3dir); fi - cp zlib.h zconf.h $(includedir) - chmod 644 $(includedir)/zlib.h $(includedir)/zconf.h - cp $(LIBS) $(libdir) - cd $(libdir); chmod 755 $(LIBS) - -@(cd $(libdir); $(RANLIB) libz.a || true) >/dev/null 2>&1 - cd $(libdir); if test -f $(SHAREDLIBV); then \ - rm -f $(SHAREDLIB) $(SHAREDLIBM); \ - ln -s $(SHAREDLIBV) $(SHAREDLIB); \ - ln -s $(SHAREDLIBV) $(SHAREDLIBM); \ - (ldconfig || true) >/dev/null 2>&1; \ - fi - cp zlib.3 $(man3dir) - chmod 644 $(man3dir)/zlib.3 -# The ranlib in install is needed on NeXTSTEP which checks file times -# ldconfig is for Linux - -uninstall: - cd $(includedir); \ - cd $(libdir); rm -f libz.a; \ - if test -f $(SHAREDLIBV); then \ - rm -f $(SHAREDLIBV) $(SHAREDLIB) $(SHAREDLIBM); \ - fi - cd $(man3dir); rm -f zlib.3 - -mostlyclean: clean -clean: - rm -f *.o *~ example$(EXE) minigzip$(EXE) \ - libz.* foo.gz so_locations \ - _match.s maketree contrib/infback9/*.o - -maintainer-clean: distclean -distclean: clean - cp -p Makefile.in Makefile - cp -p zconf.in.h zconf.h - rm -f .DS_Store - -tags: - etags *.[ch] -depend: - makedepend -- $(CFLAGS) -- *.[ch] +LIBRARIES=libz -# DO NOT DELETE THIS LINE -- make depend depends on it. +libz_FILES="adler32.c compress.c crc32.c gzio.c uncompr.c deflate.c trees.c \ + zutil.c inflate.c infback.c inftrees.c inffast.c" -adler32.o: zlib.h zconf.h -compress.o: zlib.h zconf.h -crc32.o: crc32.h zlib.h zconf.h -deflate.o: deflate.h zutil.h zlib.h zconf.h -example.o: zlib.h zconf.h -gzio.o: zutil.h zlib.h zconf.h -inffast.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h -inflate.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h -infback.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h -inftrees.o: zutil.h zlib.h zconf.h inftrees.h -minigzip.o: zlib.h zconf.h -trees.o: deflate.h zutil.h zlib.h zconf.h trees.h -uncompr.o: zlib.h zconf.h -zutil.o: zutil.h zlib.h zconf.h +TYPE=both diff -ur oldsrc/man/man1/du.1 src/man/man1/du.1 --- oldsrc/man/man1/du.1 2005-05-02 17:01:38.000000000 +0400 +++ src/man/man1/du.1 2006-01-11 20:18:53.000000000 +0300 @@ -27,5 +27,10 @@ .PP \fIDu\fR examines one or more directories and prints the amount of space occupied by the files in those directories and their subdirectories. +.SH BUGS +\fIDu\fR calculates disk usage based on file size. It could be there +are holes in the file, not occupying any actual disk blocks, causing +\fIdu\fR to overestimate disk usage. (\fIDu\fR does recognize and correctly +calculate disk usage when hard links are encountered.) .SH "SEE ALSO" .BR df (1). Only in src/man/man1: truncate.1 diff -ur oldsrc/man/man2/fcntl.2 src/man/man2/fcntl.2 --- oldsrc/man/man2/fcntl.2 2005-05-02 17:01:40.000000000 +0400 +++ src/man/man2/fcntl.2 2006-01-11 20:18:53.000000000 +0300 @@ -187,7 +187,7 @@ .SP .BI "fcntl(" fd ", F_FREESP, struct flock *" lkp ")" .RS -This Minix-vmd specific call frees a segment of disk space occupied by the +This call frees a segment of disk space occupied by the file associated with file descriptor .IR fd . The segment is described by the diff -ur oldsrc/man/man2/setuid.2 src/man/man2/setuid.2 --- oldsrc/man/man2/setuid.2 2005-05-02 17:01:40.000000000 +0400 +++ src/man/man2/setuid.2 2006-02-13 16:10:53.000000000 +0300 @@ -7,14 +7,16 @@ .TH SETUID 2 "May 9, 1985" .UC 4 .SH NAME -setuid, setgid \- set user or group ID's +setuid, seteuid, setgid, setegid \- set (effective) user or group ID's .SH SYNOPSIS .nf .ft B #include int setuid(uid_t \fIuid\fP) +int seteuid(uid_t \fIeuid\fP) int setgid(gid_t \fIgid\fP) +int setegid(gid_t \fIegid\fP) .ft R .fi .SH DESCRIPTION @@ -45,4 +47,6 @@ other than one of the allowed changes was attempted. .SH "SEE ALSO" .BR getuid (2), +.BR geteuid (2), .BR getgid (2). +.BR getegid (2). Only in src/man/man2: truncate.2 Only in src/man/man3: getloadavg.3 diff -ur oldsrc/man/man8/add_route.8 src/man/man8/add_route.8 --- oldsrc/man/man8/add_route.8 2005-05-02 17:01:41.000000000 +0400 +++ src/man/man8/add_route.8 2005-11-17 03:05:37.000000000 +0300 @@ -1,6 +1,6 @@ .TH ADD_ROUTE 8 .SH NAME -add_route \- configure IP routing. +add_route, del_route \- configure IP routing. .SH SYNOPSIS .B add_route .RB \-g @@ -9,15 +9,45 @@ .RI destination .RB [ \-n .RI netmask " ]]" -.RB [ \-i +.RB [ \-I .RI "ip device]" +.B del_route +.RB [ \-o "]" +.RB [ \-D "]" +.RB \-g +.RI gateway +.RB [ \-d +.RI destination "]" +.RB [ \-n +.RI netmask " ]]" +.RB [ \-I +.RI ipdev "]" +.RB [ \-v "]" + +.B del_route +.RB \-i +.RB [ \-D "]" +.RB \-g +.RI gateway +.RB \-d +.RI dst +.RB [ \-n +.RI netmask "]" +.RB [ \-I +.RI ipdev "]" +.RB [ \-v "]" + + .SH DESCRIPTION .de SP .if t .sp 0.4 .if n .sp .. .B Add_route -is used for manual entry of routes in the IP routing table. +and +.B del_route +are used for manual maintenance of routes in the IP routing table. + .SH OPTIONS .TP .B \-g @@ -32,7 +62,7 @@ .I netmask specifies a netmask when the destination is a net. .TP -.B \-i +.B \-I .I "ip device" specifies the ip device. .SH "SEE ALSO" @@ -41,7 +71,8 @@ .SH AUTHOR .I Add_route.c was created August 7, 1991 by Philip Homburg. -This manual page by A. S. Woodhull, last revised 13.02.96. +This manual page by A. S. Woodhull, last revised 13.02.96. Added +alias for del_route 17.11.05. diff -ur oldsrc/man/man8/pr_routes.8 src/man/man8/pr_routes.8 --- oldsrc/man/man8/pr_routes.8 2005-05-02 17:01:42.000000000 +0400 +++ src/man/man8/pr_routes.8 2005-11-17 02:52:56.000000000 +0300 @@ -18,7 +18,7 @@ .I "ip device" specifies the ip device. .SH "SEE ALSO" -.BR add_routes (8), +.BR add_route (8), .BR irdp (8). .SH AUTHOR .I Pr_routes.c diff -ur oldsrc/servers/fs/.depend src/servers/fs/.depend --- oldsrc/servers/fs/.depend 2005-10-23 05:16:46.000000000 +0400 +++ src/servers/fs/.depend 2006-02-20 19:10:36.000000000 +0300 @@ -342,6 +342,7 @@ mount.o: /usr/include/minix/syslib.h mount.o: /usr/include/minix/sysutil.h mount.o: /usr/include/minix/type.h +mount.o: /usr/include/string.h mount.o: /usr/include/sys/dir.h mount.o: /usr/include/sys/stat.h mount.o: /usr/include/sys/types.h @@ -375,10 +376,12 @@ open.o: /usr/include/minix/syslib.h open.o: /usr/include/minix/sysutil.h open.o: /usr/include/minix/type.h +open.o: /usr/include/string.h open.o: /usr/include/sys/dir.h open.o: /usr/include/sys/stat.h open.o: /usr/include/sys/types.h open.o: /usr/include/timers.h +open.o: /usr/include/unistd.h open.o: buf.h open.o: const.h open.o: file.h @@ -409,6 +412,7 @@ path.o: /usr/include/minix/type.h path.o: /usr/include/string.h path.o: /usr/include/sys/dir.h +path.o: /usr/include/sys/stat.h path.o: /usr/include/sys/types.h path.o: /usr/include/timers.h path.o: buf.h @@ -550,6 +554,7 @@ select.o: type.h stadir.o: /usr/include/ansi.h +stadir.o: /usr/include/dirent.h stadir.o: /usr/include/errno.h stadir.o: /usr/include/limits.h stadir.o: /usr/include/minix/com.h @@ -562,11 +567,13 @@ stadir.o: /usr/include/minix/syslib.h stadir.o: /usr/include/minix/sysutil.h stadir.o: /usr/include/minix/type.h +stadir.o: /usr/include/string.h stadir.o: /usr/include/sys/dir.h stadir.o: /usr/include/sys/stat.h stadir.o: /usr/include/sys/statfs.h stadir.o: /usr/include/sys/types.h stadir.o: /usr/include/timers.h +stadir.o: buf.h stadir.o: const.h stadir.o: file.h stadir.o: fproc.h diff -ur oldsrc/servers/fs/buf.h src/servers/fs/buf.h --- oldsrc/servers/fs/buf.h 2005-08-29 20:47:18.000000000 +0400 +++ src/servers/fs/buf.h 2005-11-14 21:41:26.000000000 +0300 @@ -17,19 +17,19 @@ EXTERN struct buf { /* Data portion of the buffer. */ union { - char b__data[MAX_BLOCK_SIZE]; /* ordinary user data */ + char b__data[_MAX_BLOCK_SIZE]; /* ordinary user data */ /* directory block */ - struct direct b__dir[NR_DIR_ENTRIES(MAX_BLOCK_SIZE)]; + struct direct b__dir[NR_DIR_ENTRIES(_MAX_BLOCK_SIZE)]; /* V1 indirect block */ zone1_t b__v1_ind[V1_INDIRECTS]; /* V2 indirect block */ - zone_t b__v2_ind[V2_INDIRECTS(MAX_BLOCK_SIZE)]; + zone_t b__v2_ind[V2_INDIRECTS(_MAX_BLOCK_SIZE)]; /* V1 inode block */ d1_inode b__v1_ino[V1_INODES_PER_BLOCK]; /* V2 inode block */ - d2_inode b__v2_ino[V2_INODES_PER_BLOCK(MAX_BLOCK_SIZE)]; + d2_inode b__v2_ino[V2_INODES_PER_BLOCK(_MAX_BLOCK_SIZE)]; /* bit map block */ - bitchunk_t b__bitmap[FS_BITMAP_CHUNKS(MAX_BLOCK_SIZE)]; + bitchunk_t b__bitmap[FS_BITMAP_CHUNKS(_MAX_BLOCK_SIZE)]; } b; /* Header portion of the buffer. */ diff -ur oldsrc/servers/fs/cache.c src/servers/fs/cache.c --- oldsrc/servers/fs/cache.c 2005-10-22 06:36:06.000000000 +0400 +++ src/servers/fs/cache.c 2005-12-14 15:08:49.000000000 +0300 @@ -152,7 +152,7 @@ * it on the front of the LRU chain where it will be the first one to be * taken when a free buffer is needed later. */ - if (bp->b_dev == DEV_RAM || block_type & ONE_SHOT) { + if (bp->b_dev == DEV_RAM || (block_type & ONE_SHOT)) { /* Block probably won't be needed quickly. Put it on front of chain. * It will be the next block to be evicted from the cache. */ diff -ur oldsrc/servers/fs/const.h src/servers/fs/const.h --- oldsrc/servers/fs/const.h 2005-08-29 20:47:18.000000000 +0400 +++ src/servers/fs/const.h 2006-01-20 15:43:19.000000000 +0300 @@ -4,8 +4,8 @@ #define V2_NR_DZONES 7 /* # direct zone numbers in a V2 inode */ #define V2_NR_TZONES 10 /* total # zone numbers in a V2 inode */ -#define NR_FILPS 128 /* # slots in filp table */ -#define NR_INODES 64 /* # slots in "in core" inode table */ +#define NR_FILPS 256 /* # slots in filp table */ +#define NR_INODES 256 /* # slots in "in core" inode table */ #define NR_SUPERS 8 /* # slots in super block table */ #define NR_LOCKS 8 /* # slots in the file locking table */ @@ -28,6 +28,7 @@ /* Miscellaneous constants */ #define SU_UID ((uid_t) 0) /* super_user's uid_t */ +#define SERVERS_UID ((uid_t) 11) /* who may do FSSIGNON */ #define SYS_UID ((uid_t) 0) /* uid_t for processes MM and INIT */ #define SYS_GID ((gid_t) 0) /* gid_t for processes MM and INIT */ #define NORMAL 0 /* forces get_block to do disk read */ @@ -48,6 +49,21 @@ #define DELETE 2 /* tells search_dir to delete entry */ #define IS_EMPTY 3 /* tells search_dir to ret. OK or ENOTEMPTY */ +/* write_map() args */ +#define WMAP_FREE (1 << 0) + +#define PATH_TRANSPARENT 000 /* parse_path stops at final object */ +#define PATH_PENULTIMATE 001 /* parse_path stops at last but one name */ +#define PATH_OPAQUE 002 /* parse_path stops at final name */ +#define PATH_NONSYMBOLIC 004 /* parse_path scans final name if symbolic */ +#define PATH_STRIPDOT 010 /* parse_path strips /. from path */ +#define EAT_PATH PATH_TRANSPARENT +#define EAT_PATH_OPAQUE PATH_OPAQUE +#define LAST_DIR PATH_PENULTIMATE +#define LAST_DIR_NOTDOT PATH_PENULTIMATE | PATH_STRIPDOT +#define LAST_DIR_EATSYM PATH_NONSYMBOLIC +#define SYMLOOP 16 + #define CLEAN 0 /* disk and memory copies identical */ #define DIRTY 1 /* disk and memory copies differ */ #define ATIME 002 /* set if atime field needs updating */ @@ -77,10 +93,10 @@ #define V1_INODE_SIZE usizeof (d1_inode) /* bytes in V1 dsk ino */ /* # zones/indir block */ -#define V1_INDIRECTS (STATIC_BLOCK_SIZE/V1_ZONE_NUM_SIZE) +#define V1_INDIRECTS (_STATIC_BLOCK_SIZE/V1_ZONE_NUM_SIZE) /* # V1 dsk inodes/blk */ -#define V1_INODES_PER_BLOCK (STATIC_BLOCK_SIZE/V1_INODE_SIZE) +#define V1_INODES_PER_BLOCK (_STATIC_BLOCK_SIZE/V1_INODE_SIZE) /* Derived sizes pertaining to the V2 file system. */ #define V2_ZONE_NUM_SIZE usizeof (zone_t) /* # bytes in V2 zone */ diff -ur oldsrc/servers/fs/device.c src/servers/fs/device.c --- oldsrc/servers/fs/device.c 2005-10-22 03:37:58.000000000 +0400 +++ src/servers/fs/device.c 2006-01-17 20:55:35.000000000 +0300 @@ -49,7 +49,9 @@ major = (dev >> MAJOR) & BYTE; if (major >= NR_DEVICES) major = 0; dp = &dmap[major]; - if (dp->dmap_driver == NONE) return ENXIO; + if (dp->dmap_driver == NONE) { + return ENXIO; + } r = (*dp->dmap_opcl)(DEV_OPEN, dev, proc, flags); if (r == SUSPEND) panic(__FILE__,"suspend on open from", dp->dmap_driver); return(r); @@ -88,6 +90,7 @@ int r; st.m_type = DEV_STATUS; if ((r=sendrec(m->m_source, &st)) != OK) { + printf("DEV_STATUS failed to %d: %d\n", m->m_source, r); if (r == EDEADSRCDST) return; if (r == EDSTDIED) return; if (r == ESRCDIED) return; @@ -133,7 +136,10 @@ dp = &dmap[(dev >> MAJOR) & BYTE]; /* See if driver is roughly valid. */ - if (dp->dmap_driver == NONE) return ENXIO; + if (dp->dmap_driver == NONE) { + printf("FS: dev_io: no driver for dev %x\n", dev); + return EIO; + } /* Set up the message passed to task. */ dev_mess.m_type = op; @@ -431,6 +437,7 @@ PUBLIC void no_dev_io(int proc, message *m) { /* Called when doing i/o on a nonexistent device. */ + printf("FS: I/O on unmapped device number\n"); return; } diff -ur oldsrc/servers/fs/dmap.c src/servers/fs/dmap.c --- oldsrc/servers/fs/dmap.c 2005-10-21 00:32:09.000000000 +0400 +++ src/servers/fs/dmap.c 2006-02-15 14:18:21.000000000 +0300 @@ -185,6 +185,7 @@ } } +#if 0 /* Get settings of 'controller' and 'driver' at the boot monitor. */ if ((s = env_get_param("label", driver, sizeof(driver))) != OK) panic(__FILE__,"couldn't get boot monitor parameter 'driver'", s); @@ -209,6 +210,7 @@ panic(__FILE__,"map_driver failed",s); printf("Boot medium driver: %s driver mapped onto controller %s.\n", driver, controller); +#endif } /*===========================================================================* diff -ur oldsrc/servers/fs/inode.c src/servers/fs/inode.c --- oldsrc/servers/fs/inode.c 2005-08-29 20:47:18.000000000 +0400 +++ src/servers/fs/inode.c 2006-01-11 20:14:51.000000000 +0300 @@ -86,12 +86,12 @@ if (--rip->i_count == 0) { /* i_count == 0 means no one is using it now */ if (rip->i_nlinks == 0) { /* i_nlinks == 0 means free the inode. */ - truncate(rip); /* return all the disk blocks */ + truncate_inode(rip, 0); /* return all the disk blocks */ rip->i_mode = I_NOT_ALLOC; /* clear I_TYPE field */ rip->i_dirt = DIRTY; free_inode(rip->i_dev, rip->i_num); } else { - if (rip->i_pipe == I_PIPE) truncate(rip); + if (rip->i_pipe == I_PIPE) truncate_inode(rip, 0); } rip->i_pipe = NO_PIPE; /* should always be cleared */ if (rip->i_dirt == DIRTY) rw_inode(rip, WRITING); diff -ur oldsrc/servers/fs/link.c src/servers/fs/link.c --- oldsrc/servers/fs/link.c 2005-08-22 19:23:46.000000000 +0400 +++ src/servers/fs/link.c 2006-02-13 13:28:42.000000000 +0300 @@ -3,10 +3,13 @@ * file and the blocks must be returned to the free block pool. * * The entry points into this file are - * do_link: perform the LINK system call - * do_unlink: perform the UNLINK and RMDIR system calls - * do_rename: perform the RENAME system call - * truncate: release all the blocks associated with an inode + * do_link: perform the LINK system call + * do_unlink: perform the UNLINK and RMDIR system calls + * do_rename: perform the RENAME system call + * do_truncate: perform the TRUNCATE system call + * do_ftruncate: perform the FTRUNCATE system call + * truncate_inode: release the blocks associated with an inode up to a size + * freesp_inode: release a range of blocks without setting the size */ #include "fs.h" @@ -25,9 +28,15 @@ FORWARD _PROTOTYPE( int remove_dir, (struct inode *rldirp, struct inode *rip, char dir_name[NAME_MAX]) ); - FORWARD _PROTOTYPE( int unlink_file, (struct inode *dirp, struct inode *rip, char file_name[NAME_MAX]) ); +FORWARD _PROTOTYPE( off_t nextblock, (off_t pos, int zonesize) ); +FORWARD _PROTOTYPE( void zeroblock_half, (struct inode *i, off_t p, int l)); +FORWARD _PROTOTYPE( void zeroblock_range, (struct inode *i, off_t p, off_t h)); + +/* Args to zeroblock_half() */ +#define FIRST_HALF 0 +#define LAST_HALF 1 /*===========================================================================* * do_link * @@ -36,7 +45,7 @@ { /* Perform the link(name1, name2) system call. */ - register struct inode *ip, *rip; + struct inode *ip, *rip; register int r; char string[NAME_MAX]; struct inode *new_ip; @@ -69,7 +78,7 @@ /* If 'name2' exists in full (even if no space) set 'r' to error. */ if (r == OK) { - if ( (new_ip = advance(ip, string)) == NIL_INODE) { + if ( (new_ip = advance(&ip, string)) == NIL_INODE) { r = err_code; if (r == ENOENT) r = OK; } else { @@ -121,7 +130,7 @@ /* The last directory exists. Does the file also exist? */ r = OK; - if ( (rip = advance(rldirp, string)) == NIL_INODE) r = err_code; + if ( (rip = advance(&rldirp, string)) == NIL_INODE) r = err_code; /* If error, return inode. */ if (r != OK) { @@ -178,12 +187,12 @@ if (fetch_name(m_in.name1, m_in.name1_length, M1) != OK) return(err_code); if ( (old_dirp = last_dir(user_path, old_name))==NIL_INODE) return(err_code); - if ( (old_ip = advance(old_dirp, old_name)) == NIL_INODE) r = err_code; + if ( (old_ip = advance(&old_dirp, old_name)) == NIL_INODE) r = err_code; /* See if 'name2' (new name) exists. Get dir and file inodes. */ if (fetch_name(m_in.name2, m_in.name2_length, M1) != OK) r = err_code; if ( (new_dirp = last_dir(user_path, new_name)) == NIL_INODE) r = err_code; - new_ip = advance(new_dirp, new_name); /* not required to exist */ + new_ip = advance(&new_dirp, new_name); /* not required to exist */ if (old_ip != NIL_INODE) odir = ((old_ip->i_mode & I_TYPE) == I_DIRECTORY); /* TRUE iff dir */ @@ -200,7 +209,7 @@ r = EINVAL; break; } - next_new_superdirp = advance(new_superdirp, dot2); + next_new_superdirp = advance(&new_superdirp, dot2); put_inode(new_superdirp); if (next_new_superdirp == new_superdirp) break; /* back at system root directory */ @@ -312,62 +321,223 @@ } /*===========================================================================* - * truncate * + * do_truncate * *===========================================================================*/ -PUBLIC void truncate(rip) -register struct inode *rip; /* pointer to inode to be truncated */ +PUBLIC int do_truncate() { -/* Remove all the zones from the inode 'rip' and mark it dirty. */ +/* truncate_inode() does the actual work of do_truncate() and do_ftruncate(). + * do_truncate() and do_ftruncate() have to get hold of the inode, either + * by name or fd, do checks on it, and call truncate_inode() to do the + * work. + */ + int r; + struct inode *rip; /* pointer to inode to be truncated */ + + if (fetch_name(m_in.m2_p1, m_in.m2_i1, M1) != OK) + return err_code; + if( (rip = eat_path(user_path)) == NIL_INODE) + return err_code; + if ( (rip->i_mode & I_TYPE) != I_REGULAR) + r = EINVAL; + else + r = truncate_inode(rip, m_in.m2_l1); + put_inode(rip); + + return r; +} - register block_t b; - zone_t z, zone_size, z1; - off_t position; - int i, scale, file_type, waspipe, single, nr_indirects; - struct buf *bp; +/*===========================================================================* + * do_ftruncate * + *===========================================================================*/ +PUBLIC int do_ftruncate() +{ +/* As with do_truncate(), truncate_inode() does the actual work. */ + struct filp *rfilp; + if ( (rfilp = get_filp(m_in.m2_i1)) == NIL_FILP) + return err_code; + if ( (rfilp->filp_ino->i_mode & I_TYPE) != I_REGULAR) + return EINVAL; + return truncate_inode(rfilp->filp_ino, m_in.m2_l1); +} + +/*===========================================================================* + * truncate_inode * + *===========================================================================*/ +PUBLIC int truncate_inode(rip, newsize) +register struct inode *rip; /* pointer to inode to be truncated */ +off_t newsize; /* inode must become this size */ +{ +/* Set inode to a certain size, freeing any zones no longer referenced + * and updating the size in the inode. If the inode is extended, the + * extra space is a hole that reads as zeroes. + * + * Nothing special has to happen to file pointers if inode is opened in + * O_APPEND mode, as this is different per fd and is checked when + * writing is done. + */ + zone_t zone_size; + off_t p; + int scale, file_type, waspipe; dev_t dev; file_type = rip->i_mode & I_TYPE; /* check to see if file is special */ - if (file_type == I_CHAR_SPECIAL || file_type == I_BLOCK_SPECIAL) return; + if (file_type == I_CHAR_SPECIAL || file_type == I_BLOCK_SPECIAL) + return EINVAL; + if(newsize > rip->i_sp->s_max_size) /* don't let inode grow too big */ + return EFBIG; + dev = rip->i_dev; /* device on which inode resides */ scale = rip->i_sp->s_log_zone_size; zone_size = (zone_t) rip->i_sp->s_block_size << scale; - nr_indirects = rip->i_nindirs; /* Pipes can shrink, so adjust size to make sure all zones are removed. */ - waspipe = rip->i_pipe == I_PIPE; /* TRUE is this was a pipe */ - if (waspipe) rip->i_size = PIPE_SIZE(rip->i_sp->s_block_size); - - /* Step through the file a zone at a time, finding and freeing the zones. */ - for (position = 0; position < rip->i_size; position += zone_size) { - if ( (b = read_map(rip, position)) != NO_BLOCK) { - z = (zone_t) b >> scale; - free_zone(dev, z); - } + waspipe = rip->i_pipe == I_PIPE; /* TRUE if this was a pipe */ + if (waspipe) { + if(newsize != 0) + return EINVAL; /* Only truncate pipes to 0. */ + rip->i_size = PIPE_SIZE(rip->i_sp->s_block_size); } - /* All the data zones have been freed. Now free the indirect zones. */ + /* Free the actual space if relevant. */ + if(newsize < rip->i_size) + freesp_inode(rip, newsize, rip->i_size); + + /* Next correct the inode size. */ + if(!waspipe) rip->i_size = newsize; + else wipe_inode(rip); /* Pipes can only be truncated to 0. */ rip->i_dirt = DIRTY; - if (waspipe) { - wipe_inode(rip); /* clear out inode for pipes */ - return; /* indirect slots contain file positions */ - } - single = rip->i_ndzones; - free_zone(dev, rip->i_zone[single]); /* single indirect zone */ - if ( (z = rip->i_zone[single+1]) != NO_ZONE) { - /* Free all the single indirect zones pointed to by the double. */ - b = (block_t) z << scale; - bp = get_block(dev, b, NORMAL); /* get double indirect zone */ - for (i = 0; i < nr_indirects; i++) { - z1 = rd_indir(bp, i); - free_zone(dev, z1); + + return OK; +} + +/*===========================================================================* + * freesp_inode * + *===========================================================================*/ +PUBLIC int freesp_inode(rip, start, end) +register struct inode *rip; /* pointer to inode to be partly freed */ +off_t start, end; /* range of bytes to free (end uninclusive) */ +{ +/* Cut an arbitrary hole in an inode. The caller is responsible for checking + * the reasonableness of the inode type of rip. The reason is this is that + * this function can be called for different reasons, for which different + * sets of inode types are reasonable. Adjusting the final size of the inode + * is to be done by the caller too, if wished. + * + * Consumers of this function currently are truncate_inode() (used to + * free indirect and data blocks for any type of inode, but also to + * implement the ftruncate() and truncate() system calls) and the F_FREESP + * fcntl(). + */ + off_t p, e; + int zone_size, dev; + + if(end > rip->i_size) /* freeing beyond end makes no sense */ + end = rip->i_size; + if(end <= start) /* end is uninclusive, so starti_sp->s_block_size << rip->i_sp->s_log_zone_size; + dev = rip->i_dev; /* device on which inode resides */ + + /* If freeing doesn't cross a zone boundary, then we may only zero + * a range of the block. + */ + if(start/zone_size == (end-1)/zone_size) { + zeroblock_range(rip, start, end-start); + } else { + /* First zero unused part of partly used blocks. */ + if(start%zone_size) + zeroblock_half(rip, start, LAST_HALF); + if(end%zone_size && end < rip->i_size) + zeroblock_half(rip, end, FIRST_HALF); } - /* Now free the double indirect zone itself. */ - put_block(bp, INDIRECT_BLOCK); - free_zone(dev, z); - } + /* Now completely free the completely unused blocks. + * write_map() will free unused (double) indirect + * blocks too. Converting the range to zone numbers avoids + * overflow on p when doing e.g. 'p += zone_size'. + */ + e = end/zone_size; + if(end == rip->i_size && (end % zone_size)) e++; + for(p = nextblock(start, zone_size)/zone_size; p < e; p ++) + write_map(rip, p*zone_size, NO_ZONE, WMAP_FREE); + + return OK; +} + +/*===========================================================================* + * nextblock * + *===========================================================================*/ +PRIVATE off_t nextblock(pos, zone_size) +off_t pos; +int zone_size; +{ +/* Return the first position in the next block after position 'pos' + * (unless this is the first position in the current block). + * This can be done in one expression, but that can overflow pos. + */ + off_t p; + p = (pos/zone_size)*zone_size; + if((pos % zone_size)) p += zone_size; /* Round up. */ + return p; +} - /* Leave zone numbers for de(1) to recover file after an unlink(2). */ +/*===========================================================================* + * zeroblock_half * + *===========================================================================*/ +PRIVATE void zeroblock_half(rip, pos, half) +struct inode *rip; +off_t pos; +int half; +{ +/* Zero the upper or lower 'half' of a block that holds position 'pos'. + * half can be FIRST_HALF or LAST_HALF. + * + * FIRST_HALF: 0..pos-1 will be zeroed + * LAST_HALF: pos..blocksize-1 will be zeroed + */ + int offset, len; + + /* Offset of zeroing boundary. */ + offset = pos % rip->i_sp->s_block_size; + + if(half == LAST_HALF) { + len = rip->i_sp->s_block_size - offset; + } else { + len = offset; + pos -= offset; + offset = 0; + } + + zeroblock_range(rip, pos, len); +} + +/*===========================================================================* + * zeroblock_range * + *===========================================================================*/ +PRIVATE void zeroblock_range(rip, pos, len) +struct inode *rip; +off_t pos; +off_t len; +{ +/* Zero a range in a block. + * This function is used to zero a segment of a block, either + * FIRST_HALF of LAST_HALF. + * + */ + block_t b; + struct buf *bp; + off_t offset; + + if(!len) return; /* no zeroing to be done. */ + if( (b = read_map(rip, pos)) == NO_BLOCK) return; + if( (bp = get_block(rip->i_dev, b, NORMAL)) == NIL_BUF) + panic(__FILE__, "zeroblock_range: no block", NO_NUM); + offset = pos % rip->i_sp->s_block_size; + if(offset + len > rip->i_sp->s_block_size) + panic(__FILE__, "zeroblock_range: len too long", len); + memset(bp->b_data + offset, 0, len); + bp->b_dirt = DIRTY; + put_block(bp, FULL_DATA_BLOCK); } /*===========================================================================* diff -ur oldsrc/servers/fs/main.c src/servers/fs/main.c --- oldsrc/servers/fs/main.c 2005-10-22 05:10:45.000000000 +0400 +++ src/servers/fs/main.c 2006-02-15 14:18:21.000000000 +0300 @@ -78,10 +78,8 @@ printf("FS, warning illegal %d system call by %d\n", call_nr, who); } else if (fp->fp_pid == PID_FREE) { error = ENOSYS; -#if FS_VERBOSE printf("FS, bad process, who = %d, call_nr = %d, slot1 = %d\n", who, call_nr, m_in.slot1); -#endif } else { error = (*call_vec[call_nr])(); } @@ -170,9 +168,7 @@ int s; m_out.reply_type = result; s = send(whom, &m_out); -#if FS_VERBOSE if (s != OK) printf("FS: couldn't send reply %d: %d\n", result, s); -#endif } /*===========================================================================* @@ -275,12 +271,13 @@ struct super_block *sp, *dsp; block_t b; Dev_t image_dev; - static char sbbuf[MIN_BLOCK_SIZE]; + static char sbbuf[_MIN_BLOCK_SIZE]; int block_size_image, block_size_ram, ramfs_block_size; int s; /* Get some boot environment variables. */ root_dev = igetenv("rootdev", 0); + root_dev = DEV_IMGRD; image_dev = igetenv("ramimagedev", 0); ram_size_kb = igetenv("ramsize", 0); @@ -288,6 +285,7 @@ if (dev_open(root_dev, FS_PROC_NR, R_BIT|W_BIT) != OK) panic(__FILE__,"Cannot open root device",NO_NUM); +#if 0 /* If we must initialize a ram disk, get details from the image device. */ if (root_dev == DEV_RAM) { u32_t fsmax, probedev; @@ -333,6 +331,7 @@ if (ram_size_kb*1024 > fsmax*sp->s_block_size) ram_size_kb = fsmax*sp->s_block_size/1024; } +#endif /* Tell RAM driver how big the RAM disk must be. */ m_out.m_type = DEV_IOCTL; @@ -340,6 +339,7 @@ m_out.DEVICE = RAM_DEV; m_out.REQUEST = MIOCRAMSIZE; /* I/O control to use */ m_out.POSITION = (ram_size_kb * 1024); /* request in bytes */ +#if 0 if ((s=sendrec(MEM_PROC_NR, &m_out)) != OK) panic("FS","sendrec from MEM failed", s); else if (m_out.REP_STATUS != OK) { @@ -351,6 +351,7 @@ panic(__FILE__,"can't set RAM disk size", m_out.REP_STATUS); } } +#endif #if ENABLE_CACHE2 /* The RAM disk is a second level block cache while not otherwise used. */ @@ -361,6 +362,8 @@ if (root_dev != DEV_RAM) return; +#if 0 + /* Copy the blocks one at a time from the image to the RAM disk. */ printf("Loading RAM disk onto /dev/ram:\33[23CLoaded: 0 KB"); @@ -412,22 +415,23 @@ /* Resize the RAM disk root file system. */ if (dev_io(DEV_READ, root_dev, FS_PROC_NR, - sbbuf, SUPER_BLOCK_BYTES, MIN_BLOCK_SIZE, 0) != MIN_BLOCK_SIZE) { + sbbuf, SUPER_BLOCK_BYTES, _MIN_BLOCK_SIZE, 0) != _MIN_BLOCK_SIZE) { printf("WARNING: ramdisk read for resizing failed\n"); } dsp = (struct super_block *) sbbuf; if (dsp->s_magic == SUPER_V3) ramfs_block_size = dsp->s_block_size; else - ramfs_block_size = STATIC_BLOCK_SIZE; + ramfs_block_size = _STATIC_BLOCK_SIZE; zones = (ram_size_kb * 1024 / ramfs_block_size) >> sp->s_log_zone_size; dsp->s_nzones = conv2(sp->s_native, (u16_t) zones); dsp->s_zones = conv4(sp->s_native, zones); if (dev_io(DEV_WRITE, root_dev, FS_PROC_NR, - sbbuf, SUPER_BLOCK_BYTES, MIN_BLOCK_SIZE, 0) != MIN_BLOCK_SIZE) { + sbbuf, SUPER_BLOCK_BYTES, _MIN_BLOCK_SIZE, 0) != _MIN_BLOCK_SIZE) { printf("WARNING: ramdisk write for resizing failed\n"); } +#endif } /*===========================================================================* diff -ur oldsrc/servers/fs/misc.c src/servers/fs/misc.c --- oldsrc/servers/fs/misc.c 2005-10-20 23:39:32.000000000 +0400 +++ src/servers/fs/misc.c 2006-02-13 13:28:42.000000000 +0300 @@ -156,6 +156,54 @@ /* Set or clear a file lock. */ r = lock_op(f, m_in.request); return(r); + + case F_FREESP: + { + /* Free a section of a file. Preparation is done here, + * actual freeing in freesp_inode(). + */ + off_t start, end; + struct flock flock_arg; + signed long offset; + + /* Check if it's a regular file. */ + if((f->filp_ino->i_mode & I_TYPE) != I_REGULAR) { + return EINVAL; + } + + /* Copy flock data from userspace. */ + if((r = sys_datacopy(who, (vir_bytes) m_in.name1, + SELF, (vir_bytes) &flock_arg, + (phys_bytes) sizeof(flock_arg))) != OK) + return r; + + /* Convert starting offset to signed. */ + offset = (signed long) flock_arg.l_start; + + /* Figure out starting position base. */ + switch(flock_arg.l_whence) { + case SEEK_SET: start = 0; if(offset < 0) return EINVAL; break; + case SEEK_CUR: start = f->filp_pos; break; + case SEEK_END: start = f->filp_ino->i_size; break; + default: return EINVAL; + } + + /* Check for overflow or underflow. */ + if(offset > 0 && start + offset < start) { return EINVAL; } + if(offset < 0 && start + offset > start) { return EINVAL; } + start += offset; + if(flock_arg.l_len > 0) { + end = start + flock_arg.l_len; + if(end <= start) { + return EINVAL; + } + r = freesp_inode(f->filp_ino, start, end); + } else { + r = truncate_inode(f->filp_ino, start); + } + return r; + } + default: return(EINVAL); } @@ -448,7 +496,8 @@ struct fssignon device; int r, major; - if (fp->fp_effuid != SU_UID) return(EPERM); + if (fp->fp_effuid != SU_UID && fp->fp_effuid != SERVERS_UID) + return(EPERM); /* Try to copy request structure to FS. */ if ((r = sys_datacopy(who, (vir_bytes) m_in.svrctl_argp, diff -ur oldsrc/servers/fs/mount.c src/servers/fs/mount.c --- oldsrc/servers/fs/mount.c 2005-08-22 19:23:46.000000000 +0400 +++ src/servers/fs/mount.c 2006-02-15 14:18:21.000000000 +0300 @@ -7,6 +7,7 @@ #include "fs.h" #include +#include #include #include #include "buf.h" @@ -16,6 +17,9 @@ #include "param.h" #include "super.h" +/* Allow the root to be replaced before the first 'real' mount. */ +PRIVATE int allow_newroot= 1; + FORWARD _PROTOTYPE( dev_t name_to_dev, (char *path) ); /*===========================================================================* @@ -30,7 +34,8 @@ dev_t dev; mode_t bits; int rdir, mdir; /* TRUE iff {root|mount} file is dir */ - int r, found; + int i, r, found; + struct fproc *tfp; /* Only the super-user may do MOUNT. */ if (!super_user) return(EPERM); @@ -43,10 +48,87 @@ sp = NIL_SUPER; found = FALSE; for (xp = &super_block[0]; xp < &super_block[NR_SUPERS]; xp++) { - if (xp->s_dev == dev) found = TRUE; /* is it mounted already? */ + if (xp->s_dev == dev) + { + /* is it mounted already? */ + found = TRUE; + sp= xp; + break; + } if (xp->s_dev == NO_DEV) sp = xp; /* record free slot */ } - if (found) return(EBUSY); /* already mounted */ + if (found) + { + printf( +"do_mount: s_imount = 0x%x (%x, %d), s_isup = 0x%x (%x, %d), fp_rootdir = 0x%x\n", + xp->s_imount, xp->s_imount->i_dev, xp->s_imount->i_num, + xp->s_isup, xp->s_isup->i_dev, xp->s_isup->i_num, + fproc[FS_PROC_NR].fp_rootdir); + /* It is possible that we have an old root lying around that + * needs to be remounted. + */ + if (xp->s_imount != xp->s_isup || + xp->s_isup == fproc[FS_PROC_NR].fp_rootdir) + { + /* Normally, s_imount refers to the mount point. For a root + * filesystem, s_imount is equal to the root inode. We assume + * that the root of FS is always the real root. If the two + * inodes are different or if the root of FS is equal two the + * root of the filesystem we found, we found a filesystem that + * is in use. + */ + return(EBUSY); /* already mounted */ + } + + if (root_dev == xp->s_dev) + { + panic("fs", "inconsistency remounting old root", + NO_NUM); + } + + /* Now get the inode of the file to be mounted on. */ + if (fetch_name(m_in.name2, m_in.name2_length, M1) != OK) { + return(err_code); + } + + if ( (rip = eat_path(user_path)) == NIL_INODE) { + return(err_code); + } + + r = OK; + + /* It may not be special. */ + bits = rip->i_mode & I_TYPE; + if (bits == I_BLOCK_SPECIAL || bits == I_CHAR_SPECIAL) + r = ENOTDIR; + + /* Get the root inode of the mounted file system. */ + root_ip= sp->s_isup; + + /* File types of 'rip' and 'root_ip' may not conflict. */ + if (r == OK) { + mdir = ((rip->i_mode & I_TYPE) == I_DIRECTORY); + /* TRUE iff dir */ + rdir = ((root_ip->i_mode & I_TYPE) == I_DIRECTORY); + if (!mdir && rdir) r = EISDIR; + } + + /* If error, return the mount point. */ + if (r != OK) { + put_inode(rip); + return(r); + } + + /* Nothing else can go wrong. Perform the mount. */ + rip->i_mount = I_MOUNT; /* this bit says the inode is + * mounted on + */ + put_inode(sp->s_imount); + sp->s_imount = rip; + sp->s_rd_only = m_in.rd_only; + allow_newroot= 0; /* The root is now fixed */ + return(OK); + } if (sp == NIL_SUPER) return(ENFILE); /* no super block available */ /* Open the device the file system lives on. */ @@ -74,6 +156,58 @@ sp->s_dev = NO_DEV; return(err_code); } + + if (strcmp(user_path, "/") == 0 && allow_newroot) + { + printf("Replacing root\n"); + + /* Get the root inode of the mounted file system. */ + if ( (root_ip = get_inode(dev, ROOT_INODE)) == NIL_INODE) r = err_code; + if (root_ip != NIL_INODE && root_ip->i_mode == 0) { + r = EINVAL; + } + + /* If error, return the super block and both inodes; release the + * maps. + */ + if (r != OK) { + put_inode(root_ip); + (void) do_sync(); + invalidate(dev); + dev_close(dev); + sp->s_dev = NO_DEV; + return(r); + } + + /* Nothing else can go wrong. Perform the mount. */ + sp->s_imount = root_ip; + dup_inode(root_ip); + sp->s_isup = root_ip; + sp->s_rd_only = m_in.rd_only; + root_dev= dev; + + /* Replace all root and working directories */ + for (i= 0, tfp= fproc; ifp_pid == PID_FREE) + continue; + if (tfp->fp_rootdir == NULL) + panic("fs", "do_mount: null rootdir", i); + put_inode(tfp->fp_rootdir); + dup_inode(root_ip); + tfp->fp_rootdir= root_ip; + + if (tfp->fp_workdir == NULL) + panic("fs", "do_mount: null workdir", i); + put_inode(tfp->fp_workdir); + dup_inode(root_ip); + tfp->fp_workdir= root_ip; + } + + /* Leave the old filesystem lying around. */ + return(OK); + } + if ( (rip = eat_path(user_path)) == NIL_INODE) { dev_close(dev); sp->s_dev = NO_DEV; @@ -120,6 +254,7 @@ sp->s_imount = rip; sp->s_isup = root_ip; sp->s_rd_only = m_in.rd_only; + allow_newroot= 0; /* The root is now fixed */ return(OK); } diff -ur oldsrc/servers/fs/open.c src/servers/fs/open.c --- oldsrc/servers/fs/open.c 2005-08-29 20:47:18.000000000 +0400 +++ src/servers/fs/open.c 2006-01-27 16:26:42.000000000 +0300 @@ -13,6 +13,8 @@ #include "fs.h" #include #include +#include +#include #include #include #include "buf.h" @@ -29,8 +31,8 @@ FORWARD _PROTOTYPE( int common_open, (int oflags, mode_t omode) ); FORWARD _PROTOTYPE( int pipe_open, (struct inode *rip,mode_t bits,int oflags)); -FORWARD _PROTOTYPE( struct inode *new_node, (char *path, mode_t bits, - zone_t z0) ); +FORWARD _PROTOTYPE( struct inode *new_node, (struct inode **ldirp, + char *path, mode_t bits, zone_t z0, int opaque, char *string)); /*===========================================================================* * do_creat * @@ -75,7 +77,7 @@ { /* Common code from do_creat and do_open. */ - register struct inode *rip; + struct inode *rip, *ldirp; int r, b, exist = TRUE; dev_t dev; mode_t bits; @@ -92,8 +94,9 @@ if (oflags & O_CREAT) { /* Create a new inode by calling new_node(). */ omode = I_REGULAR | (omode & ALL_MODES & fp->fp_umask); - rip = new_node(user_path, omode, NO_ZONE); + rip = new_node(&ldirp, user_path, omode, NO_ZONE, oflags&O_EXCL, NULL); r = err_code; + put_inode(ldirp); if (r == OK) exist = FALSE; /* we just created the file */ else if (r != EEXIST) return(r); /* other error */ else exist = !(oflags & O_EXCL); /* file exists, if the O_EXCL @@ -119,7 +122,7 @@ /* Truncate regular file if O_TRUNC. */ if (oflags & O_TRUNC) { if ((r = forbidden(rip, W_BIT)) !=OK) break; - truncate(rip); + truncate_inode(rip, 0); wipe_inode(rip); /* Send the inode from the inode cache to the * block cache, so it gets written on the next @@ -195,29 +198,42 @@ /*===========================================================================* * new_node * *===========================================================================*/ -PRIVATE struct inode *new_node(char *path, mode_t bits, zone_t z0) +PRIVATE struct inode *new_node(struct inode **ldirp, + char *path, mode_t bits, zone_t z0, int opaque, char *parsed) { /* New_node() is called by common_open(), do_mknod(), and do_mkdir(). * In all cases it allocates a new inode, makes a directory entry for it on * the path 'path', and initializes it. It returns a pointer to the inode if * it can do this; otherwise it returns NIL_INODE. It always sets 'err_code' * to an appropriate value (OK or an error code). + * + * The parsed path rest is returned in 'parsed' if parsed is nonzero. It + * has to hold at least NAME_MAX bytes. */ - register struct inode *rlast_dir_ptr, *rip; + register struct inode *rip; register int r; char string[NAME_MAX]; - /* See if the path can be opened down to the last directory. */ - if ((rlast_dir_ptr = last_dir(path, string)) == NIL_INODE) return(NIL_INODE); + *ldirp = parse_path(path, string, opaque ? LAST_DIR : LAST_DIR_EATSYM); + if (*ldirp == NIL_INODE) return(NIL_INODE); /* The final directory is accessible. Get final component of the path. */ - rip = advance(rlast_dir_ptr, string); + rip = advance(ldirp, string); + + if (S_ISDIR(bits) && + (*ldirp)->i_nlinks >= ((*ldirp)->i_sp->s_version == V1 ? + CHAR_MAX : SHRT_MAX)) { + /* New entry is a directory, alas we can't give it a ".." */ + put_inode(rip); + err_code = EMLINK; + return(NIL_INODE); + } + if ( rip == NIL_INODE && err_code == ENOENT) { /* Last path component does not exist. Make new directory entry. */ - if ( (rip = alloc_inode(rlast_dir_ptr->i_dev, bits)) == NIL_INODE) { + if ( (rip = alloc_inode((*ldirp)->i_dev, bits)) == NIL_INODE) { /* Can't creat new inode: out of inodes. */ - put_inode(rlast_dir_ptr); return(NIL_INODE); } @@ -230,8 +246,7 @@ rw_inode(rip, WRITING); /* force inode to disk now */ /* New inode acquired. Try to make directory entry. */ - if ((r = search_dir(rlast_dir_ptr, string, &rip->i_num,ENTER)) != OK) { - put_inode(rlast_dir_ptr); + if ((r = search_dir(*ldirp, string, &rip->i_num,ENTER)) != OK) { rip->i_nlinks--; /* pity, have to free disk inode */ rip->i_dirt = DIRTY; /* dirty inodes are written out */ put_inode(rip); /* this call frees the inode */ @@ -247,8 +262,12 @@ r = err_code; } - /* Return the directory inode and exit. */ - put_inode(rlast_dir_ptr); + if(parsed) { /* Give the caller the parsed string if requested. */ + strncpy(parsed, string, NAME_MAX-1); + parsed[NAME_MAX-1] = '\0'; + } + + /* The caller has to return the directory inode (*ldirp). */ err_code = r; return(rip); } @@ -288,15 +307,16 @@ /* Perform the mknod(name, mode, addr) system call. */ register mode_t bits, mode_bits; - struct inode *ip; + struct inode *ip, *ldirp; /* Only the super_user may make nodes other than fifos. */ mode_bits = (mode_t) m_in.mk_mode; /* mode of the inode */ if (!super_user && ((mode_bits & I_TYPE) != I_NAMED_PIPE)) return(EPERM); if (fetch_name(m_in.name1, m_in.name1_length, M1) != OK) return(err_code); bits = (mode_bits & I_TYPE) | (mode_bits & ALL_MODES & fp->fp_umask); - ip = new_node(user_path, bits, (zone_t) m_in.mk_z0); + ip = new_node(&ldirp, user_path, bits, (zone_t) m_in.mk_z0, TRUE, NULL); put_inode(ip); + put_inode(ldirp); return(err_code); } @@ -311,24 +331,16 @@ ino_t dot, dotdot; /* inode numbers for . and .. */ mode_t bits; /* mode bits for the new inode */ char string[NAME_MAX]; /* last component of the new dir's path name */ - register struct inode *rip, *ldirp; + struct inode *rip, *ldirp; - /* Check to see if it is possible to make another link in the parent dir. */ if (fetch_name(m_in.name1, m_in.name1_length, M1) != OK) return(err_code); - ldirp = last_dir(user_path, string); /* pointer to new dir's parent */ - if (ldirp == NIL_INODE) return(err_code); - if (ldirp->i_nlinks >= (ldirp->i_sp->s_version == V1 ? - CHAR_MAX : SHRT_MAX)) { - put_inode(ldirp); /* return parent */ - return(EMLINK); - } /* Next make the inode. If that fails, return error code. */ bits = I_DIRECTORY | (m_in.mode & RWX_MODES & fp->fp_umask); - rip = new_node(user_path, bits, (zone_t) 0); + rip = new_node(&ldirp, user_path, bits, (zone_t) 0, TRUE, string); if (rip == NIL_INODE || err_code == EEXIST) { put_inode(rip); /* can't make dir: it already exists */ - put_inode(ldirp); /* return parent too */ + put_inode(ldirp); return(err_code); } @@ -349,8 +361,11 @@ ldirp->i_nlinks++; /* this accounts for .. */ ldirp->i_dirt = DIRTY; /* mark parent's inode as dirty */ } else { - /* It was not possible to enter . or .. probably disk was full. */ - (void) search_dir(ldirp, string, (ino_t *) 0, DELETE); + /* It was not possible to enter . or .. probably disk was full - + * links counts haven't been touched. + */ + if(search_dir(ldirp, string, (ino_t *) 0, DELETE) != OK) + panic(__FILE__, "Dir disappeared ", rip->i_num); rip->i_nlinks--; /* undo the increment done in new_node() */ } rip->i_dirt = DIRTY; /* either way, i_nlinks has changed */ @@ -452,9 +467,9 @@ /* The value of 'whence' determines the start position to use. */ switch(m_in.whence) { - case 0: pos = 0; break; - case 1: pos = rfilp->filp_pos; break; - case 2: pos = rfilp->filp_ino->i_size; break; + case SEEK_SET: pos = 0; break; + case SEEK_CUR: pos = rfilp->filp_pos; break; + case SEEK_END: pos = rfilp->filp_ino->i_size; break; default: return(EINVAL); } @@ -471,3 +486,69 @@ m_out.reply_l1 = pos; /* insert the long into the output message */ return(OK); } + +/*===========================================================================* + * do_slink * + *===========================================================================*/ +PUBLIC int do_slink() +{ +/* Perform the symlink(name1, name2) system call. */ + + register int r; /* error code */ + char string[NAME_MAX]; /* last component of the new dir's path name */ + struct inode *sip; /* inode containing symbolic link */ + struct buf *bp; /* disk buffer for link */ + struct inode *ldirp; /* directory containing link */ + + if (fetch_name(m_in.name2, m_in.name2_length, M1) != OK) + return(err_code); + + if (m_in.name1_length <= 1 || m_in.name1_length >= _MIN_BLOCK_SIZE) + return(ENAMETOOLONG); + + /* Create the inode for the symlink. */ + sip = new_node(&ldirp, user_path, (mode_t) (I_SYMBOLIC_LINK | RWX_MODES), + (zone_t) 0, TRUE, string); + + /* Allocate a disk block for the contents of the symlink. + * Copy contents of symlink (the name pointed to) into first disk block. + */ + if ((r = err_code) == OK) { + r = (bp = new_block(sip, (off_t) 0)) == NIL_BUF + ? err_code + : sys_vircopy(who, D, (vir_bytes) m_in.name1, + SELF, D, (vir_bytes) bp->b_data, + (vir_bytes) m_in.name1_length-1); + + if(r == OK) { + bp->b_data[_MIN_BLOCK_SIZE-1] = '\0'; + sip->i_size = strlen(bp->b_data); + if(sip->i_size != m_in.name1_length-1) { + /* This can happen if the user provides a buffer + * with a \0 in it. This can cause a lot of trouble + * when the symlink is used later. We could just use + * the strlen() value, but we want to let the user + * know he did something wrong. ENAMETOOLONG doesn't + * exactly describe the error, but there is no + * ENAMETOOWRONG. + */ + r = ENAMETOOLONG; + } + } + + put_block(bp, DIRECTORY_BLOCK); /* put_block() accepts NIL_BUF. */ + + if (r != OK) { + sip->i_nlinks = 0; + if (search_dir(ldirp, string, (ino_t *) 0, DELETE) != OK) + panic(__FILE__, "Symbolic link vanished", NO_NUM); + } + } + + /* put_inode() accepts NIL_INODE as a noop, so the below are safe. */ + put_inode(sip); + put_inode(ldirp); + + return(r); +} + diff -ur oldsrc/servers/fs/path.c src/servers/fs/path.c --- oldsrc/servers/fs/path.c 2005-09-11 20:45:46.000000000 +0400 +++ src/servers/fs/path.c 2006-02-15 14:18:21.000000000 +0300 @@ -6,11 +6,13 @@ * last_dir: find the final directory on a given path * advance: parse one component of a path name * search_dir: search a directory for a string and return its inode number + * */ #include "fs.h" #include #include +#include #include "buf.h" #include "file.h" #include "fproc.h" @@ -22,51 +24,29 @@ FORWARD _PROTOTYPE( char *get_name, (char *old_name, char string [NAME_MAX]) ); -/*===========================================================================* - * eat_path * - *===========================================================================*/ -PUBLIC struct inode *eat_path(path) -char *path; /* the path name to be parsed */ -{ -/* Parse the path 'path' and put its inode in the inode table. If not possible, - * return NIL_INODE as function value and an error code in 'err_code'. - */ - - register struct inode *ldip, *rip; - char string[NAME_MAX]; /* hold 1 path component name here */ - - /* First open the path down to the final directory. */ - if ( (ldip = last_dir(path, string)) == NIL_INODE) { - return(NIL_INODE); /* we couldn't open final directory */ - } - - /* The path consisting only of "/" is a special case, check for it. */ - if (string[0] == '\0') return(ldip); - - /* Get final component of the path. */ - rip = advance(ldip, string); - put_inode(ldip); - return(rip); -} +FORWARD _PROTOTYPE( struct inode *ltraverse, (struct inode *rip, + char *path, char *suffix, struct inode *ldip) ); /*===========================================================================* - * last_dir * + * parse_path * *===========================================================================*/ -PUBLIC struct inode *last_dir(path, string) -char *path; /* the path name to be parsed */ -char string[NAME_MAX]; /* the final component is returned here */ +PUBLIC struct inode *parse_path(path, string, action) +char *path; /* the path name to be parsed */ +char string[NAME_MAX]; /* the final component is returned here */ +int action; /* action on last part of path */ { -/* Given a path, 'path', located in the fs address space, parse it as - * far as the last directory, fetch the inode for the last directory into - * the inode table, and return a pointer to the inode. In - * addition, return the final component of the path in 'string'. - * If the last directory can't be opened, return NIL_INODE and - * the reason for failure in 'err_code'. +/* This is the actual code for last_dir and eat_path. Return the inode of + * the last directory and the name of object within that directory, or the + * inode of the last object (an empty name will be returned). Names are + * returned in string. If string is null the name is discarded. The action + * code determines how "last" is defined. If an error occurs, NIL_INODE + * will be returned with an error code in err_code. */ - register struct inode *rip; - register char *new_name; - register struct inode *new_ip; + struct inode *rip, *dir_ip; + char *new_name; + int symloop; + char lstring[NAME_MAX]; /* Is the path absolute or relative? Initialize 'rip' accordingly. */ rip = (*path == '/' ? fp->fp_rootdir : fp->fp_workdir); @@ -79,6 +59,9 @@ dup_inode(rip); /* inode will be returned with put_inode */ + symloop = 0; /* symbolic link traversal count */ + if (string == (char *) 0) string = lstring; + /* Scan the path component by component. */ while (TRUE) { /* Extract one component. */ @@ -86,7 +69,7 @@ put_inode(rip); /* bad path in user space */ return(NIL_INODE); } - if (*new_name == '\0') { + if (*new_name == '\0' && (action & PATH_PENULTIMATE)) { if ( (rip->i_mode & I_TYPE) == I_DIRECTORY) { return(rip); /* normal exit */ } else { @@ -98,17 +81,130 @@ } /* There is more path. Keep parsing. */ - new_ip = advance(rip, string); - put_inode(rip); /* rip either obsolete or irrelevant */ - if (new_ip == NIL_INODE) return(NIL_INODE); - - /* The call to advance() succeeded. Fetch next component. */ - path = new_name; - rip = new_ip; + dir_ip = rip; + rip = advance(&dir_ip, string); + + if (rip == NIL_INODE) { + if (*new_name == '\0' && (action & PATH_NONSYMBOLIC) != 0) + return(dir_ip); + else { + put_inode(dir_ip); + return(NIL_INODE); + } + } + + /* The call to advance() succeeded. Fetch next component. */ + if (S_ISLNK(rip->i_mode)) { + if (*new_name != '\0' || (action & PATH_OPAQUE) == 0) { + if (*new_name != '\0') new_name--; + rip = ltraverse(rip, path, new_name, dir_ip); + put_inode(dir_ip); + if (++symloop > SYMLOOP) { + err_code = ELOOP; + put_inode(rip); + rip = NIL_INODE; + } + if (rip == NIL_INODE) return(NIL_INODE); + continue; + } + } else if (*new_name != '\0') { + put_inode(dir_ip); + path = new_name; + continue; + } + + /* Either last name reached or symbolic link is opaque */ + if ((action & PATH_NONSYMBOLIC) != 0) { + put_inode(rip); + return(dir_ip); + } else { + put_inode(dir_ip); + return(rip); + } } } /*===========================================================================* + * eat_path * + *===========================================================================*/ +PUBLIC struct inode *eat_path(path) +char *path; /* the path name to be parsed */ +{ + /* Parse the path 'path' and put its inode in the inode table. If not possible, + * return NIL_INODE as function value and an error code in 'err_code'. + */ + + return parse_path(path, (char *) 0, EAT_PATH); +} + +/*===========================================================================* + * last_dir * + *===========================================================================*/ +PUBLIC struct inode *last_dir(path, string) +char *path; /* the path name to be parsed */ +char string[NAME_MAX]; /* the final component is returned here */ +{ +/* Given a path, 'path', located in the fs address space, parse it as + * far as the last directory, fetch the inode for the last directory into + * the inode table, and return a pointer to the inode. In + * addition, return the final component of the path in 'string'. + * If the last directory can't be opened, return NIL_INODE and + * the reason for failure in 'err_code'. + */ + + return parse_path(path, string, LAST_DIR); +} + +/*===========================================================================* + * ltraverse * + *===========================================================================*/ +PRIVATE struct inode *ltraverse(rip, path, suffix, ldip) +register struct inode *rip; /* symbolic link */ +char *path; /* path containing link */ +char *suffix; /* suffix following link within path */ +register struct inode *ldip; /* directory containing link */ +{ +/* Traverse a symbolic link. Copy the link text from the inode and insert + * the text into the path. Return the inode of base directory and the + * ammended path. The symbolic link inode is always freed. The inode + * returned is already duplicated. NIL_INODE is returned on error. + */ + + block_t b; /* block containing link text */ + struct inode *bip; /* inode of base directory */ + struct buf *bp; /* buffer containing link text */ + size_t sl; /* length of link */ + size_t tl; /* length of suffix */ + char *sp; /* start of link text */ + + bip = NIL_INODE; + bp = NIL_BUF; + + if ((b = read_map(rip, (off_t) 0)) != NO_BLOCK) { + bp = get_block(rip->i_dev, b, NORMAL); + sl = rip->i_size; + sp = bp->b_data; + + /* Insert symbolic text into path name. */ + tl = strlen(suffix); + if (sl > 0 && sl + tl <= PATH_MAX-1) { + memmove(path+sl, suffix, tl); + memmove(path, sp, sl); + path[sl+tl] = 0; + dup_inode(bip = path[0] == '/' ? fp->fp_rootdir : ldip); + } + } + + put_block(bp, DIRECTORY_BLOCK); + put_inode(rip); + if (bip == NIL_INODE) + { + err_code = ENOENT; + } + return (bip); +} + +/*===========================================================================* * get_name * *===========================================================================*/ PRIVATE char *get_name(old_name, string) @@ -152,8 +248,8 @@ /*===========================================================================* * advance * *===========================================================================*/ -PUBLIC struct inode *advance(dirp, string) -struct inode *dirp; /* inode for directory to be searched */ +PUBLIC struct inode *advance(pdirp, string) +struct inode **pdirp; /* inode for directory to be searched */ char string[NAME_MAX]; /* component name to look for */ { /* Given a directory and a component of a path, look up the component in @@ -161,13 +257,14 @@ * slot. If it can't be done, return NIL_INODE. */ - register struct inode *rip; - struct inode *rip2; + register struct inode *rip, *dirp; register struct super_block *sp; int r, inumb; dev_t mnt_dev; ino_t numb; + dirp = *pdirp; + /* If 'string' is empty, yield same inode straight away. */ if (string[0] == '\0') { return(get_inode(dirp->i_dev, (int) dirp->i_num)); } @@ -189,22 +286,31 @@ return(NIL_INODE); } + /* The following test is for "mountpoint/.." where mountpoint is a + * mountpoint. ".." will refer to the root of the mounted filesystem, + * but has to become a reference to the parent of the 'mountpoint' + * directory. + * + * This case is recognized by the looked up name pointing to a + * root inode, and the directory in which it is held being a + * root inode, _and_ the name[1] being '.'. (This is a test for '..' + * and excludes '.'.) + */ if (rip->i_num == ROOT_INODE) if (dirp->i_num == ROOT_INODE) { if (string[1] == '.') { - for (sp = &super_block[1]; sp < &super_block[NR_SUPERS]; sp++){ - if (sp->s_dev == rip->i_dev) { - /* Release the root inode. Replace by the - * inode mounted on. - */ - put_inode(rip); - mnt_dev = sp->s_imount->i_dev; - inumb = (int) sp->s_imount->i_num; - rip2 = get_inode(mnt_dev, inumb); - rip = advance(rip2, string); - put_inode(rip2); - break; - } + sp= rip->i_sp; + if (sp->s_imount != sp->s_isup) + { + /* Release the root inode. Replace by the + * inode mounted on. Update parent. + */ + put_inode(rip); + put_inode(dirp); + mnt_dev = sp->s_imount->i_dev; + inumb = (int) sp->s_imount->i_num; + dirp = *pdirp = get_inode(mnt_dev, inumb); + rip = advance(pdirp, string); } } } @@ -259,7 +365,9 @@ int extended = 0; /* If 'ldir_ptr' is not a pointer to a dir inode, error. */ - if ( (ldir_ptr->i_mode & I_TYPE) != I_DIRECTORY) return(ENOTDIR); + if ( (ldir_ptr->i_mode & I_TYPE) != I_DIRECTORY) { + return(ENOTDIR); + } r = OK; diff -ur oldsrc/servers/fs/proto.h src/servers/fs/proto.h --- oldsrc/servers/fs/proto.h 2005-10-20 23:39:32.000000000 +0400 +++ src/servers/fs/proto.h 2006-01-11 20:14:51.000000000 +0300 @@ -74,7 +74,10 @@ _PROTOTYPE( int do_link, (void) ); _PROTOTYPE( int do_unlink, (void) ); _PROTOTYPE( int do_rename, (void) ); -_PROTOTYPE( void truncate, (struct inode *rip) ); +_PROTOTYPE( int do_truncate, (void) ); +_PROTOTYPE( int do_ftruncate, (void) ); +_PROTOTYPE( int truncate_inode, (struct inode *rip, off_t len) ); +_PROTOTYPE( int freesp_inode, (struct inode *rip, off_t st, off_t end) ); /* lock.c */ _PROTOTYPE( int lock_op, (struct filp *f, int req) ); @@ -110,13 +113,16 @@ _PROTOTYPE( int do_mknod, (void) ); _PROTOTYPE( int do_mkdir, (void) ); _PROTOTYPE( int do_open, (void) ); +_PROTOTYPE( int do_slink, (void) ); /* path.c */ -_PROTOTYPE( struct inode *advance,(struct inode *dirp, char string[NAME_MAX])); +_PROTOTYPE( struct inode *advance,(struct inode **dirp, char string[NAME_MAX])); _PROTOTYPE( int search_dir, (struct inode *ldir_ptr, char string [NAME_MAX], ino_t *numb, int flag) ); _PROTOTYPE( struct inode *eat_path, (char *path) ); _PROTOTYPE( struct inode *last_dir, (char *path, char string [NAME_MAX])); +_PROTOTYPE( struct inode *parse_path, (char *path, char string[NAME_MAX], + int action) ); /* pipe.c */ _PROTOTYPE( int do_pipe, (void) ); @@ -144,7 +150,7 @@ _PROTOTYPE( struct buf *rahead, (struct inode *rip, block_t baseblock, off_t position, unsigned bytes_ahead) ); _PROTOTYPE( void read_ahead, (void) ); -_PROTOTYPE( block_t read_map, (struct inode *rip, off_t position) ); +_PROTOTYPE( block_t read_map, (struct inode *rip, off_t pos) ); _PROTOTYPE( int read_write, (int rw_flag) ); _PROTOTYPE( zone_t rd_indir, (struct buf *bp, int index) ); @@ -155,6 +161,8 @@ _PROTOTYPE( int do_fstat, (void) ); _PROTOTYPE( int do_stat, (void) ); _PROTOTYPE( int do_fstatfs, (void) ); +_PROTOTYPE( int do_rdlink, (void) ); +_PROTOTYPE( int do_lstat, (void) ); /* super.c */ _PROTOTYPE( bit_t alloc_bit, (struct super_block *sp, int map, bit_t origin)); @@ -182,6 +190,7 @@ _PROTOTYPE( int do_write, (void) ); _PROTOTYPE( struct buf *new_block, (struct inode *rip, off_t position) ); _PROTOTYPE( void zero_block, (struct buf *bp) ); +_PROTOTYPE( int write_map, (struct inode *, off_t, zone_t, int) ); /* select.c */ _PROTOTYPE( int do_select, (void) ); diff -ur oldsrc/servers/fs/read.c src/servers/fs/read.c --- oldsrc/servers/fs/read.c 2005-09-11 20:45:46.000000000 +0400 +++ src/servers/fs/read.c 2006-01-11 20:14:51.000000000 +0300 @@ -410,6 +410,9 @@ struct super_block *sp; zone_t zone; /* V2 zones are longs (shorts in V1) */ + if(bp == NIL_BUF) + panic(__FILE__, "rd_indir() on NIL_BUF", NO_NUM); + sp = get_super(bp->b_dev); /* need super block to find file sys type */ /* read a zone from an indirect block */ diff -ur oldsrc/servers/fs/select.c src/servers/fs/select.c --- oldsrc/servers/fs/select.c 2005-10-20 23:39:32.000000000 +0400 +++ src/servers/fs/select.c 2006-01-11 20:14:51.000000000 +0300 @@ -681,7 +681,6 @@ *===========================================================================*/ PUBLIC void select_unsuspend_by_proc(int proc) { - struct filp *fp; int fd, s; for(s = 0; s < MAXSELECTS; s++) { diff -ur oldsrc/servers/fs/stadir.c src/servers/fs/stadir.c --- oldsrc/servers/fs/stadir.c 2005-09-11 20:45:46.000000000 +0400 +++ src/servers/fs/stadir.c 2006-01-20 15:43:35.000000000 +0300 @@ -7,12 +7,16 @@ * do_stat: perform the STAT system call * do_fstat: perform the FSTAT system call * do_fstatfs: perform the FSTATFS system call + * do_lstat: perform the LSTAT system call + * do_rdlink: perform the RDLNK system call */ #include "fs.h" #include #include #include +#include +#include "buf.h" #include "file.h" #include "fproc.h" #include "inode.h" @@ -34,6 +38,7 @@ /* Is the file descriptor valid? */ if ( (rfilp = get_filp(m_in.fd)) == NIL_FILP) return(err_code); + dup_inode(rfilp->filp_ino); return change_into(&fp->fp_workdir, rfilp->filp_ino); } @@ -237,3 +242,55 @@ return(r); } +/*===========================================================================* + * do_lstat * + *===========================================================================*/ +PUBLIC int do_lstat() +{ +/* Perform the lstat(name, buf) system call. */ + + register int r; /* return value */ + register struct inode *rip; /* target inode */ + + if (fetch_name(m_in.name1, m_in.name1_length, M1) != OK) return(err_code); + if ((rip = parse_path(user_path, (char *) 0, EAT_PATH_OPAQUE)) == NIL_INODE) + return(err_code); + r = stat_inode(rip, NIL_FILP, m_in.name2); + put_inode(rip); + return(r); +} + +/*===========================================================================* + * do_rdlink * + *===========================================================================*/ +PUBLIC int do_rdlink() +{ +/* Perform the readlink(name, buf) system call. */ + + register int r; /* return value */ + block_t b; /* block containing link text */ + struct buf *bp; /* buffer containing link text */ + register struct inode *rip; /* target inode */ + + if (fetch_name(m_in.name1, m_in.name1_length, M1) != OK) return(err_code); + if ((rip = parse_path(user_path, (char *) 0, EAT_PATH_OPAQUE)) == NIL_INODE) + return(err_code); + + r = EACCES; + if (S_ISLNK(rip->i_mode) && (b = read_map(rip, (off_t) 0)) != NO_BLOCK) { + if (m_in.name2_length <= 0) r = EINVAL; + else if (m_in.name2_length < rip->i_size) r = ERANGE; + else { + bp = get_block(rip->i_dev, b, NORMAL); + r = sys_vircopy(SELF, D, (vir_bytes) bp->b_data, + who, D, (vir_bytes) m_in.name2, (vir_bytes) rip->i_size); + + if (r == OK) r = rip->i_size; + put_block(bp, DIRECTORY_BLOCK); + } + } + + put_inode(rip); + return(r); +} + diff -ur oldsrc/servers/fs/super.c src/servers/fs/super.c --- oldsrc/servers/fs/super.c 2005-09-11 20:45:46.000000000 +0400 +++ src/servers/fs/super.c 2005-12-20 17:23:44.000000000 +0300 @@ -130,7 +130,7 @@ k = conv2(sp->s_native, (int) bp->b_bitmap[word]); if (!(k & mask)) { panic(__FILE__,map == IMAP ? "tried to free unused inode" : - "tried to free unused block", NO_NUM); + "tried to free unused block", bit_returned); } k &= ~mask; @@ -181,7 +181,7 @@ } /* no mounted filesystem? use this block size then. */ - return MIN_BLOCK_SIZE; + return _MIN_BLOCK_SIZE; } /*===========================================================================* @@ -214,14 +214,14 @@ dev_t dev; int magic; int version, native, r; - static char sbbuf[MIN_BLOCK_SIZE]; + static char sbbuf[_MIN_BLOCK_SIZE]; dev = sp->s_dev; /* save device (will be overwritten by copy) */ if (dev == NO_DEV) panic(__FILE__,"request for super_block of NO_DEV", NO_NUM); r = dev_io(DEV_READ, dev, FS_PROC_NR, - sbbuf, SUPER_BLOCK_BYTES, MIN_BLOCK_SIZE, 0); - if (r != MIN_BLOCK_SIZE) { + sbbuf, SUPER_BLOCK_BYTES, _MIN_BLOCK_SIZE, 0); + if (r != _MIN_BLOCK_SIZE) { return EINVAL; } memcpy(sp, sbbuf, sizeof(*sp)); @@ -265,28 +265,28 @@ * hide some of the differences. */ if (version == V1) { - sp->s_block_size = STATIC_BLOCK_SIZE; + sp->s_block_size = _STATIC_BLOCK_SIZE; sp->s_zones = sp->s_nzones; /* only V1 needs this copy */ sp->s_inodes_per_block = V1_INODES_PER_BLOCK; sp->s_ndzones = V1_NR_DZONES; sp->s_nindirs = V1_INDIRECTS; } else { if (version == V2) - sp->s_block_size = STATIC_BLOCK_SIZE; - if (sp->s_block_size < MIN_BLOCK_SIZE) + sp->s_block_size = _STATIC_BLOCK_SIZE; + if (sp->s_block_size < _MIN_BLOCK_SIZE) return EINVAL; sp->s_inodes_per_block = V2_INODES_PER_BLOCK(sp->s_block_size); sp->s_ndzones = V2_NR_DZONES; sp->s_nindirs = V2_INDIRECTS(sp->s_block_size); } - if (sp->s_block_size < MIN_BLOCK_SIZE) { + if (sp->s_block_size < _MIN_BLOCK_SIZE) { return EINVAL; } - if (sp->s_block_size > MAX_BLOCK_SIZE) { + if (sp->s_block_size > _MAX_BLOCK_SIZE) { printf("Filesystem block size is %d kB; maximum filesystem\n" "block size is %d kB. This limit can be increased by recompiling.\n", - sp->s_block_size/1024, MAX_BLOCK_SIZE/1024); + sp->s_block_size/1024, _MAX_BLOCK_SIZE/1024); return EINVAL; } if ((sp->s_block_size % 512) != 0) { diff -ur oldsrc/servers/fs/table.c src/servers/fs/table.c --- oldsrc/servers/fs/table.c 2005-08-04 23:23:02.000000000 +0400 +++ src/servers/fs/table.c 2006-01-11 20:14:51.000000000 +0300 @@ -60,12 +60,12 @@ do_pipe, /* 42 = pipe */ no_sys, /* 43 = times */ no_sys, /* 44 = (prof) */ - no_sys, /* 45 = unused */ + do_slink, /* 45 = symlink */ do_set, /* 46 = setgid */ no_sys, /* 47 = getgid */ no_sys, /* 48 = (signal)*/ - no_sys, /* 49 = unused */ - no_sys, /* 50 = unused */ + do_rdlink, /* 49 = readlink*/ + do_lstat, /* 50 = lstat */ no_sys, /* 51 = (acct) */ no_sys, /* 52 = (phys) */ no_sys, /* 53 = (lock) */ @@ -108,6 +108,10 @@ no_sys, /* 88 = getpriority */ no_sys, /* 89 = setpriority */ no_sys, /* 90 = gettimeofday */ + no_sys, /* 91 = seteuid */ + no_sys, /* 92 = setegid */ + do_truncate, /* 93 = truncate */ + do_ftruncate, /* 94 = truncate */ }; /* This should not fail with "array size is negative": */ extern int dummy[sizeof(call_vec) == NCALLS * sizeof(call_vec[0]) ? 1 : -1]; diff -ur oldsrc/servers/fs/write.c src/servers/fs/write.c --- oldsrc/servers/fs/write.c 2005-08-29 20:47:18.000000000 +0400 +++ src/servers/fs/write.c 2006-01-11 20:14:51.000000000 +0300 @@ -15,10 +15,8 @@ #include "inode.h" #include "super.h" -FORWARD _PROTOTYPE( int write_map, (struct inode *rip, off_t position, - zone_t new_zone) ); - FORWARD _PROTOTYPE( void wr_indir, (struct buf *bp, int index, zone_t zone) ); +FORWARD _PROTOTYPE( int empty_indir, (struct buf *, struct super_block *) ); /*===========================================================================* * do_write * @@ -33,20 +31,27 @@ /*===========================================================================* * write_map * *===========================================================================*/ -PRIVATE int write_map(rip, position, new_zone) -register struct inode *rip; /* pointer to inode to be changed */ +PUBLIC int write_map(rip, position, new_zone, op) +struct inode *rip; /* pointer to inode to be changed */ off_t position; /* file address to be mapped */ zone_t new_zone; /* zone # to be inserted */ +int op; /* special actions */ { -/* Write a new zone into an inode. */ +/* Write a new zone into an inode. + * + * If op includes WMAP_FREE, free the data zone corresponding to that position + * in the inode ('new_zone' is ignored then). Also free the indirect block + * if that was the last entry in the indirect block. + * Also free the double indirect block if that was the last entry in the + * double indirect block. + */ int scale, ind_ex, new_ind, new_dbl, zones, nr_indirects, single, zindex, ex; - zone_t z, z1; + zone_t z, z1, z2 = NO_ZONE, old_zone; register block_t b; long excess, zone; - struct buf *bp; + struct buf *bp_dindir = NIL_BUF, *bp = NIL_BUF; rip->i_dirt = DIRTY; /* inode will be changed */ - bp = NIL_BUF; scale = rip->i_sp->s_log_zone_size; /* for zone-block conversion */ /* relative zone # to insert */ zone = (position/rip->i_sp->s_block_size) >> scale; @@ -56,7 +61,12 @@ /* Is 'position' to be found in the inode itself? */ if (zone < zones) { zindex = (int) zone; /* we need an integer here */ - rip->i_zone[zindex] = new_zone; + if(rip->i_zone[zindex] != NO_ZONE && (op & WMAP_FREE)) { + free_zone(rip->i_dev, rip->i_zone[zindex]); + rip->i_zone[zindex] = NO_ZONE; + } else { + rip->i_zone[zindex] = new_zone; + } return(OK); } @@ -71,7 +81,8 @@ single = TRUE; } else { /* 'position' can be located via the double indirect block. */ - if ( (z = rip->i_zone[zones+1]) == NO_ZONE) { + if ( (z2 = z = rip->i_zone[zones+1]) == NO_ZONE && + !(op & WMAP_FREE)) { /* Create the double indirect block. */ if ( (z = alloc_zone(rip->i_dev, rip->i_zone[0])) == NO_ZONE) return(err_code); @@ -79,44 +90,98 @@ new_dbl = TRUE; /* set flag for later */ } - /* Either way, 'z' is zone number for double indirect block. */ + /* 'z' is zone number for double indirect block, either old + * or newly created. + * If there wasn't one and WMAP_FREE is set, 'z' is NO_ZONE. + */ excess -= nr_indirects; /* single indirect doesn't count */ ind_ex = (int) (excess / nr_indirects); excess = excess % nr_indirects; if (ind_ex >= nr_indirects) return(EFBIG); - b = (block_t) z << scale; - bp = get_block(rip->i_dev, b, (new_dbl ? NO_READ : NORMAL)); - if (new_dbl) zero_block(bp); - z1 = rd_indir(bp, ind_ex); + + if(z == NO_ZONE) { + /* WMAP_FREE and no double indirect block - then no + * single indirect block either. + */ + z1 = NO_ZONE; + } else { + b = (block_t) z << scale; + bp_dindir = get_block(rip->i_dev, b, (new_dbl?NO_READ:NORMAL)); + if (new_dbl) zero_block(bp_dindir); + z1 = rd_indir(bp_dindir, ind_ex); + } single = FALSE; } - /* z1 is now single indirect zone; 'excess' is index. */ - if (z1 == NO_ZONE) { - /* Create indirect block and store zone # in inode or dbl indir blk. */ + /* z1 is now single indirect zone, or NO_ZONE; 'excess' is index. + * We have to create the indirect zone if it's NO_ZONE. Unless + * we're freeing (WMAP_FREE). + */ + if (z1 == NO_ZONE && !(op & WMAP_FREE)) { z1 = alloc_zone(rip->i_dev, rip->i_zone[0]); if (single) - rip->i_zone[zones] = z1; /* update inode */ + rip->i_zone[zones] = z1; /* update inode w. single indirect */ else - wr_indir(bp, ind_ex, z1); /* update dbl indir */ + wr_indir(bp_dindir, ind_ex, z1); /* update dbl indir */ new_ind = TRUE; - if (bp != NIL_BUF) bp->b_dirt = DIRTY; /* if double ind, it is dirty*/ + /* If double ind, it is dirty. */ + if (bp_dindir != NIL_BUF) bp_dindir->b_dirt = DIRTY; if (z1 == NO_ZONE) { - put_block(bp, INDIRECT_BLOCK); /* release dbl indirect blk */ + /* Release dbl indirect blk. */ + put_block(bp_dindir, INDIRECT_BLOCK); return(err_code); /* couldn't create single ind */ } } - put_block(bp, INDIRECT_BLOCK); /* release double indirect blk */ - /* z1 is indirect block's zone number. */ - b = (block_t) z1 << scale; - bp = get_block(rip->i_dev, b, (new_ind ? NO_READ : NORMAL) ); - if (new_ind) zero_block(bp); - ex = (int) excess; /* we need an int here */ - wr_indir(bp, ex, new_zone); - bp->b_dirt = DIRTY; - put_block(bp, INDIRECT_BLOCK); + /* z1 is indirect block's zone number (unless it's NO_ZONE when we're + * freeing). + */ + if(z1 != NO_ZONE) { + ex = (int) excess; /* we need an int here */ + b = (block_t) z1 << scale; + bp = get_block(rip->i_dev, b, (new_ind ? NO_READ : NORMAL) ); + if (new_ind) zero_block(bp); + if(op & WMAP_FREE) { + if((old_zone = rd_indir(bp, ex)) != NO_ZONE) { + free_zone(rip->i_dev, old_zone); + wr_indir(bp, ex, NO_ZONE); + } + + /* Last reference in the indirect block gone? Then + * Free the indirect block. + */ + if(empty_indir(bp, rip->i_sp)) { + free_zone(rip->i_dev, z1); + z1 = NO_ZONE; + /* Update the reference to the indirect block to + * NO_ZONE - in the double indirect block if there + * is one, otherwise in the inode directly. + */ + if(single) { + rip->i_zone[zones] = z1; + } else { + wr_indir(bp_dindir, ind_ex, z1); + bp_dindir->b_dirt = DIRTY; + } + } + } else { + wr_indir(bp, ex, new_zone); + } + bp->b_dirt = DIRTY; + put_block(bp, INDIRECT_BLOCK); + } + + /* If the single indirect block isn't there (or was just freed), + * see if we have to keep the double indirect block. + */ + if(z1 == NO_ZONE && !single && empty_indir(bp_dindir, rip->i_sp) && + z2 != NO_ZONE) { + free_zone(rip->i_dev, z2); + rip->i_zone[zones+1] = NO_ZONE; + } + + put_block(bp_dindir, INDIRECT_BLOCK); /* release double indirect blk */ return(OK); } @@ -133,6 +198,9 @@ struct super_block *sp; + if(bp == NIL_BUF) + panic(__FILE__, "wr_indir() on NIL_BUF", NO_NUM); + sp = get_super(bp->b_dev); /* need super block to find file sys type */ /* write a zone into an indirect block */ @@ -143,6 +211,30 @@ } /*===========================================================================* + * empty_indir * + *===========================================================================*/ +PRIVATE int empty_indir(bp, sb) +struct buf *bp; /* pointer to indirect block */ +struct super_block *sb; /* superblock of device block resides on */ +{ +/* Return nonzero if the indirect block pointed to by bp contains + * only NO_ZONE entries. + */ + int i; + if(sb->s_version == V1) { + for(i = 0; i < V1_INDIRECTS; i++) + if(bp->b_v1_ind[i] != NO_ZONE) + return 0; + } else { + for(i = 0; i < V2_INDIRECTS(sb->s_block_size); i++) + if(bp->b_v2_ind[i] != NO_ZONE) + return 0; + } + + return 1; +} + +/*===========================================================================* * clear_zone * *===========================================================================*/ PUBLIC void clear_zone(rip, pos, flag) @@ -215,7 +307,7 @@ z = rip->i_zone[0]; /* hunt near first zone */ } if ( (z = alloc_zone(rip->i_dev, z)) == NO_ZONE) return(NIL_BUF); - if ( (r = write_map(rip, position, z)) != OK) { + if ( (r = write_map(rip, position, z, 0)) != OK) { free_zone(rip->i_dev, z); err_code = r; return(NIL_BUF); @@ -241,6 +333,6 @@ register struct buf *bp; /* pointer to buffer to zero */ { /* Zero a block. */ - memset(bp->b_data, 0, MAX_BLOCK_SIZE); + memset(bp->b_data, 0, _MAX_BLOCK_SIZE); bp->b_dirt = DIRTY; } diff -ur oldsrc/servers/inet/generic/arp.c src/servers/inet/generic/arp.c --- oldsrc/servers/inet/generic/arp.c 2005-06-28 19:19:58.000000000 +0400 +++ src/servers/inet/generic/arp.c 2006-02-16 17:13:36.000000000 +0300 @@ -1340,7 +1340,12 @@ for (i= 0, arp_port= arp_port_table; iap_reqlist; pack; + for (pack= arp_port->ap_reclist; pack; + pack= pack->acc_ext_link) + { + bf_check_acc(pack); + } + for (pack= arp_port->ap_sendlist; pack; pack= pack->acc_ext_link) { bf_check_acc(pack); diff -ur oldsrc/servers/inet/generic/eth.c src/servers/inet/generic/eth.c --- oldsrc/servers/inet/generic/eth.c 2005-10-21 20:51:21.000000000 +0400 +++ src/servers/inet/generic/eth.c 2006-02-16 17:13:36.000000000 +0300 @@ -38,15 +38,17 @@ put_pkt_t ef_put_pkt; time_t ef_exp_time; size_t ef_write_count; + ioreq_t ef_ioctl_req; } eth_fd_t; #define EFF_FLAGS 0xf # define EFF_EMPTY 0x0 # define EFF_INUSE 0x1 -# define EFF_BUSY 0x6 +# define EFF_BUSY 0xE # define EFF_READ_IP 0x2 # define EFF_WRITE_IP 0x4 -# define EFF_OPTSET 0x8 +# define EFF_IOCTL_IP 0x8 +# define EFF_OPTSET 0x10 /* Note that the vh_type field is normally considered part of the ethernet * header. @@ -155,6 +157,7 @@ eth_fd->ef_get_userdata= get_userdata; eth_fd->ef_put_userdata= put_userdata; eth_fd->ef_put_pkt= put_pkt; + return i; } @@ -332,6 +335,17 @@ return NW_OK; } + if (!(eth_port->etp_flags & EPF_GOT_ADDR)) + { + printf( + "eth_ioctl: suspending NWIOGETHSTAT ioctl\n"); + + eth_fd->ef_ioctl_req= req; + assert(!(eth_fd->ef_flags & EFF_IOCTL_IP)); + eth_fd->ef_flags |= EFF_IOCTL_IP; + return NW_SUSPEND; + } + acc= bf_memreq(sizeof(nwio_ethstat_t)); compare (bf_bufsize(acc), ==, sizeof(*ethstat)); @@ -481,6 +495,13 @@ if (nweo_flags & NWEO_REMSPEC) eth_hdr->eh_dst= eth_fd->ef_ethopt.nweo_rem; + if (!(eth_port->etp_flags & EPF_GOT_ADDR)) + { + /* No device, discard packet */ + bf_afree(eth_pack); + return NW_OK; + } + if (!(nweo_flags & NWEO_EN_PROMISC)) eth_hdr->eh_src= eth_port->etp_ethaddr; @@ -552,7 +573,8 @@ int fd; int which_operation; { - eth_fd_t *eth_fd; + eth_fd_t *eth_fd, *prev, *loc_fd; + eth_port_t *eth_port; DBLOCK(2, printf("eth_cancel (%d)\n", fd)); eth_fd= ð_fd_table[fd]; @@ -567,8 +589,32 @@ case SR_CANCEL_WRITE: assert (eth_fd->ef_flags & EFF_WRITE_IP); eth_fd->ef_flags &= ~EFF_WRITE_IP; + + /* Remove fd from send queue */ + eth_port= eth_fd->ef_port; + if (eth_port->etp_vlan_port) + eth_port= eth_port->etp_vlan_port; + for (prev= 0, loc_fd= eth_port->etp_sendq_head; loc_fd != NULL; + prev= loc_fd, loc_fd= loc_fd->ef_send_next) + { + if (loc_fd == eth_fd) + break; + } + assert(loc_fd == eth_fd); + if (prev == NULL) + eth_port->etp_sendq_head= loc_fd->ef_send_next; + else + prev->ef_send_next= loc_fd->ef_send_next; + if (loc_fd->ef_send_next == NULL) + eth_port->etp_sendq_tail= prev; + reply_thr_get(eth_fd, EINTR, FALSE); break; + case SR_CANCEL_IOCTL: + assert (eth_fd->ef_flags & EFF_IOCTL_IP); + eth_fd->ef_flags &= ~EFF_IOCTL_IP; + reply_thr_get(eth_fd, EINTR, TRUE); + break; default: ip_panic(( "got unknown cancel request" )); } @@ -738,6 +784,7 @@ return; eth_port->etp_sendq_head= eth_fd->ef_send_next; + assert(eth_fd->ef_flags & EFF_WRITE_IP); eth_fd->ef_flags &= ~EFF_WRITE_IP; r= eth_write(eth_fd-eth_fd_table, eth_fd->ef_write_count); assert(r == NW_OK); @@ -784,6 +831,7 @@ } else { + assert(eth_port->etp_flags & EPF_GOT_ADDR); if (eth_addrcmp (*dst_addr, eth_port->etp_ethaddr) == 0) pack_stat= NWEO_EN_LOC; else @@ -942,6 +990,28 @@ eth_port->etp_vlan_tab[h]= vlan_port; } +PUBLIC void eth_restart_ioctl(eth_port) +eth_port_t *eth_port; +{ + int i; + eth_fd_t *eth_fd; + + for (i= 0, eth_fd= eth_fd_table; ief_flags & EFF_INUSE)) + continue; + if (eth_fd->ef_port != eth_port) + continue; + if (!(eth_fd->ef_flags & EFF_IOCTL_IP)) + continue; + if (eth_fd->ef_ioctl_req != NWIOGETHSTAT) + continue; + + eth_fd->ef_flags &= ~EFF_IOCTL_IP; + eth_ioctl(i, eth_fd->ef_ioctl_req); + } +} + PRIVATE void packet2user (eth_fd, pack, exp_time) eth_fd_t *eth_fd; acc_t *pack; diff -ur oldsrc/servers/inet/generic/eth_int.h src/servers/inet/generic/eth_int.h --- oldsrc/servers/inet/generic/eth_int.h 2005-06-28 19:19:58.000000000 +0400 +++ src/servers/inet/generic/eth_int.h 2005-12-09 16:25:30.000000000 +0300 @@ -38,6 +38,7 @@ #define EPF_EMPTY 0x0 #define EPF_ENABLED 0x1 +#define EPF_GOT_ADDR 0x2 /* Got ethernet address from device */ #define EPF_READ_IP 0x20 #define EPF_READ_SP 0x40 @@ -53,6 +54,7 @@ void eth_restart_write ARGS(( eth_port_t *eth_port )); void eth_loop_ev ARGS(( event_t *ev, ev_arg_t ev_arg )); void eth_reg_vlan ARGS(( eth_port_t *eth_port, eth_port_t *vlan_port )); +void eth_restart_ioctl ARGS(( eth_port_t *eth_port )); #endif /* ETH_INT_H */ diff -ur oldsrc/servers/inet/generic/tcp.c src/servers/inet/generic/tcp.c --- oldsrc/servers/inet/generic/tcp.c 2005-09-30 16:44:39.000000000 +0400 +++ src/servers/inet/generic/tcp.c 2006-02-20 17:35:01.000000000 +0300 @@ -320,7 +320,7 @@ } if (operations & SR_SELECT_EXCEPTION) { - printf("tcp_select: not implemented for exceptions\n"); + /* Should add code for exceptions */ } return resops; } @@ -1308,6 +1308,7 @@ int for_ioctl; { acc_t *result; + result= (*tcp_fd->tf_get_userdata)(tcp_fd->tf_srfd, reply, (size_t)0, for_ioctl); assert (!result); @@ -2027,6 +2028,13 @@ assert (tcp_fd->tf_flags & TFF_IOCTL_IP); tcp_fd->tf_flags &= ~TFF_IOCTL_IP; + if (tcp_fd->tf_flags & TFF_IOC_INIT_SP) + { + tcp_fd->tf_flags &= ~TFF_IOC_INIT_SP; + reply_thr_put (tcp_fd, EINTR, TRUE); + break; + } + switch (tcp_fd->tf_ioreq) { case NWIOGTCPCONF: @@ -2247,6 +2255,7 @@ tcp_conn_t *tcp_conn; tcp_cookie_t *cookiep; acc_t *data; + tcp_cookie_t cookie; if (!(tcp_fd->tf_flags & TFF_LISTENQ)) { @@ -2269,10 +2278,14 @@ sizeof(*cookiep), TRUE); if (!data) return EFAULT; + data= bf_packIffLess(data, sizeof(*cookiep)); cookiep= (tcp_cookie_t *)ptr2acc_data(data); + cookie= *cookiep; + + bf_afree(data); data= NULL; - dst_nr= cookiep->tc_ref; + dst_nr= cookie.tc_ref; if (dst_nr < 0 || dst_nr >= TCP_FD_NR) { printf("tcp_acceptto: bad fd %d\n", dst_nr); @@ -2290,7 +2303,7 @@ tcp_reply_ioctl(tcp_fd, EINVAL); return NW_OK; } - if (memcmp(cookiep, &dst_fd->tf_cookie, sizeof(*cookiep)) != 0) + if (memcmp(&cookie, &dst_fd->tf_cookie, sizeof(cookie)) != 0) { printf("tcp_acceptto: bad cookie\n"); return NW_OK; diff -ur oldsrc/servers/inet/generic/tcp_send.c src/servers/inet/generic/tcp_send.c --- oldsrc/servers/inet/generic/tcp_send.c 2005-08-03 15:15:39.000000000 +0400 +++ src/servers/inet/generic/tcp_send.c 2005-11-10 18:40:36.000000000 +0300 @@ -370,8 +370,6 @@ DBLOCK(0x1, printf( "partial segment: setting TCF_NO_PUSH\n")); tcp_conn->tc_flags |= TCF_NO_PUSH; - tcp_print_conn(tcp_conn); - printf("\n"); } goto after_data; } diff -ur oldsrc/servers/inet/mnx_eth.c src/servers/inet/mnx_eth.c --- oldsrc/servers/inet/mnx_eth.c 2005-10-21 20:51:20.000000000 +0400 +++ src/servers/inet/mnx_eth.c 2005-12-09 16:25:30.000000000 +0300 @@ -50,9 +50,13 @@ #endif if (r != OK) { + /* Eventually, we expect ethernet drivers to be + * started after INET. So we always end up here. And + * the findproc can be removed. + */ printf("eth%d: unable to find task %s: %d\n", i, ecp->ec_task, r); - continue; + tasknr= ANY; } eth_port->etp_osdep.etp_port= ecp->ec_port; @@ -64,45 +68,55 @@ mess.DL_PROC= this_proc; mess.DL_MODE= DL_NOMODE; - r= send(eth_port->etp_osdep.etp_task, &mess); - if (r<0) + if (tasknr == ANY) + r= ENXIO; + else { - printf( + r= send(eth_port->etp_osdep.etp_task, &mess); + if (r<0) + { + printf( "osdep_eth_init: unable to send to ethernet task, error= %d\n", - r); - continue; + r); + } } - r= receive(eth_port->etp_osdep.etp_task, &mess); - if (r<0) + if (r == OK) { - printf( + r= receive(eth_port->etp_osdep.etp_task, &mess); + if (r<0) + { + printf( "osdep_eth_init: unable to receive from ethernet task, error= %d\n", - r); - continue; + r); + } } - if (mess.m3_i1 == ENXIO) + if (r == OK) { - printf( + r= mess.m3_i1; + if (r == ENXIO) + { + printf( "osdep_eth_init: no ethernet device at task=%d,port=%d\n", - eth_port->etp_osdep.etp_task, - eth_port->etp_osdep.etp_port); - continue; - } - if (mess.m3_i1 < 0) - ip_panic(("osdep_eth_init: DL_INIT returned error %d\n", - mess.m3_i1)); - - if (mess.m3_i1 != eth_port->etp_osdep.etp_port) - { - ip_panic(( + eth_port->etp_osdep.etp_task, + eth_port->etp_osdep.etp_port); + } + else if (r < 0) + { + ip_panic(( + "osdep_eth_init: DL_INIT returned error %d\n", + r)); + } + else if (mess.m3_i1 != eth_port->etp_osdep.etp_port) + { + ip_panic(( "osdep_eth_init: got reply for wrong port (got %d, expected %d)\n", - mess.m3_i1, eth_port->etp_osdep.etp_port)); + mess.m3_i1, + eth_port->etp_osdep.etp_port)); + } } - - eth_port->etp_ethaddr= *(ether_addr_t *)mess.m3_ca1; - + sr_add_minor(if2minor(ecp->ec_ifno, ETH_DEV_OFF), i, eth_open, eth_close, eth_read, eth_write, eth_ioctl, eth_cancel, eth_select); @@ -112,7 +126,12 @@ eth_port->etp_vlan_port= NULL; eth_port->etp_wr_pack= 0; eth_port->etp_rd_pack= 0; - setup_read (eth_port); + if (r == OK) + { + eth_port->etp_ethaddr= *(ether_addr_t *)mess.m3_ca1; + eth_port->etp_flags |= EPF_GOT_ADDR; + setup_read (eth_port); + } } /* And now come the VLANs */ @@ -144,7 +163,11 @@ continue; } - eth_port->etp_ethaddr= rep->etp_ethaddr; + if (rep->etp_flags & EPF_GOT_ADDR) + { + eth_port->etp_ethaddr= rep->etp_ethaddr; + eth_port->etp_flags |= EPF_GOT_ADDR; + } sr_add_minor(if2minor(ecp->ec_ifno, ETH_DEV_OFF), i, eth_open, eth_close, eth_read, @@ -454,6 +477,13 @@ assert(!eth_port->etp_vlan); + if (!(eth_port->etp_flags & EPF_GOT_ADDR)) + { + /* We have never seen the device. */ + printf("eth_set_rec_conf: waiting for device to appear\n"); + return; + } + eth_port->etp_osdep.etp_recvconf= flags; dl_flags= DL_NOMODE; if (flags & NWEO_EN_BROAD) @@ -746,14 +776,10 @@ eth_port_t *eth_port; int tasknr; { - int r; + int i, r; unsigned flags, dl_flags; message mess; -#if 0 - int i, r, rport; - struct eth_conf *ecp; - eth_port_t *rep; -#endif + eth_port_t *loc_port; printf("eth_restart: restarting eth%d, task %d, port %d\n", eth_port-eth_port_table, tasknr, @@ -803,9 +829,29 @@ mess.m3_i1, eth_port->etp_osdep.etp_port)); } + eth_port->etp_flags |= EPF_ENABLED; + eth_port->etp_ethaddr= *(ether_addr_t *)mess.m3_ca1; + if (!(eth_port->etp_flags & EPF_GOT_ADDR)) + { + eth_port->etp_flags |= EPF_GOT_ADDR; + eth_restart_ioctl(eth_port); + + /* Also update any VLANs on this device */ + for (i=0, loc_port= eth_port_table; ietp_flags & EPF_ENABLED)) + continue; + if (loc_port->etp_vlan_port != eth_port) + continue; + + loc_port->etp_ethaddr= eth_port->etp_ethaddr; + loc_port->etp_flags |= EPF_GOT_ADDR; + eth_restart_ioctl(loc_port); + } + } - eth_port->etp_flags |= EPF_ENABLED; if (eth_port->etp_wr_pack) { bf_afree(eth_port->etp_wr_pack); diff -ur oldsrc/servers/inet/sr.c src/servers/inet/sr.c --- oldsrc/servers/inet/sr.c 2005-08-31 18:20:49.000000000 +0400 +++ src/servers/inet/sr.c 2005-11-08 16:57:48.000000000 +0300 @@ -375,6 +375,8 @@ (vir_bytes)m->mq_mess.NDEV_BUFFER); r= sr_put_userdata(sr_fd-sr_fd_table, r, NULL, 1); assert(r == OK); + assert(sr_fd->srf_flags & first_flag); + sr_fd->srf_flags &= ~first_flag; return OK; } @@ -386,6 +388,8 @@ r= sr_put_userdata(sr_fd-sr_fd_table, EINVAL, NULL, 1); assert(r == OK); + assert(sr_fd->srf_flags & first_flag); + sr_fd->srf_flags &= ~first_flag; return OK; } r= (*sr_fd->srf_ioctl)(sr_fd->srf_fd, request); diff -ur oldsrc/servers/is/dmp_kernel.c src/servers/is/dmp_kernel.c --- oldsrc/servers/is/dmp_kernel.c 2005-10-21 00:28:54.000000000 +0400 +++ src/servers/is/dmp_kernel.c 2006-01-12 17:41:40.000000000 +0300 @@ -133,6 +133,7 @@ { int i,r; struct irq_hook irq_hooks[NR_IRQ_HOOKS]; + int irq_actids[NR_IRQ_VECTORS]; struct irq_hook *e; /* irq tab entry */ char *irq[] = { "clock", /* 00 */ @@ -157,6 +158,15 @@ report("IS","warning: couldn't get copy of irq hooks", r); return; } + if ((r = sys_getirqactids(irq_actids)) != OK) { + report("IS","warning: couldn't get copy of irq mask", r); + return; + } + +#if 0 + for (i= 0; iproc_nr); printf(" %9.9s (%02d) ", irq[e->irq], e->irq); printf(" %s", (e->policy & IRQ_REENABLE) ? "reenable" : " - "); - printf(" %d\n", e->notify_id); + printf(" %d", e->notify_id); + if (irq_actids[e->irq] & (1 << i)) + printf("masked"); + printf("\n"); } printf("\n"); } diff -ur oldsrc/servers/is/main.c src/servers/is/main.c --- oldsrc/servers/is/main.c 2005-10-22 15:08:57.000000000 +0400 +++ src/servers/is/main.c 2005-10-21 00:28:54.000000000 +0400 @@ -120,7 +120,8 @@ fkeys = sfkeys = 0; for (i=1; i<=12; i++) bit_set(fkeys, i); for (i=1; i<= 7; i++) bit_set(sfkeys, i); - fkey_unmap(&fkeys, &sfkeys); + if ((s=fkey_unmap(&fkeys, &sfkeys)) != OK) + report("IS", "warning, unfkey_map failed:", s); /* Done. Now exit. */ exit(0); diff -ur oldsrc/servers/pm/getset.c src/servers/pm/getset.c --- oldsrc/servers/pm/getset.c 2005-10-12 19:07:37.000000000 +0400 +++ src/servers/pm/getset.c 2005-12-13 12:48:29.000000000 +0300 @@ -42,21 +42,23 @@ rmp->mp_reply.reply_res3 = mproc[m_in.procnr].mp_pid; break; + case SETEUID: case SETUID: if (rmp->mp_realuid != (uid_t) m_in.usr_id && rmp->mp_effuid != SUPER_USER) return(EPERM); - rmp->mp_realuid = (uid_t) m_in.usr_id; + if(call_nr == SETUID) rmp->mp_realuid = (uid_t) m_in.usr_id; rmp->mp_effuid = (uid_t) m_in.usr_id; tell_fs(SETUID, who, rmp->mp_realuid, rmp->mp_effuid); r = OK; break; + case SETEGID: case SETGID: if (rmp->mp_realgid != (gid_t) m_in.grp_id && rmp->mp_effuid != SUPER_USER) return(EPERM); - rmp->mp_realgid = (gid_t) m_in.grp_id; + if(call_nr == SETGID) rmp->mp_realgid = (gid_t) m_in.grp_id; rmp->mp_effgid = (gid_t) m_in.grp_id; tell_fs(SETGID, who, rmp->mp_realgid, rmp->mp_effgid); r = OK; diff -ur oldsrc/servers/pm/main.c src/servers/pm/main.c --- oldsrc/servers/pm/main.c 2005-10-22 14:43:19.000000000 +0400 +++ src/servers/pm/main.c 2006-02-03 17:54:20.000000000 +0300 @@ -32,6 +32,7 @@ FORWARD _PROTOTYPE( void get_mem_chunks, (struct memory *mem_chunks) ); FORWARD _PROTOTYPE( void patch_mem_chunks, (struct memory *mem_chunks, struct mem_map *map_ptr) ); +FORWARD _PROTOTYPE( void do_x86_vm, (struct memory mem_chunks[NR_MEMS]) ); #define click_to_round_k(n) \ ((unsigned) ((((unsigned long) (n) << CLICK_SHIFT) + 512) / 1024)) @@ -153,7 +154,7 @@ register struct boot_image *ip; static char core_sigs[] = { SIGQUIT, SIGILL, SIGTRAP, SIGABRT, SIGEMT, SIGFPE, SIGUSR1, SIGSEGV, SIGUSR2 }; - static char ign_sigs[] = { SIGCHLD, SIGWINCH }; + static char ign_sigs[] = { SIGCHLD, SIGWINCH, SIGCONT }; static char mess_sigs[] = { SIGTERM, SIGHUP, SIGABRT, SIGQUIT }; register struct mproc *rmp; register int i; @@ -215,7 +216,7 @@ sigemptyset(&rmp->mp_sigmask); sigemptyset(&rmp->mp_catch); if (ip->proc_nr == INIT_PROC_NR) { /* user process */ - rmp->mp_pid = INIT_PID; + rmp->mp_procgrp = rmp->mp_pid = INIT_PID; rmp->mp_flags |= IN_USE; } else { /* system process */ @@ -253,7 +254,6 @@ sigfillset(&mproc[PM_PROC_NR].mp_ignore); /* guard against signals */ sigfillset(&mproc[FS_PROC_NR].mp_sig2mess); /* forward signals */ sigfillset(&mproc[TTY_PROC_NR].mp_sig2mess); /* forward signals */ - sigfillset(&mproc[MEM_PROC_NR].mp_sig2mess); /* forward signals */ /* Tell FS that no more system processes follow and synchronize. */ mess.PR_PROC_NR = NONE; @@ -270,6 +270,9 @@ } #endif /* ENABLE_BOOTDEV */ + /* Withhold some memory from x86 VM */ + do_x86_vm(mem_chunks); + /* Initialize tables to all physical memory and print memory information. */ printf("Physical memory:"); mem_init(mem_chunks, &free_clicks); @@ -391,3 +394,64 @@ } } +#define PAGE_SIZE 4096 +#define PAGE_TABLE_COVER (1024*PAGE_SIZE) +/*=========================================================================* + * do_x86_vm * + *=========================================================================*/ +PRIVATE void do_x86_vm(mem_chunks) +struct memory mem_chunks[NR_MEMS]; +{ + phys_bytes high, bytes; + phys_clicks clicks, base_click; + unsigned pages; + int i, r; + + /* Compute the highest memory location */ + high= 0; + for (i= 0; i high) + high= mem_chunks[i].base + mem_chunks[i].size; + } + + high <<= CLICK_SHIFT; +#if VERBOSE_VM + printf("do_x86_vm: found high 0x%x\n", high); +#endif + + /* The number of pages we need is one for the page directory, enough + * page tables to cover the memory, and one page for alignement. + */ + pages= 1 + (high + PAGE_TABLE_COVER-1)/PAGE_TABLE_COVER + 1; + bytes= pages*PAGE_SIZE; + clicks= (bytes + CLICK_SIZE-1) >> CLICK_SHIFT; + +#if VERBOSE_VM + printf("do_x86_vm: need %d pages\n", pages); + printf("do_x86_vm: need %d bytes\n", bytes); + printf("do_x86_vm: need %d clicks\n", clicks); +#endif + + for (i= 0; i= NR_MEMS) + panic("PM", "not enough memory for VM page tables?", NO_NUM); + base_click= mem_chunks[i].base; + mem_chunks[i].base += clicks; + mem_chunks[i].size -= clicks; + +#if VERBOSE_VM + printf("do_x86_vm: using 0x%x clicks @ 0x%x\n", clicks, base_click); +#endif + r= sys_vm_setbuf(base_click << CLICK_SHIFT, clicks << CLICK_SHIFT, + high); + if (r != 0) + printf("do_x86_vm: sys_vm_setbuf failed: %d\n", r); +} diff -ur oldsrc/servers/pm/misc.c src/servers/pm/misc.c --- oldsrc/servers/pm/misc.c 2005-10-21 15:10:16.000000000 +0400 +++ src/servers/pm/misc.c 2005-11-14 18:50:46.000000000 +0300 @@ -59,6 +59,7 @@ struct mproc *proc_addr; vir_bytes src_addr, dst_addr; struct kinfo kinfo; + struct loadinfo loadinfo; size_t len; static struct pm_mem_info pmi; int s, r; @@ -87,6 +88,11 @@ src_addr = (vir_bytes) &pmi; len = sizeof(pmi); break; + case SI_LOADINFO: /* loadinfo is obtained via PM */ + sys_getloadinfo(&loadinfo); + src_addr = (vir_bytes) &loadinfo; + len = sizeof(struct loadinfo); + break; default: return(EINVAL); } diff -ur oldsrc/servers/pm/signal.c src/servers/pm/signal.c --- oldsrc/servers/pm/signal.c 2005-10-12 19:07:37.000000000 +0400 +++ src/servers/pm/signal.c 2006-02-03 18:21:00.000000000 +0300 @@ -113,6 +113,8 @@ * * The library interface must set SIG_INQUIRE if the 'act' argument * is NULL. + * + * KILL and STOP can't be masked. */ int i; @@ -122,6 +124,7 @@ switch (m_in.sig_how) { case SIG_BLOCK: sigdelset((sigset_t *)&m_in.sig_set, SIGKILL); + sigdelset((sigset_t *)&m_in.sig_set, SIGSTOP); for (i = 1; i <= _NSIG; i++) { if (sigismember((sigset_t *)&m_in.sig_set, i)) sigaddset(&mp->mp_sigmask, i); @@ -138,6 +141,7 @@ case SIG_SETMASK: sigdelset((sigset_t *) &m_in.sig_set, SIGKILL); + sigdelset((sigset_t *) &m_in.sig_set, SIGSTOP); mp->mp_sigmask = (sigset_t) m_in.sig_set; check_pending(mp); break; @@ -520,6 +524,7 @@ if (proc_id == 0 && mp->mp_procgrp != rmp->mp_procgrp) continue; if (proc_id == -1 && rmp->mp_pid <= INIT_PID) continue; if (proc_id < -1 && rmp->mp_procgrp != -proc_id) continue; + if (rmp->mp_procgrp == 0) continue; /* Check for permission. */ if (mp->mp_effuid != SUPER_USER diff -ur oldsrc/servers/pm/table.c src/servers/pm/table.c --- oldsrc/servers/pm/table.c 2005-08-10 13:37:54.000000000 +0400 +++ src/servers/pm/table.c 2006-01-11 20:14:51.000000000 +0300 @@ -107,6 +107,10 @@ do_getsetpriority, /* 88 = getpriority */ do_getsetpriority, /* 89 = setpriority */ do_time, /* 90 = gettimeofday */ + do_getset, /* 91 = seteuid */ + do_getset, /* 92 = setegid */ + no_sys, /* 93 = truncate */ + no_sys, /* 94 = ftruncate */ }; /* This should not fail with "array size is negative": */ extern int dummy[sizeof(call_vec) == NCALLS * sizeof(call_vec[0]) ? 1 : -1]; diff -ur oldsrc/servers/rs/manager.c src/servers/rs/manager.c --- oldsrc/servers/rs/manager.c 2005-10-21 17:46:47.000000000 +0400 +++ src/servers/rs/manager.c 2006-01-27 16:20:06.000000000 +0300 @@ -372,8 +372,7 @@ * Now, set the privilege structure for the child process to let is run. * This should succeed: we tested number in use above. */ - m.PR_PROC_NR = child_proc_nr; - if ((s = _taskcall(SYSTEM, SYS_PRIVCTL, &m)) < 0) { /* set privileges */ + if ((s = sys_privctl(child_proc_nr, SYS_PRIV_INIT, 0, NULL)) < 0) { report("RS","call to SYSTEM failed", s); /* to let child run */ if(child_pid > 0) kill(child_pid, SIGKILL); /* kill driver */ else report("RS", "didn't kill pid", child_pid); diff -ur oldsrc/servers/rs/service.c src/servers/rs/service.c --- oldsrc/servers/rs/service.c 2005-10-21 17:46:47.000000000 +0400 +++ src/servers/rs/service.c 2006-01-17 18:56:55.000000000 +0300 @@ -130,7 +130,8 @@ exit(EINVAL); } if (stat(req_path, &stat_buf) == -1) { - print_usage(argv[ARG_NAME], "couldn't get status of binary"); + perror(req_path); + fprintf(stderr, "couldn't get stat binary\n"); exit(errno); } if (! (stat_buf.st_mode & S_IFREG)) { diff -ur oldsrc/test/test17.c src/test/test17.c --- oldsrc/test/test17.c 2005-08-22 19:08:26.000000000 +0400 +++ src/test/test17.c 2006-02-13 14:07:21.000000000 +0300 @@ -12,6 +12,7 @@ #include #include #include +#include #define NOCRASH 1 /* test11(), 2nd pipe */ #define PDPNOHANG 1 /* test03(), write_standards() */ @@ -25,7 +26,7 @@ #define ARSIZE 256 /* array size */ #define PIPESIZE 3584 /* max number of bytes to be written on pipe */ -#define MAXOPEN 17 /* maximum number of extra open files */ +#define MAXOPEN (OPEN_MAX-3) /* maximum number of extra open files */ #define MAXLINK 0177 /* maximum number of links per file */ #define LINKCOUNT 5 #define MASK 0777 /* selects lower nine bits */ diff -ur oldsrc/test/test18.c src/test/test18.c --- oldsrc/test/test18.c 2005-08-22 19:08:26.000000000 +0400 +++ src/test/test18.c 2006-02-13 14:07:21.000000000 +0300 @@ -13,6 +13,7 @@ #include #include #include +#include #define NOCRASH 1 /* test11(), 2nd pipe */ #define PDPNOHANG 1 /* test03(), write_standards() */ @@ -26,7 +27,7 @@ #define ARSIZE 256 /* array size */ #define PIPESIZE 3584 /* maxnumber of bytes to be written on pipe */ -#define MAXOPEN 17 /* maximum number of extra open files */ +#define MAXOPEN (OPEN_MAX-3) /* maximum number of extra open files */ #define MAXLINK 0177 /* maximum number of links per file */ #define MASK 0777 /* selects lower nine bits */ #define READ_EOF 0 /* returned by read-call at eof */ diff -ur oldsrc/test/test37.c src/test/test37.c --- oldsrc/test/test37.c 2005-09-19 17:39:27.000000000 +0400 +++ src/test/test37.c 2006-02-13 14:07:21.000000000 +0300 @@ -224,7 +224,7 @@ /* Test sigprocmask and sigpending. */ int i; pid_t p; - sigset_t s, s1, s_empty, s_full, s_ill, s_ill_pip, s_nokill; + sigset_t s, s1, s_empty, s_full, s_ill, s_ill_pip, s_nokill, s_nokill_stop; struct sigaction sa, osa; subtest = 2; @@ -240,6 +240,8 @@ if (sigfillset(&s_full) != 0) e(7); s_nokill = s_full; if (sigdelset(&s_nokill, SIGKILL) != 0) e(8); + s_nokill_stop = s_nokill; + if (sigdelset(&s_nokill_stop, SIGSTOP) != 0) e(8); #ifndef _MINIX /* XXX - should unsupported signals be <= _NSIG? */ if (SIGSTOP > _NSIG) e(666); if (SIGSTOP <= _NSIG && sigdelset(&s_nokill, SIGSTOP) != 0) e(888); @@ -295,9 +297,11 @@ /* Test sigprocmask(SIG_SETMASK, ...). */ if (sigprocmask(SIG_SETMASK, &s_full, &s1) != 0) e(18); /* block all */ if (sigemptyset(&s1) != 0) e(19); + errno = 0; if (sigprocmask(SIG_SETMASK, &s_empty, &s1) != 0) e(20); /* block none */ - if (s1 != s_nokill) e(21); + if (s1 != s_nokill_stop) e(21); if (sigprocmask(SIG_SETMASK, &s_ill, &s1) != 0) e(22); /* block SIGILL */ + errno = 0; if (s1 != s_empty) e(23); if (sigprocmask(SIG_SETMASK, &s_ill_pip, &s1) != 0) e(24); /* SIGILL+PIP */ if (s1 != s_ill) e(25); @@ -306,17 +310,17 @@ /* Test sigprocmask(SIG_UNBLOCK, ...) */ if (sigprocmask(SIG_UNBLOCK, &s_ill, &s1) != 0) e(28); - if (s1 != s_nokill) e(29); + if (s1 != s_nokill_stop) e(29); if (sigprocmask(SIG_UNBLOCK, &s_ill_pip, &s1) != 0) e(30); - s = s_nokill; + s = s_nokill_stop; if (sigdelset(&s, SIGILL) != 0) e(31); if (s != s1) e(32); if (sigprocmask(SIG_UNBLOCK, &s_empty, &s1) != 0) e(33); - s = s_nokill; + s = s_nokill_stop; if (sigdelset(&s, SIGILL) != 0) e(34); if (sigdelset(&s, SIGPIPE) != 0) e(35); if (s != s1) e(36); - s1 = s_nokill; + s1 = s_nokill_stop; if (sigprocmask(SIG_SETMASK, &s_empty, &s1) != 0) e(37); if (s != s1) e(38); @@ -333,13 +337,13 @@ if (sigprocmask(20000, &s_full, &s1) != -1) e(45); if (errno != EINVAL) e(46); if (sigprocmask(SIG_SETMASK, &s_full, &s1) != 0) e(47); - if (s1 != s_nokill) e(48); + if (s1 != s_nokill_stop) e(48); /* If second arg is 0, nothing is set. */ if (sigprocmask(SIG_SETMASK, (sigset_t *) NULL, &s1) != 0) e(49); - if (s1 != s_nokill) e(50); + if (s1 != s_nokill_stop) e(50); if (sigprocmask(SIG_SETMASK, &s_ill_pip, &s1) != 0) e(51); - if (s1 != s_nokill) e(52); + if (s1 != s_nokill_stop) e(52); if (sigprocmask(SIG_SETMASK, (sigset_t *) NULL, &s1) != 0) e(53); if (s1 != s_ill_pip) e(54); if (sigprocmask(SIG_BLOCK, (sigset_t *) NULL, &s1) != 0) e(55); diff -ur oldsrc/tools/Makefile src/tools/Makefile --- oldsrc/tools/Makefile 2005-10-21 17:46:47.000000000 +0400 +++ src/tools/Makefile 2006-02-15 17:21:56.000000000 +0300 @@ -19,12 +19,7 @@ ../drivers/tty/tty \ ../drivers/memory/memory \ ../drivers/log/log \ - AT:../drivers/at_wini/at_wini \ - BIOS:../drivers/bios_wini/bios_wini \ - FLOPPY:../drivers/floppy/floppy \ - ../servers/init/init \ -# bootdev.img - + ../servers/init/init usage: @echo " " >&2 @@ -71,7 +66,7 @@ # rebuild the program or system libraries includes: -# cd ../include && $(MAKE) install + cd ../include && $(MAKE) install depend: includes cd ../ && $(MAKE) depend diff -ur oldsrc/tools/chrootmake.sh src/tools/chrootmake.sh --- oldsrc/tools/chrootmake.sh 2005-10-22 01:00:06.000000000 +0400 +++ src/tools/chrootmake.sh 2006-02-17 15:34:18.000000000 +0300 @@ -1,17 +1,16 @@ #!/bin/sh -PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin -export PATH +export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin cd /usr/src || exit 1 make etcfiles su bin -c 'make world install' || exit 1 cd tools || exit 1 rm revision rm /boot/image/* -make hdboot || exit 1 +make install || exit 1 cp ../boot/boot /boot/boot || exit 1 make clean make image_small || exit 1 -cp image_small /boot || exit 1 +#cp image_small /boot || exit 1 cd /usr/src || exit 1 make clean # Let man find the manpages Only in src/tools: fdbootparams diff -ur oldsrc/tools/mkboot src/tools/mkboot --- oldsrc/tools/mkboot 2005-09-19 17:28:37.000000000 +0400 +++ src/tools/mkboot 2006-02-15 14:03:28.000000000 +0300 @@ -9,10 +9,10 @@ # Check arguments. case "$#:$1" in -1:bootable | 1:hdboot | [12]:fdboot | 1:cdfdboot ) +1:bootable | 1:hdboot | [12]:fdboot | [12]:cdfdboot ) action=$1 dev=$2 ;; -*) echo "Usage: $0 [bootable | hdboot | cdfdboot | fdboot [device]]" >&2 +*) echo "Usage: $0 [bootable | hdboot | cdfdboot | fdboot [device]] | cdfdboot [device]" >&2 exit 1 esac @@ -65,12 +65,20 @@ version=`sed 's/[" ]//g;/^$/d' /dev/null` + + if [ -z "$revision" ] + then rrevision="" + else rrevision=r$revision + fi + oldrev=$revision + target="${version}r${revision}" if [ -z "$revision" ] then revision=0 + rrevision="" elif [ -f $rootdir/boot/image/$target ] then if [ $rootdir/boot/image/$target -newer image ] @@ -80,8 +88,9 @@ exit 0 fi revision=`expr $revision + 1` + rrevision=r$revision fi - target="${version}r${revision}" + target="${version}${rrevision}" set -- `ls -t $rootdir/boot/image` @@ -155,7 +164,10 @@ cdfdboot) # cdfdboot: Make a boot floppy image to go on a CD for booting from. - dev=/dev/ram + if [ -z "$dev" ] + then + dev=/dev/ram + fi umount $dev 2>/dev/null if mkfs -B 1024 -b 1440 -i 512 $dev || exit 1 then : @@ -169,7 +181,7 @@ mkdir /mnt/dev mkdir /mnt/boot mkdir /mnt/boot/image - ( cd /mnt/dev && /usr/src/commands/scripts/MAKEDEV.sh std ) + ( cd /mnt/dev && sh /usr/src/commands/scripts/MAKEDEV.sh std ) cp -p image image_* /mnt/boot/image || exit 1 cp -p ../boot/boot /mnt/boot/boot || exit 1 umount $dev || exit 1 Only in src/tools/release/cd: RUSSIAN Binary files oldsrc/tools/release/cd/SETUP.PDF and src/tools/release/cd/SETUP.PDF differ diff -ur oldsrc/tools/release/cd/SETUP.PS src/tools/release/cd/SETUP.PS --- oldsrc/tools/release/cd/SETUP.PS 2005-10-22 16:20:48.000000000 +0400 +++ src/tools/release/cd/SETUP.PS 2005-09-29 13:38:30.000000000 +0400 @@ -1,6 +1,6 @@ %!PS-Adobe-1.0 %%Creator: devps (Pipeline Associates, Inc.) -%%CreationDate: Sat Oct 22 13:04:19 2005 +%%CreationDate: Mon Sep 26 22:12:53 2005 %%Pages: (atend) %%DocumentFonts: (atend) @@ -157,7 +157,7 @@ %% Troff special characters not on Symbol font %% Copyright (C) 1986 by Pipeline Associates, Inc. %% Version 1.0 -%% $Header: /cvsup/minix/src/tools/release/cd/SETUP.PS,v 1.8.4.1 2005/10/22 12:20:48 beng Exp $ +%% $Header: /cvsup/minix/src/tools/release/cd/SETUP.PS,v 1.8 2005/09/29 09:38:30 beng Exp $ /altRTD 20 dict def altRTD begin /s{setcachedevice}bind def @@ -406,95 +406,74 @@ 4213 V 11 R 1260(This)S -1491(appendix)S -1931(explains)S -2335(how)S -2559(to)S -2679(install)S -2986(MINIX)S -3353(3.)S -3499(A)S -3614(complete)S +1488(appendix)S +1925(explains)S +2326(how)S +2547(to)S +2664(install)S +2967(MINIX)S +3331(3.)S +3474(Standard)S 10 R -4054(MINIX)S -4389(3)S +3898(MINIX)S +4230(3)S 11 R -4474(instal-)S +4312(requires)S +4702(a)S 4339 V -1080(lation)S -1370(requires)S -1765(a)S -1851(Pentium)S -2257(\(or)S -2422(compatible\))S -2989(with)S -3222(at)S -3339(least)S -3580(16-MB)S -3935(of)S -4063(RAM,)S -4379(1)S -4470(GB)S -4660(of)S +1080(Pentium)S +1492(\(or)S +1663(compatible\))S +2236(with)S +2475(at)S +2598(least)S +2845(16-MB)S +3206(of)S +3340(RAM,)S +3662(at)S +3784(least)S +(200-MB)374 4030 A +4445(of)S +4578(free)S 4465 V -1080(free)S -1292(disk)S -(space,)276 1514 A -1828(an)S -1971(IDE)S -2194(CD-ROM)S -2676(and)S -2875(an)S -3019(IDE)S -3243(hard)S -3479(disk.)S -3730(A)S -3849(minimal)S -4258(installation)S +1080(disk)S +(space,)276 1297 A +1606(an)S +1744(IDE)S +1962(CD-ROM)S +2438(and)S +2631(an)S +2769(IDE)S +2987(hard)S +3217(disk.)S +3462(Serial)S +3756(ATA,)S +4045(USB,)S +4323(and)S +4517(SCSI)S 4591 V -(\(without)375 1080 A -1488(the)S -1657(commands)S -2170(sources\))S -2573(requires)S -2964(8)S -3052(MB)S -3257(RAM)S -3542(and)S -(300)165 3735 A -3932(MB)S -4136(of)S -4260(disk)S -(space.)276 4476 A +1080(disks)S +1371(are)S +1572(not)S +(supported)436 1776 A +2275(at)S +2419(present.)S +2859(For)S +3076(USB)S +3355(CD-ROMS,)S +3951(see)S +4157(the)S +4356(Website:)S 4717 V -1080(Serial)S -1383(ATA,)S -1681(USB,)S -1967(and)S -2170(SCSI)S -2448(disks)S -2718(are)S -2898(not)S -(supported)436 3082 A -3561(at)S -3685(present.)S -4105(For)S -4302(USB)S -4561(CD-)S -4843 V -1080(ROMS,)S -1450(see)S -1621(the)S -1785(Website:)S 11 I -(www.minix3.org)733 2209 A +(www.minix3.org)733 1080 A 11 R -2942(.)S -5158 V +1813(.)S +5095 V 13 B 1080(A.1)S (PREPARATION)963 1339 A -5410 V +5347 V 11 R 1260(If)S (you)165 1369 A @@ -511,7 +490,7 @@ 4219(skip)S 4439(steps)S 4697(1)S -5536 V +5473 V 1080(and)S 1278(2,)S 1399(but)S @@ -531,7 +510,7 @@ 4024(version)S 4387(is)S 4498(avail-)S -5662 V +5599 V 1080(able.)S 1351(If)S (you)165 1454 A @@ -552,7 +531,7 @@ 4225(Part)S 4435(V)S 4545(first.)S -5788 V +5725 V 1080(If)S (you)165 1192 A 1395(do)S @@ -568,13 +547,13 @@ 3823(USB)S 4076(CD-ROM)S (boot)196 4556 A -5914 V +5851 V 1080(image)S 1380(or)S 1500(use)S 1676(a)S 1754(simulator.)S -6135 V +6103 V 1135(1.)S 11 B 1246(Download)S @@ -585,7 +564,7 @@ 11 B 2350(CD-ROM)S 2846(image)S -6261 V +6229 V 11 R 1260(Download)S 1780(the)S @@ -601,12 +580,12 @@ 4133(3)S 4247(Website)S 4671(at)S -6387 V +6355 V 11 I (www.minix3.org)733 1080 A 11 R 1813(.)S -6608 V +6607 V 1135(2.)S 11 B 1246(Create)S @@ -617,7 +596,7 @@ 2455(3)S 11 B 2533(CD-ROM)S -6734 V +6733 V 11 R 1260(Decompress)S 1850(the)S @@ -631,7 +610,7 @@ 4052(image)S 4365(file)S 4555(with)S -6860 V +6859 V 1080(extension)S 11 I 1556(.iso)S @@ -649,7 +628,7 @@ 3472(bit-for-bit)S 3959(CD-ROM)S 4452(image.)S -6986 V +6985 V 1080(Burn)S 1329(it)S 1419(to)S @@ -1110,72 +1089,72 @@ 4573(par-)S 5670 V (titions,)305 1080 A -1417(create)S -1717(a)S -(contiguous)485 1799 A -(chunk)270 2316 A -2617(of)S -2740(free)S -2945(disk)S -(space)248 3160 A -3439(of)S -3562(at)S -3674(least)S -(300)165 3910 A -4106(MB,)S -4337(or,)S -4488(if)S -(you)165 4587 A +1431(create)S +1745(a)S +(contiguous)485 1841 A +(chunk)270 2372 A +2687(of)S +2824(free)S +3043(disk)S +(space)248 3272 A +3565(of)S +3702(at)S +3828(least)S +(200)165 4078 A +4288(MB)S +4505(\(even)S 5796 V -1080(want)S -1329(all)S -1474(the)S -1643(commands)S -2156(sources,)S -2550(1)S -2638(GB.)S -2882(If)S -(you)165 2990 A -3189(do)S -3333(not)S -(know)245 3508 A -3787(how)S -4011(to)S -4131(manage)S -4511(parti-)S -5922 V -1080(tions)S -1347(but)S -1540(have)S -1802(a)S -(partitioning)517 1904 A -2473(program)S -2900(like)S -11 I -(Partition)400 3119 A -3571(Magic)S -11 R -3854(,)S -3934(use)S -4133(it)S -4246(to)S -4383(create)S +1080(better:)S +(400)165 1393 A +1586(MB)S +1786(or)S +1906(more\).)S +2256(If)S +(you)165 2359 A +2553(do)S +2692(not)S +(know)245 2862 A +3136(how)S +3355(to)S +3470(manage)S +(partitions)419 3845 A +4293(but)S +4463(have)S 4702(a)S +5922 V +(partitioning)517 1080 A +1640(program)S +2058(like)S +11 I +(Partition)400 2268 A +2711(Magic)S +11 R +2994(,)S +3065(use)S +3256(it)S +3361(to)S +3490(create)S +3801(a)S +3893(region)S +4218(of)S +4352(free)S +4568(disk)S 6048 V -1080(region)S -1400(of)S -1529(free)S -1741(disk)S -(space.)276 1963 A -2305(Also)S -2552(make)S -2831(sure)S -3054(there)S -3315(is)S -3427(at)S -3546(least)S -3789(one)S -3987(primary)S +(space)248 1080 A +1366(of)S +1496(at)S +1615(least)S +(200)165 1858 A +2061(MB.)S +2299(Also)S +2546(make)S +2825(sure)S +3048(there)S +3310(is)S +3423(at)S +3543(least)S +3787(one)S +3986(primary)S (partition)376 4376 A 6174 V 1080(\(i.e.,)S @@ -1376,45 +1355,51 @@ 3024 V 11 R 1260(By)S -1420(now)S -(you)165 1641 A -(should)294 1837 A -2162(have)S -2404(allocated)S -2839(some)S -3105(free)S -(space)248 3311 A -3591(on)S -(your)202 3733 A -3967(disk.)S -4239(If)S -(you)165 4345 A -4542(have)S +1418(now)S +(you)165 1637 A +(should)294 1831 A +2154(have)S +2393(allocated)S +2825(at)S +2935(least)S +(200)165 3169 A +3363(MB)S +3564(of)S +3686(free)S +(space)248 3890 A +4168(on)S +(your)202 4308 A +4540(disk.)S 3150 V -1080(not)S -(done)215 1254 A -1502(so)S -1633(yet,)S -1830(please)S -2142(do)S -2285(it)S -2380(now)S -2603(unless)S -2913(there)S -3169(is)S -3276(an)S -3414(existing)S -(partition)376 3798 A -(you)165 4207 A -4404(are)S -4573(wil-)S +1080(If)S +(you)165 1189 A +1389(have)S +1634(not)S +(done)215 1810 A +2060(so)S +2193(yet,)S +2392(please)S +2706(do)S +2851(it)S +2948(now)S +3173(unless)S +3485(there)S +3743(is)S +3852(an)S +3992(existing)S +(200-MB)374 4378 A 3276 V -1080(ling)S -1280(to)S -(convert)333 1394 A -1755(to)S -1869(MINIX)S -2229(3.)S +1080(\(or)S +1237(larger\))S +(partition)376 1562 A +(you)165 1966 A +2159(are)S +(willing)314 2324 A +2666(to)S +(convert)333 2780 A +3141(to)S +3255(MINIX)S +3615(3.)S 3528 V 1135(1.)S 11 B @@ -1839,65 +1824,54 @@ 3654 V 11 R 1260(If)S -(you)165 1373 A -1577(are)S -1753(tight)S -1995(on)S -2144(disk)S -(space,)276 2367 A -2682(select)S -2977(M)S -3115(for)S -3284(a)S -3374(minimal)S -3784(installation)S -4318(which)S -4629(in-)S +(you)165 1386 A +1603(are)S +1792(tight)S +2047(on)S +2209(disk)S +(space,)276 2445 A +2773(select)S +3080(M)S +3230(for)S +3411(a)S +3513(minimal)S +3935(installation)S +4481(which)S 3780 V -1080(cludes)S -1399(all)S -1546(the)S -1717(binaries)S -2104(but)S -2280(only)S -2511(the)S -2682(system)S -3025(sources)S -3392(installed.)S -3859(The)S -4066(minimal)S -4470(option)S +1080(includes)S +1483(all)S +1628(the)S +1797(binaries)S +2181(but)S +2354(only)S +2582(the)S +2750(system)S +3090(sources)S +3455(installed.)S +(200)165 3920 A +4117(MB)S +4321(is)S +(enough)325 4427 A 3906 V -1080(does)S -1313(not)S -1484(install)S -1786(the)S -1952(sources)S -2315(of)S -2437(the)S -2603(commands.)S -(300)165 3169 A -3364(MB)S -3566(is)S -(enough)325 3670 A -4025(for)S -4184(a)S -(bare-bones)487 4265 A +1080(for)S +1238(a)S +(bare-bones)487 1317 A +1833(system.)S +2198(If)S +(you)165 2301 A +2495(have)S +(400)165 2735 A +2930(MB)S +3132(or)S +3254(more,)S +(choose)308 3540 A +3878(F)S +3970(for)S +4129(a)S +4209(full)S +4393(installa-)S 4032 V -1080(system.)S -1444(If)S -(you)165 1546 A -1739(have)S -1977(1)S -2060(GB)S -2242(or)S -2362(more,)S -(choose)308 2646 A -2982(F)S -3072(for)S -3229(a)S -3307(full)S -3489(installation.)S +1080(tion.)S 4284 V 1135(4.)S 11 B diff -ur oldsrc/tools/release.sh src/tools/release.sh --- oldsrc/tools/release.sh 2005-10-23 02:14:33.000000000 +0400 +++ src/tools/release.sh 2006-02-17 17:43:00.000000000 +0300 @@ -1,5 +1,6 @@ #!/bin/sh +PACKAGEDIR=/usr/bigports/Packages secs=`expr 32 '*' 64` make_hdimage() @@ -34,7 +35,7 @@ hdemu_root_changes() { - $RELEASEDIR/usr/bin/installboot -d $RAM \ + $RELEASEDIR/usr/bin/installboot -d $TMPDISK3 \ $RELEASEDIR/usr/mdec/bootblock boot/boot echo \ 'label=BIOS @@ -42,7 +43,7 @@ disable=inet bios_remap_first=1 ramimagedev=c0d7p0s0 -save' | $RELEASEDIR/usr/bin/edparams $RAM +save' | $RELEASEDIR/usr/bin/edparams $TMPDISK3 echo \ 'root=/dev/c0d7p0s0 @@ -61,15 +62,13 @@ version_pretty=`sed 's/[" ]//g;/^$/d' $TD1 if [ -f $TD2 ] -then TMPDISK2="`cat $TD2`" +then TMPDISK2="`cat $TD2`" + echo " * Warning: I'm going to overwrite $TMPDISK2!" else - echo "Temporary (sub)partition to use for /tmp? " - echo "It will be mkfsed!" - echo -n "Device: /dev/" - read dev || exit 1 - TMPDISK2=/dev/$dev + echo "Temporary (sub)partition to use for /tmp? " + echo "It will be mkfsed!" + echo -n "Device: /dev/" + read dev || exit 1 + TMPDISK2=/dev/$dev fi if [ -b $TMPDISK2 ] @@ -155,18 +152,48 @@ echo $TMPDISK2 >$TD2 +if [ -f $TD3 ] +then TMPDISK3="`cat $TD3`" + echo " * Warning: I'm going to overwrite $TMPDISK3!" +else + echo "It has to be at least $ROOTKB KB." + echo "" + echo "Temporary (sub)partition to use to make the root FS image? " + echo "It will be mkfsed!" + echo -n "Device: /dev/" + read dev || exit 1 + TMPDISK3=/dev/$dev +fi + +if [ -b $TMPDISK3 ] +then : +else echo "$TMPDISK3 is not a block device.." + exit 1 +fi + +echo $TMPDISK3 >$TD3 + umount $TMPDISK umount $TMPDISK2 -umount $RAM +umount $TMPDISK3 + +if [ $TMPDISK = $TMPDISK2 -o $TMPDISK = $TMPDISK3 -o $TMPDISK2 = $TMPDISK3 ] +then + echo "Temporary devices can't be equal." + exit +fi + +echo " * Ready to go, press RETURN if you're sure.." +read xyzzy echo " * Cleanup old files" -rm -rf $RELEASEDIR $ISO $IMAGE $ROOTIMAGE $ISOGZ $CDFILES +rm -rf $RELEASEDIR $ISO $IMAGE $ROOTIMAGE $ISOBZ $CDFILES image* mkdir -p $CDFILES || exit mkdir -p $RELEASEDIR -mkfs -B $BS -b $ROOTBLOCKS $RAM || exit +mkfs -B $BS -b $ROOTBLOCKS $TMPDISK3 || exit mkfs $TMPDISK2 || exit -echo " * mounting $RAM as $RELEASEDIR" -mount $RAM $RELEASEDIR || exit +echo " * mounting $TMPDISK3 as $RELEASEDIR" +mount $TMPDISK3 $RELEASEDIR || exit mkdir -m 755 $RELEASEDIR/usr mkdir -m 1777 $RELEASEDIR/tmp mount $TMPDISK2 $RELEASEDIR/tmp @@ -187,16 +214,16 @@ if [ "$COPY" -ne 1 ] then echo " * Doing new cvs export" - ( cd $RELEASEDIR/usr && mkdir src && cvs export -r$CVSTAG $CHECKOUTLIST ) + ( cd $RELEASEDIR/usr && mkdir src && cvs export -r$CVSTAG src ) else - ( cd .. && make clean ) + ( cd .. && make depend && make clean ) srcdir=/usr/src ( cd $srcdir && tar cf - . ) | ( cd $RELEASEDIR/usr && mkdir src && cd src && tar xf - ) fi echo " * Fixups for owners and modes of dirs and files" -chown -R bin $RELEASEDIR/usr/src $RELEASEDIR/usr/gnu -chmod -R u+w $RELEASEDIR/usr/src $RELEASEDIR/usr/gnu +chown -R bin $RELEASEDIR/usr/src +chmod -R u+w $RELEASEDIR/usr/src find $RELEASEDIR/usr/src -type d | xargs chmod 755 find $RELEASEDIR/usr/src -type f | xargs chmod 644 find $RELEASEDIR/usr/src -name configure | xargs chmod 755 @@ -226,14 +253,17 @@ ( for d in $RELEASEDIR/usr/src.*; do find $d; done) | wc -l >$RELEASEDIR/.extrasrcfiles find $RELEASEDIR/usr | wc -l >$RELEASEDIR/.usrfiles find $RELEASEDIR -xdev | wc -l >$RELEASEDIR/.rootfiles -echo " * Scrubbing /.." -cp /dev/zero $RELEASEDIR/.z ; rm $RELEASEDIR/.z -echo " * Scrubbing /usr.." -cp /dev/zero $RELEASEDIR/usr/.z ; rm $RELEASEDIR/usr/.z -echo " * Scrubbing done." +echo " * Zeroing remainder of temporary areas" +df $TMPDISK +df $TMPDISK3 +cp /dev/zero $RELEASEDIR/usr/.x +rm $RELEASEDIR/usr/.x +cp /dev/zero $RELEASEDIR/.x +rm $RELEASEDIR/.x + umount $TMPDISK || exit umount $TMPDISK2 || exit -umount $RAM || exit +umount $TMPDISK3 || exit (cd ../boot && make) (cd .. && make depend) make clean @@ -241,13 +271,26 @@ cp image image_big make clean make image_small || exit 1 -dd if=$RAM of=$ROOTIMAGE bs=$BS count=$ROOTBLOCKS +dd if=$TMPDISK3 of=$ROOTIMAGE bs=$BS count=$ROOTBLOCKS # Prepare image and image_small for cdfdboot cp image_big image -sh mkboot cdfdboot +sh mkboot cdfdboot $TMPDISK3 cp $IMAGE $CDFILES/bootflop.img cp release/cd/* $CDFILES +DESTPACKAGES=$CDFILES/PACKAGES +mkdir -p $DESTPACKAGES + +( cd $PACKAGEDIR + for f in *tar* + do + shortname="`echo $f | sed 's/\.tar\..*//' | tr -dc '[a-z][A-z][0-9]' | sed 's/^\(........\).*/\1/' | tr '[a-z]' '[A-Z]'`.TBZ" + cp $f $DESTPACKAGES/$shortname + echo $shortname $f >>$DESTPACKAGES/List + echo " * Copied $f to $shortname" + done +) + h_opt= bootimage=$IMAGE if [ "$HDEMU" -ne 0 ]; then @@ -275,7 +318,7 @@ # unreadable. partition -m $ISO 0 81:$isosects 81:$ROOTSECTS 81:$USRSECTS fi -echo " * gzipping $ISO" -gzip -9 $ISO -ls -al $ISOGZ +echo " * bzipping $ISO" +bzip2 $ISO +ls -al $ISOBZ