commit 85e997142da429c02ed7e9ae48cc9f3a661a1ae1
parent f0bf30fb99d595c5740601f6d8d34c614148109d
Auteur: Loïc Daignault-Pichette <loic@asteride.xyz>
Date: Fri, 7 Jun 2024 14:04:45 -0400
inclusion manuelle dans aplat.c de general.c
Diffstat:
4 files changed, 17 insertions(+), 62 deletions(-)
diff --git a/Makefile b/Makefile
@@ -14,8 +14,8 @@ include config.mk
all: aplat
-aplat: aplat.o general.o
- ${CC} ${COPTS} ${LDOPTS} -o "$@" aplat.o general.o ${BIBS}
+aplat: aplat.o
+ ${CC} ${COPTS} ${LDOPTS} -o "$@" aplat.o ${BIBS}
clean:
rm -rf *.o *.core
diff --git a/aplat.c b/aplat.c
@@ -10,9 +10,10 @@
#include <libintl.h>
#include <locale.h>
-#include "general.h"
#include "coroutines.h"
+#define _(c) gettext(c)
+
#define TP_ETQ_TLL 128
#define TP_CTN_TLL 256
@@ -54,14 +55,23 @@ struct tampon tp_ctn;
int
main(int argc, char **argv)
{
- nom_prog = nom_prog_trouver(argv, "aplat");
+ /* trouver le nom du programme */
+ if ((nom_prog = *argv) == NULL || *nom_prog == '\0')
+ nom_prog = "aplat";
- if (i18n_init() < 0)
- return 1;
+ setlocale(LC_ALL, "");
+ bindtextdomain(I18N_DOMAINE, I18N_DOS);
+ textdomain(I18N_DOMAINE);
#ifdef __OpenBSD__
- if (pledge("stdio rpath", NULL) < 0)
+ if (unveil(I18N_DOS, "r") < 0 ||
+ unveil("/usr/share/locale/UTF-8/LC_CTYPE", "r") < 0) {
+ fprintf(stderr, _("%s: erreur avec unveil()\n"), nom_prog);
+ }
+ if (pledge("stdio rpath", NULL) < 0) {
+ fprintf(stderr, _("%s: erreur avec pledge()\n"), nom_prog);
return 1;
+ }
#endif
if (argc == 2 && argv[1][0] == '-' && argv[1][1] == 'V'
diff --git a/general.c b/general.c
@@ -1,46 +0,0 @@
-#include <assert.h>
-#include <stdio.h>
-
-/* L'appel système unveil(2) n'est présent que sur OpenBSD. */
-#ifdef __OpenBSD__
-#include <unistd.h>
-#endif
-
-/* Bibliothèques pour l'internationalisation. */
-#include <libintl.h>
-#include <locale.h>
-
-#include "general.h"
-
-extern char *nom_prog;
-
-char *
-nom_prog_trouver(char **argv, char *defaut)
-{
- char *nom;
-
- assert(argv);
- assert(defaut);
-
- if ((nom = *argv) == NULL || *nom == '\0')
- return defaut;
- return nom;
-}
-
-int
-i18n_init(void)
-{
- setlocale(LC_ALL, "");
- bindtextdomain(I18N_DOMAINE, I18N_DOS);
- textdomain(I18N_DOMAINE);
-
-#ifdef __OpenBSD__
- if (unveil(I18N_DOS, "r") < 0 ||
- unveil("/usr/share/locale/UTF-8/LC_CTYPE", "r") < 0) {
- fprintf(stderr, _("%s: erreur avec unveil()\n"), nom_prog);
- return -1;
- }
-#endif
-
- return 0;
-}
diff --git a/general.h b/general.h
@@ -1,9 +0,0 @@
-#ifndef GENERAL_H
-#define GENERAL_H
-
-#define _(c) gettext(c)
-
-char *nom_prog_trouver(char **argv, char *defaut);
-int i18n_init(void);
-
-#endif