Pipes and COPY-ON-WRITE
In this example, every forked process gets its own copy of the
countervariable i through copy-on-write.
committer: Markus Bröker <mbroeker@largo.homelinux.org>
+ − CC = gcc -g -ggdb
+ − CFLAGS = -Wall -O2 -Iinclude
+ − LDFLAGS =
+ − NASM = nasm -f elf -Iinclude/
+ − TARGET = stackinfo
+ − OBJECTS = main.o
+ − OBJECTS += get_sp.o
+ −
+ − .SUFFIXES: .c .asm
+ −
+ − .c.o:
+ − @echo Compiling $< ...
+ − @$(CC) -c $(CFLAGS) -o $@ $<
+ −
+ − .asm.o:
+ − @echo Assembling $< ...
+ − @$(NASM) $< -o $@
+ −
+ − all: $(TARGET) decimal
+ −
+ − $(TARGET): $(OBJECTS)
+ − @echo Linking $(OBJECTS) ...
+ − @$(CC) $(LDFLAGS) $(OBJECTS) -o $@
+ −
+ − decimal: decimal.o
+ − $(CC) $(CFLAGS) -o $@ $<
+ −
+ − .PHONY: clean uninstall
+ −
+ − clean:
+ − rm -f $(TARGET) decimal *.o *~
+ −
+ − install: $(TARGET) decimal
+ − install -d ~/bin
+ − install $(TARGET) decimal ~/bin
+ −
+ − uninstall:
+ − rm -f ~/bin/decimal
+ − rm -f ~/bin/$(TARGET)