diff options
| author | Anser <rostgans@tutamail.com> | 2026-07-07 00:16:45 +0200 |
|---|---|---|
| committer | Anser <rostgans@tutamail.com> | 2026-07-31 11:12:27 +0200 |
| commit | 186b3f148107f8a3590f8de79a389e84b0005082 (patch) | |
| tree | 625770899babaa15a25193bd854a1ef87b1b8710 | |
| parent | 8ac7197b890e4e18fda8c5a4b8adb2228f0b7be5 (diff) | |
added cpu info.... but needs string parsing for whitespace
| -rw-r--r-- | Makefile | 4 | ||||
| -rw-r--r-- | src/cfetch.c | 2 | ||||
| -rw-r--r-- | src/modules/cpu/cpu.c | 36 | ||||
| -rw-r--r-- | src/modules/cpu/cpu.h | 8 | ||||
| -rw-r--r-- | src/modules/memory/memory.c | 1 |
5 files changed, 48 insertions, 3 deletions
@@ -1,8 +1,8 @@ -CC = gcc +CC = /usr/local/musl/bin/musl-gcc CFLAGS = -Wall -Wextra -Werror PREFIX ?= /usr/local -SRC = src/cfetch.c src/modules/os/os.c src/modules/memory/memory.c +SRC = src/cfetch.c src/modules/os/os.c src/modules/memory/memory.c src/modules/cpu/cpu.c all: cfetch diff --git a/src/cfetch.c b/src/cfetch.c index dd7094e..5870985 100644 --- a/src/cfetch.c +++ b/src/cfetch.c @@ -1,8 +1,10 @@ #include "modules/os/os.h" #include "modules/memory/memory.h" +#include "modules/cpu/cpu.h" int main(void) { os(); memory(); + cpu(); return 0; } diff --git a/src/modules/cpu/cpu.c b/src/modules/cpu/cpu.c new file mode 100644 index 0000000..c2d50f3 --- /dev/null +++ b/src/modules/cpu/cpu.c @@ -0,0 +1,36 @@ +#include <stdio.h> +#include <string.h> +#include "cpu.h" + +int cpu(void) { + FILE* file = fopen("/proc/cpuinfo", "r"); + + //check file existence + if (!file) { + perror("/proc/cpuinfo not found"); + return 1; + } + + char line[256]; + char *model_name = NULL; + + //read per line + while (fgets(line, sizeof(line), file)) { + char* p = strstr(line, "model name"); + + if (p != NULL) { + model_name = strchr(p, ':') + 1; //skip : + break; + } + } + + + if (model_name != NULL) { + printf("CPU: %s\n", model_name); + } else { + printf("CPU: Error model_name not found.\n"); + } + + fclose(file); + return 0; +} diff --git a/src/modules/cpu/cpu.h b/src/modules/cpu/cpu.h new file mode 100644 index 0000000..bff5794 --- /dev/null +++ b/src/modules/cpu/cpu.h @@ -0,0 +1,8 @@ +#include <stdio.h> + +#ifndef CPU_H +#define CPU_H + +int cpu(void); + +#endif // CPU_H diff --git a/src/modules/memory/memory.c b/src/modules/memory/memory.c index 58d40df..988e233 100644 --- a/src/modules/memory/memory.c +++ b/src/modules/memory/memory.c @@ -5,7 +5,6 @@ int memory(void) { FILE *file = fopen("/proc/meminfo", "r"); if (!file) { - fclose(file); perror("fopen"); return 1; } |
