ifeq ($(OS),lnx) GAMEPAD_SRCS := Gamepad_linux.c Gamepad_private.c endif ifeq ($(OS),win) GAMEPAD_SRCS := Gamepad_windows_mm.c Gamepad_private.c endif ifeq ($(OS),osx) GAMEPAD_SRCS := Gamepad_macosx.c Gamepad_private.c endif GAMECONTROLLER_SRCS := game_controller.cpp GAMEPAD_OBJS := $(patsubst %.c,$(PATH_INTERNAL_C)/parts/input/game_controller/libstem_gamepad/%.o,$(GAMEPAD_SRCS)) GAMECONTROLLER_OBJS := $(patsubst %.cpp,$(PATH_INTERNAL_C)/parts/input/game_controller/%.o,$(GAMECONTROLLER_SRCS)) $(PATH_INTERNAL_C)/parts/input/game_controller/libstem_gamepad/%.o: $(PATH_INTERNAL_C)/parts/input/game_controller/libstem_gamepad/%.c $(CC) -O2 $(CFLAGS) -Wall $< -c -o $@ $(PATH_INTERNAL_C)/parts/input/game_controller/%.o: $(PATH_INTERNAL_C)/parts/input/game_controller/%.cpp $(CXX) -O2 $(CXXFLAGS) -Wall $< -c -o $@ QB_DEVICE_INPUT_LIB := $(PATH_INTERNAL_C)/parts/input/game_controller/game_controller.a $(QB_DEVICE_INPUT_LIB): $(GAMEPAD_OBJS) $(GAMECONTROLLER_OBJS) $(AR) rcs $@ $(GAMEPAD_OBJS) $(GAMECONTROLLER_OBJS) CLEAN_LIST += $(QB_DEVICE_INPUT_LIB) $(GAMEPAD_OBJS) $(GAMECONTROLLER_OBJS)