# Compiler
CC := dcc

# Compiler flags
CFLAGS :=

# Find all .c files in the current directory
SOURCES := $(wildcard *.c)
SOURCES := $(filter-out print_bits.c, $(SOURCES))

# Derive executable names by removing the .c extension from source files
EXECUTABLES := $(SOURCES:.c=)

# Default target
all: $(EXECUTABLES)

# Rule to compile each source file into its own executable
%: %.c
	$(CC) $(CFLAGS) $< print_bits.c -o $@

# Clean target
clean:
	rm -f $(EXECUTABLES)

# PHONY targets
.PHONY: all clean
