1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-09-20 09:04:43 +00:00
QB64-PE/internal/c/parts/os/clipboard/build.mk

57 lines
1.6 KiB
Makefile
Raw Normal View History

2024-03-26 18:04:54 +00:00
# clip Setup:
# Download the latest release from https://github.com/dacap/clip
# Copy all source files except clip_none.cpp to internal/c/parts/os/clipboard/clip
2024-03-27 21:27:56 +00:00
# Compile the source using -DCLIP_ENABLE_IMAGE=1, -DHAVE_XCB_XLIB_H (Linux) and DHAVE_PNG_H (Linux)
2024-03-26 18:04:54 +00:00
CLIP_DEFS := -DCLIP_ENABLE_IMAGE=1
CLIP_SRCS := \
clip.cpp \
image.cpp
ifeq ($(OS),lnx)
CLIP_SRCS += clip_x11.cpp
2024-03-27 21:27:56 +00:00
CLIP_DEFS += -DHAVE_XCB_XLIB_H -DHAVE_PNG_H
CXXLIBS += -lpng
2024-03-26 18:04:54 +00:00
endif
ifeq ($(OS),win)
CLIP_SRCS += clip_win.cpp
endif
ifeq ($(OS),osx)
2024-03-27 03:38:34 +00:00
CLIP_OSX_SRCS := clip_osx.mm
2024-03-26 18:04:54 +00:00
endif
CLIPBOARD_SRCS := clipboard.cpp
CLIP_OBJS := $(patsubst %.cpp,$(PATH_INTERNAL_C)/parts/os/clipboard/clip/%.o,$(CLIP_SRCS))
2024-03-27 03:38:34 +00:00
ifeq ($(OS),osx)
CLIP_OBJS += $(patsubst %.mm,$(PATH_INTERNAL_C)/parts/os/clipboard/clip/%.o,$(CLIP_OSX_SRCS))
endif
2024-03-26 18:04:54 +00:00
CLIPBOARD_OBJS := $(patsubst %.cpp,$(PATH_INTERNAL_C)/parts/os/clipboard/%.o,$(CLIPBOARD_SRCS))
$(PATH_INTERNAL_C)/parts/os/clipboard/clip/%.o: $(PATH_INTERNAL_C)/parts/os/clipboard/clip/%.cpp
$(CXX) -O2 $(CXXFLAGS) $(CLIP_DEFS) -w $< -c -o $@
2024-03-27 03:38:34 +00:00
ifeq ($(OS),osx)
2024-03-26 18:04:54 +00:00
$(PATH_INTERNAL_C)/parts/os/clipboard/clip/%.o: $(PATH_INTERNAL_C)/parts/os/clipboard/clip/%.mm
$(CXX) -O2 $(CXXFLAGS) $(CLIP_DEFS) -w $< -c -o $@
2024-03-27 03:38:34 +00:00
endif
2024-03-26 18:04:54 +00:00
$(PATH_INTERNAL_C)/parts/os/clipboard/%.o: $(PATH_INTERNAL_C)/parts/os/clipboard/%.cpp
2024-03-27 03:38:34 +00:00
$(CXX) -O2 $(CXXFLAGS) $(CLIP_DEFS) -Wall -Wextra $< -c -o $@
2024-03-26 18:04:54 +00:00
CLIPBOARD_LIB := $(PATH_INTERNAL_C)/parts/os/clipboard/clipboard.a
$(CLIPBOARD_LIB): $(CLIP_OBJS) $(CLIPBOARD_OBJS)
$(AR) rcs $@ $(CLIP_OBJS) $(CLIPBOARD_OBJS)
EXE_LIBS += $(CLIPBOARD_LIB)
CLEAN_LIST += $(CLIPBOARD_LIB) $(CLIP_OBJS) $(CLIPBOARD_OBJS)
2024-03-27 21:27:56 +00:00