2022-12-23 22:00:33 +00:00
|
|
|
CFLAGS = -std=c99 -Wall -Ofast -ffast-math -fvisibility=hidden -fno-common
|
2023-10-06 17:29:36 +00:00
|
|
|
|
2023-09-30 11:49:58 +00:00
|
|
|
LIBS = -framework Carbon \
|
2023-10-06 17:29:36 +00:00
|
|
|
-framework AppKit \
|
|
|
|
-framework CoreAudio \
|
|
|
|
-framework CoreWLAN \
|
|
|
|
-framework CoreVideo \
|
|
|
|
-framework IOKit \
|
|
|
|
-F/System/Library/PrivateFrameworks \
|
|
|
|
-framework SkyLight \
|
|
|
|
-framework DisplayServices \
|
|
|
|
-framework MediaRemote
|
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
ODIR = bin
|
|
|
|
SRC = src
|
2020-03-29 10:22:38 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
_OBJ = alias.o background.o bar_item.o custom_events.o event.o graph.o \
|
2023-10-06 17:29:36 +00:00
|
|
|
image.o mouse.o shadow.o font.o text.o message.o mouse.o bar.o color.o \
|
|
|
|
window.o bar_manager.o display.o group.o mach.o popup.o \
|
|
|
|
animation.o workspace.om volume.o slider.o power.o wifi.om media.om \
|
2023-11-12 18:56:28 +00:00
|
|
|
hotload.o app_windows.o
|
2023-07-18 14:36:35 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
OBJ = $(patsubst %, $(ODIR)/%, $(_OBJ))
|
2020-03-29 10:22:38 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
.PHONY: all clean arm x86 profile leak universal
|
2020-03-29 10:22:38 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
all: clean universal
|
2021-09-27 16:31:47 +00:00
|
|
|
|
2022-12-23 22:00:33 +00:00
|
|
|
leak: CFLAGS=-std=c99 -Wall -g
|
2022-03-20 21:16:38 +00:00
|
|
|
leak: clean arm64
|
|
|
|
leak:
|
|
|
|
/usr/libexec/PlistBuddy -c "Add :com.apple.security.get-task-allow bool true" bin/tmp.entitlements
|
|
|
|
codesign -s - --entitlements bin/tmp.entitlements -f ./bin/sketchybar
|
|
|
|
leaks -atExit -- ./bin/sketchybar
|
2021-09-27 16:31:47 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
x86: CFLAGS+=-target x86_64-apple-macos10.13
|
|
|
|
x86: $(ODIR)/sketchybar
|
2021-08-18 21:14:27 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
arm64: CFLAGS+=-target arm64-apple-macos11
|
|
|
|
arm64: $(ODIR)/sketchybar
|
2021-09-01 11:22:39 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
universal:
|
|
|
|
$(MAKE) x86
|
|
|
|
mv $(ODIR)/sketchybar $(ODIR)/sketchybar_x86
|
|
|
|
rm -rf $(ODIR)/*.o*
|
|
|
|
$(MAKE) arm64
|
|
|
|
mv $(ODIR)/sketchybar $(ODIR)/sketchybar_arm64
|
|
|
|
lipo -create -output $(ODIR)/sketchybar $(ODIR)/sketchybar_x86 $(ODIR)/sketchybar_arm64
|
2021-10-02 22:48:25 +00:00
|
|
|
|
2022-12-23 22:00:33 +00:00
|
|
|
debug: CFLAGS=-std=c99 -Wall -g
|
2022-03-24 19:33:14 +00:00
|
|
|
debug: arm64
|
|
|
|
|
2022-12-23 22:00:33 +00:00
|
|
|
asan: CFLAGS=-std=c99 -Wall -g -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer
|
2022-03-24 19:33:14 +00:00
|
|
|
asan: clean arm64
|
2022-03-20 21:16:38 +00:00
|
|
|
./bin/sketchybar
|
2021-12-25 19:45:06 +00:00
|
|
|
|
2023-06-28 20:49:01 +00:00
|
|
|
$(ODIR)/sketchybar: $(SRC)/sketchybar.c $(OBJ) | $(ODIR)
|
2022-03-20 21:16:38 +00:00
|
|
|
$(CC) $(CFLAGS) $^ -o $@ $(LIBS)
|
2021-12-25 19:45:06 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
$(ODIR)/%.o: $(SRC)/%.c $(SRC)/%.h | $(ODIR)
|
|
|
|
$(CC) -c -o $@ $< $(CFLAGS)
|
2021-09-01 10:08:06 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
$(ODIR)/%.om: $(SRC)/%.m $(SRC)/%.h | $(ODIR)
|
|
|
|
$(CC) -c -o $@ $< $(CFLAGS)
|
2021-09-26 12:50:17 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
$(ODIR):
|
|
|
|
mkdir $(ODIR)
|
2021-09-26 12:50:17 +00:00
|
|
|
|
2022-03-20 21:16:38 +00:00
|
|
|
clean:
|
|
|
|
rm -rf $(ODIR)
|