diff --git a/Makefile b/Makefile index b6264b058ba11d67ac905ac6e75f756cd7748d69..12f9c1fbd28ac6870b5ffbbaed08b24af00ff37d 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,22 @@ +UNAME_S := $(shell uname -s) + +ifeq ($(UNAME_S),Linux) + LLVM_PREFIX := /usr/lib/llvm/21 +endif +ifeq ($(UNAME_S),Darwin) + LLVM_PREFIX := /System/Volumes/Data/opt/homebrew/Cellar/llvm/21.1.8 +endif + +CXXFLAGS := -I$(LLVM_PREFIX)/include -std=c++17 +LDFLAGS := -L$(LLVM_PREFIX)/lib -Wl,-rpath,$(LLVM_PREFIX)/lib -llldb + all: tdbg example tdbg: tdbg.cpp - clang++ tdbg.cpp -o tdbg -I/usr/lib/llvm/21/include -L/usr/lib/llvm/21/lib -Wl,-rpath,/usr/lib/llvm/21/lib -llldb -std=c++17 + clang++ tdbg.cpp -o tdbg $(CXXFLAGS) $(LDFLAGS) example: example.c clang -g -o example example.c + +clean: + rm -f tdbg example diff --git a/tdbg.cpp b/tdbg.cpp index 2c6e9d408bddb758360b01fe8c2b912f9dfdff76..572cce96205bdff6c7327bd46c99c401d03e6eac 100644 --- a/tdbg.cpp +++ b/tdbg.cpp @@ -721,9 +721,10 @@ } } } else if (ev.type == TB_EVENT_MOUSE) { int main_window_height = tb_height() - LOG_WINDOW_HEIGHT - STATUS_WINDOW_HEIGHT; + + // Log window scrolling int log_start_y = main_window_height; int log_end_y = tb_height() - STATUS_WINDOW_HEIGHT; - if (ev.y >= log_start_y && ev.y < log_end_y) { if (ev.key == TB_KEY_MOUSE_WHEEL_UP) { int max_scroll = std::max(0, (int)log_buffer.size() - (LOG_WINDOW_HEIGHT - 2));