+ifeq "$(PLATFORM)" "opendingux"
+opk: $(TARGET).opk
+
+$(TARGET).opk: $(TARGET)
+ $(RM) -rf .opk_data
+ cp -r platform/opendingux/data .opk_data
+ cp $< .opk_data/PicoDrive
+ $(STRIP) .opk_data/PicoDrive
+ mksquashfs .opk_data $@ -all-root -noappend -no-exports -no-xattrs
+
+OBJS += platform/opendingux/inputmap.o
+
+# OpenDingux is a generic platform, really.
+PLATFORM := generic
+endif
+ifeq "$(PLATFORM)" "generic"
+OBJS += platform/linux/emu.o platform/linux/blit.o # FIXME
+OBJS += platform/common/plat_sdl.o
+OBJS += platform/libpicofe/plat_sdl.o platform/libpicofe/in_sdl.o
+OBJS += platform/libpicofe/plat_dummy.o
+USE_FRONTEND = 1
+endif
+ifeq "$(PLATFORM)" "pandora"
+platform/common/menu_pico.o: CFLAGS += -DPANDORA
+platform/libpicofe/linux/plat.o: CFLAGS += -DPANDORA
+OBJS += platform/pandora/plat.o
+OBJS += platform/pandora/asm_utils.o
+OBJS += platform/common/arm_utils.o
+OBJS += platform/libpicofe/linux/fbdev.o
+OBJS += platform/libpicofe/linux/xenv.o
+OBJS += platform/libpicofe/pandora/plat.o
+USE_FRONTEND = 1
+endif
+ifeq "$(PLATFORM)" "gp2x"
+OBJS += platform/common/arm_utils.o
+OBJS += platform/libpicofe/gp2x/in_gp2x.o
+OBJS += platform/libpicofe/gp2x/soc.o
+OBJS += platform/libpicofe/gp2x/soc_mmsp2.o
+OBJS += platform/libpicofe/gp2x/soc_pollux.o
+OBJS += platform/libpicofe/gp2x/plat.o
+OBJS += platform/libpicofe/gp2x/pollux_set.o
+OBJS += platform/gp2x/940ctl.o
+OBJS += platform/gp2x/plat.o
+OBJS += platform/gp2x/emu.o
+OBJS += platform/gp2x/vid_mmsp2.o
+OBJS += platform/gp2x/vid_pollux.o
+OBJS += platform/gp2x/warm.o
+USE_FRONTEND = 1
+PLATFORM_MP3 = 1
+endif
+ifeq "$(PLATFORM)" "libretro"
+OBJS += platform/libretro.o
+endif
+
+ifeq "$(USE_FRONTEND)" "1"
+