From 573eb2630762b1336efaba3f0df4eec415970c20 Mon Sep 17 00:00:00 2001 From: Patrick McDermott Date: Mon, 15 Mar 2021 13:33:05 -0400 Subject: src/logging.[ch]: New files Copied from boukengine. --- (limited to 'src') diff --git a/src/local.mk b/src/local.mk index ba1cd3e..7576fee 100644 --- a/src/local.mk +++ b/src/local.mk @@ -1,2 +1,4 @@ dodge_balls_SOURCES += \ + %reldir%/logging.c \ + %reldir%/logging.h \ %reldir%/main.c diff --git a/src/logging.c b/src/logging.c new file mode 100644 index 0000000..69a5cc3 --- /dev/null +++ b/src/logging.c @@ -0,0 +1,61 @@ +/* + * Copyright (C) 2013 Patrick "P. J." McDermott + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program. If not, see + * . + */ + +#include +#include +#include +#include "init.h" +#include "logging.h" + +void +debug(const char *fmt, ...) +{ + va_list ap; + + printf("Debug: "); + va_start(ap, fmt); + vprintf(fmt, ap); + va_end(ap); + putchar('\n'); +} + +void +warn(const char *fmt, ...) +{ + va_list ap; + + printf("Warning: "); + va_start(ap, fmt); + vprintf(fmt, ap); + va_end(ap); + putchar('\n'); +} + +void +err(int status, const char *fmt, ...) +{ + va_list ap; + + printf("Error: "); + va_start(ap, fmt); + vprintf(fmt, ap); + va_end(ap); + putchar('\n'); + + quit(status); +} diff --git a/src/logging.h b/src/logging.h new file mode 100644 index 0000000..12c9b00 --- /dev/null +++ b/src/logging.h @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2013 Patrick "P. J." McDermott + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program. If not, see + * . + */ + +#ifndef LOGGING_H +#define LOGGING_H + +void debug(const char *fmt, ...); +void warn(const char *fmt, ...); +void err(int status, const char *fmt, ...); + +#endif -- cgit v0.9.1