1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-13 03:29:36 +00:00

use own naive bdiff tool instead of diff/fc

This commit is contained in:
mrdudz 2014-11-24 20:57:58 +01:00
parent a0a03e5f73
commit 8a558a7cef
4 changed files with 52 additions and 7 deletions

View File

@ -3,9 +3,26 @@
MAKE := make --no-print-dir
.PHONY: all clean
ifneq ($(shell echo),)
CMD_EXE = 1
endif
all:
ifdef CMD_EXE
RM := del /f
EXE := .exe
else
RM := rm -f
EXE :=
endif
.PHONY: dotests clean
all: dotests
bdiff:
@$(CC) -o bdiff$(EXE) bdiff.c
dotests: bdiff
@$(MAKE) -C val clean all
@$(MAKE) -C ref clean all
@$(MAKE) -C err clean all
@ -16,4 +33,4 @@ clean:
@$(MAKE) -C ref clean
@$(MAKE) -C err clean
@$(MAKE) -C misc clean
@$(RM) bdiff$(EXE)

28
test/bdiff.c Normal file
View File

@ -0,0 +1,28 @@
// minimal tool to compare two binaries
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char *argv[])
{
FILE *f1, *f2;
if (argc < 3) {
return EXIT_FAILURE;
}
f1 = fopen(argv[1], "rb");
f2 = fopen(argv[2], "rb");
if ((f1 == NULL) || (f2 == NULL)) {
return EXIT_FAILURE;
}
for(;;) {
if (feof(f1) && feof(f2)) {
return EXIT_SUCCESS;
} else if (feof(f1) || feof(f2)) {
return EXIT_FAILURE;
}
if (fgetc(f1) != fgetc(f2)) {
return EXIT_FAILURE;
}
}
}

View File

@ -13,12 +13,12 @@ SIM65 := $(if $(wildcard ../../bin/sim65*),../../bin/sim65,sim65)
ifdef CMD_EXE
RM := del /f
DIFF := fc
else
RM := rm -f
DIFF := diff -q
endif
DIFF := ./../bdiff
.PHONY: all clean
TESTS := $(patsubst %.c,%.prg,$(wildcard *.c))

View File

@ -14,12 +14,12 @@ SIM65 := $(if $(wildcard ../../bin/sim65*),../../bin/sim65,sim65)
ifdef CMD_EXE
RM := del /f
DIFF := fc
else
RM := rm -f
DIFF := diff -q
endif
DIFF := ./../bdiff
CFLAGS := -O2 -Wall -W -Wextra -fwrapv -fno-strict-overflow
.PHONY: all clean