• R/O
  • HTTP
  • SSH
  • HTTPS

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

L3 Disk Explorer is an application in order to access to files in a floppy disk image for retro computer and operating system.


File Info

Rev. 857db820194c3d92db706bb2e191800d3827f7f1
Tamaño 10,109 octetos
Tiempo 2023-07-08 01:10:27
Autor Sasaji
Log Message

Version 0.6.3 Release

Content

#
# for Windows + MSYS2 + MinGW
#
CC=g++

CDEFS=
DBG_CDEFS=-D_DEBUG -D_DEBUG_LOG


#ARCH=-m32
#ARCH=-m64

WXDIR=/D/Devel/sources/wxWidgets-3.1.3
WXCONFIG_SH=wx-config
# WXCONFIG_ST=wx-config
WXCONFIG_ST=$(WXDIR)/build_release_static_unicode_x64/wx-config
WXCONFIG_DBG=$(WXDIR)/build_debug_static_unicode_x64/wx-config

SH_INCLUDES=$(shell $(WXCONFIG_SH) --cppflags)
ST_INCLUDES=$(shell $(WXCONFIG_ST) --cppflags)
DBG_INCLUDES=$(shell $(WXCONFIG_DBG) --cppflags)

SH_CFLAGS=$(ARCH) -Wall -O2 $(SH_INCLUDES)
ST_CFLAGS=$(ARCH) -Wall -O2 $(ST_INCLUDES)
DBG_CFLAGS=$(ARCH) -g -Wall -O0 $(DBG_INCLUDES)

LD=g++

SH_LDFLAGS=$(shell $(WXCONFIG_SH) --libs)
ST_LDFLAGS=-static $(shell $(WXCONFIG_ST) --libs --static)
DBG_LDFLAGS=-static $(shell $(WXCONFIG_DBG) --libs --static)

EXEFILE=l3diskex.exe

BUILDDIR=./build_msys2
SH_BUILDDIR=$(BUILDDIR)/shared
ST_BUILDDIR=$(BUILDDIR)/static
DBG_BUILDDIR=$(BUILDDIR)/debug

RELEASEDIR=./ReleaseM
DEBUGDIR=./DebugM

SRCDIR=src
SRCBASICFMTDIR=$(SRCDIR)/basicfmt
SRCDISKIMGDIR=$(SRCDIR)/diskimg
SRCUIDIR=$(SRCDIR)/ui

LANGDIR=lang
SRCLANG=$(LANGDIR)/

DATADIR=data
SRCDATA=$(DATADIR)/

OBJS=	$(SRCDIR)/utils.o \
	$(SRCDIR)/common.o \
	$(SRCDIR)/diskd88.o \
	$(SRCDIR)/diskparam.o \
	$(SRCDIR)/charcodes.o \
	$(SRCDIR)/config.o \
	$(SRCDIR)/logging.o \
	$(SRCDIR)/result.o \
	$(SRCBASICFMTDIR)/basiccommon.o \
	$(SRCBASICFMTDIR)/basicparam.o \
	$(SRCBASICFMTDIR)/basicerror.o \
	$(SRCBASICFMTDIR)/basictype.o \
	$(SRCBASICFMTDIR)/basictype_fat_base.o \
	$(SRCBASICFMTDIR)/basictype_fat8.o \
	$(SRCBASICFMTDIR)/basictype_fat12.o \
	$(SRCBASICFMTDIR)/basictype_fat16.o \
	$(SRCBASICFMTDIR)/basictype_fm.o \
	$(SRCBASICFMTDIR)/basictype_l31s.o \
	$(SRCBASICFMTDIR)/basictype_l32d.o \
	$(SRCBASICFMTDIR)/basictype_msdos.o \
	$(SRCBASICFMTDIR)/basictype_msx.o \
	$(SRCBASICFMTDIR)/basictype_mz_base.o \
	$(SRCBASICFMTDIR)/basictype_mz.o \
	$(SRCBASICFMTDIR)/basictype_n88.o \
	$(SRCBASICFMTDIR)/basictype_x1hu.o \
	$(SRCBASICFMTDIR)/basictype_flex.o \
	$(SRCBASICFMTDIR)/basictype_os9.o \
	$(SRCBASICFMTDIR)/basictype_cpm.o \
	$(SRCBASICFMTDIR)/basictype_tfdos.o \
	$(SRCBASICFMTDIR)/basictype_cdos.o \
	$(SRCBASICFMTDIR)/basictype_mz_fdos.o \
	$(SRCBASICFMTDIR)/basictype_pa.o \
	$(SRCBASICFMTDIR)/basictype_fp.o \
	$(SRCBASICFMTDIR)/basictype_dos80.o \
	$(SRCBASICFMTDIR)/basictype_frost.o \
	$(SRCBASICFMTDIR)/basictype_magical.o \
	$(SRCBASICFMTDIR)/basictype_sdos.o \
	$(SRCBASICFMTDIR)/basictype_mdos.o \
	$(SRCBASICFMTDIR)/basictype_smc.o \
	$(SRCBASICFMTDIR)/basictype_xdos.o \
	$(SRCBASICFMTDIR)/basictype_hu68k.o \
	$(SRCBASICFMTDIR)/basictype_falcom.o \
	$(SRCBASICFMTDIR)/basictype_apledos.o \
	$(SRCBASICFMTDIR)/basictype_prodos.o \
	$(SRCBASICFMTDIR)/basictype_c1541.o \
	$(SRCBASICFMTDIR)/basictype_amiga.o \
	$(SRCBASICFMTDIR)/basictype_m68fdos.o \
	$(SRCBASICFMTDIR)/basictype_trsdos.o \
	$(SRCBASICFMTDIR)/basicfat.o \
	$(SRCBASICFMTDIR)/basicdiritem_fat8.o \
	$(SRCBASICFMTDIR)/basicdiritem_fm.o \
	$(SRCBASICFMTDIR)/basicdiritem_l31s.o \
	$(SRCBASICFMTDIR)/basicdiritem_l32d.o \
	$(SRCBASICFMTDIR)/basicdiritem_msdos.o \
	$(SRCBASICFMTDIR)/basicdiritem_msx.o \
	$(SRCBASICFMTDIR)/basicdiritem_mz_base.o \
	$(SRCBASICFMTDIR)/basicdiritem_mz.o \
	$(SRCBASICFMTDIR)/basicdiritem_n88.o \
	$(SRCBASICFMTDIR)/basicdiritem_x1hu.o \
	$(SRCBASICFMTDIR)/basicdiritem_flex.o \
	$(SRCBASICFMTDIR)/basicdiritem_os9.o \
	$(SRCBASICFMTDIR)/basicdiritem_cpm.o \
	$(SRCBASICFMTDIR)/basicdiritem_tfdos.o \
	$(SRCBASICFMTDIR)/basicdiritem_cdos.o \
	$(SRCBASICFMTDIR)/basicdiritem_mz_fdos.o \
	$(SRCBASICFMTDIR)/basicdiritem_fp.o \
	$(SRCBASICFMTDIR)/basicdiritem_dos80.o \
	$(SRCBASICFMTDIR)/basicdiritem_frost.o \
	$(SRCBASICFMTDIR)/basicdiritem_magical.o \
	$(SRCBASICFMTDIR)/basicdiritem_sdos.o \
	$(SRCBASICFMTDIR)/basicdiritem_mdos.o \
	$(SRCBASICFMTDIR)/basicdiritem_xdos.o \
	$(SRCBASICFMTDIR)/basicdiritem_hu68k.o \
	$(SRCBASICFMTDIR)/basicdiritem_losa.o \
	$(SRCBASICFMTDIR)/basicdiritem_falcom.o \
	$(SRCBASICFMTDIR)/basicdiritem_apledos.o \
	$(SRCBASICFMTDIR)/basicdiritem_prodos.o \
	$(SRCBASICFMTDIR)/basicdiritem_c1541.o \
	$(SRCBASICFMTDIR)/basicdiritem_amiga.o \
	$(SRCBASICFMTDIR)/basicdiritem_m68fdos.o \
	$(SRCBASICFMTDIR)/basicdiritem_trsdos.o \
	$(SRCBASICFMTDIR)/basicdiritem.o \
	$(SRCBASICFMTDIR)/basicdir.o \
	$(SRCBASICFMTDIR)/basicfmt.o \
	$(SRCDISKIMGDIR)/diskd88creator.o \
	$(SRCDISKIMGDIR)/diskplainparser.o \
	$(SRCDISKIMGDIR)/diskd88parser.o \
	$(SRCDISKIMGDIR)/diskdskparser.o \
	$(SRCDISKIMGDIR)/diskfdiparser.o \
	$(SRCDISKIMGDIR)/diskcqmparser.o \
	$(SRCDISKIMGDIR)/disktd0parser.o \
	$(SRCDISKIMGDIR)/diskdimparser.o \
	$(SRCDISKIMGDIR)/diskvfdparser.o \
	$(SRCDISKIMGDIR)/diskimdparser.o \
	$(SRCDISKIMGDIR)/diskstrparser.o \
	$(SRCDISKIMGDIR)/diskg64parser.o \
	$(SRCDISKIMGDIR)/disk2mgparser.o \
	$(SRCDISKIMGDIR)/diskadcparser.o \
	$(SRCDISKIMGDIR)/diskhfeparser.o \
	$(SRCDISKIMGDIR)/diskdmkparser.o \
	$(SRCDISKIMGDIR)/diskjv3parser.o \
	$(SRCDISKIMGDIR)/diskparser.o \
	$(SRCDISKIMGDIR)/diskd88writer.o \
	$(SRCDISKIMGDIR)/diskplainwriter.o \
	$(SRCDISKIMGDIR)/diskwriter.o \
	$(SRCDISKIMGDIR)/diskresult.o \
	$(SRCDISKIMGDIR)/fileparam.o \
	$(SRCUIDIR)/basicselbox.o \
	$(SRCUIDIR)/basicparambox.o \
	$(SRCUIDIR)/configbox.o \
	$(SRCUIDIR)/diskparambox.o \
	$(SRCUIDIR)/diskreplacebox.o \
	$(SRCUIDIR)/fileselbox.o \
	$(SRCUIDIR)/fontminibox.o \
	$(SRCUIDIR)/intnamebox.o \
	$(SRCUIDIR)/intnamevalid.o \
	$(SRCUIDIR)/rawparambox.o \
	$(SRCUIDIR)/rawexpbox.o \
	$(SRCUIDIR)/rawsectorbox.o \
	$(SRCUIDIR)/rawtrackbox.o \
	$(SRCUIDIR)/uibindump.o \
	$(SRCUIDIR)/uiclistctrl.o \
	$(SRCUIDIR)/uicdlistctrl.o \
	$(SRCUIDIR)/uictreectrl.o \
	$(SRCUIDIR)/uicdtreectrl.o \
	$(SRCUIDIR)/uidiskattr.o \
	$(SRCUIDIR)/uidisklist.o \
	$(SRCUIDIR)/uifilelist.o \
	$(SRCUIDIR)/uirawdisk.o \
	$(SRCUIDIR)/uifatarea.o \
	$(SRCUIDIR)/uirpanel.o \
	$(SRCDIR)/main.o

RESOBJS=$(SRCDIR)/l3diskex.res

EXE =$(BUILDDIR)/$(EXEFILE)
SH_EXE=$(SH_BUILDDIR)/$(EXEFILE)
ST_EXE=$(ST_BUILDDIR)/$(EXEFILE)
DBG_EXE=$(DBG_BUILDDIR)/$(EXEFILE)

SH_OBJS=$(OBJS:%=$(SH_BUILDDIR)/%) $(RESOBJS:%=$(SH_BUILDDIR)/%)
ST_OBJS=$(OBJS:%=$(ST_BUILDDIR)/%) $(RESOBJS:%=$(ST_BUILDDIR)/%)
DBG_OBJS=$(OBJS:%=$(DBG_BUILDDIR)/%) $(RESOBJS:%=$(DBG_BUILDDIR)/%)

SH_DEPS=$(OBJS:%.o=$(SH_BUILDDIR)/%.d)
ST_DEPS=$(OBJS:%.o=$(ST_BUILDDIR)/%.d)
DBG_DEPS=$(OBJS:%.o=$(DBG_BUILDDIR)/%.d)

LIBS=$(LOCALLIBS) $(MINGWLIBS)
SH_LIBS=
ST_LIBS=$(LIBS)
DBG_LIBS=$(LIBS)

WINDRES=windres.exe

#
#
#

all: sh_exe

sh_exe: mk_sh_builddir $(SH_EXE)

st_exe: mk_st_builddir $(ST_EXE)

dbg_exe: mk_dbg_builddir $(DBG_EXE)

$(SH_EXE): sh_depend $(SH_OBJS)
	$(LD) -o $@ $(SH_OBJS) $(SH_LIBS) $(SH_LDFLAGS)

$(ST_EXE): st_depend $(ST_OBJS)
	$(LD) -o $@ $(ST_OBJS) $(ST_LIBS) $(ST_LDFLAGS)

$(DBG_EXE): dbg_depend $(DBG_OBJS)
	$(LD) -o $@ $(DBG_OBJS) $(DBG_LIBS) $(DBG_LDFLAGS)

$(SH_BUILDDIR)/%.o: %.cpp
	$(CC) $(CDEFS) $(SH_CFLAGS) -c $< -o $@

$(ST_BUILDDIR)/%.o: %.cpp
	$(CC) $(CDEFS) $(ST_CFLAGS) -c $< -o $@

$(DBG_BUILDDIR)/%.o: %.cpp
	$(CC) $(DBG_CDEFS) $(DBG_CFLAGS) -c $< -o $@

# $(SRCDIR)/%_tmp.cpp: %.cpp
#	sed '1 s/^...//' $< > $@

$(SH_BUILDDIR)/%.res: %.rc
	$(WINDRES) $< $(SH_INCLUDES) -O coff -o $@

$(ST_BUILDDIR)/%.res: %.rc
	$(WINDRES) $< $(ST_INCLUDES) -O coff -o $@

$(DBG_BUILDDIR)/%.res: %.rc
	$(WINDRES) $< $(DBG_INCLUDES) -O coff -o $@

install: sh_install

sh_install: sh_exe
	mkdir -p $(RELEASEDIR)
	cp -p $(SH_EXE) $(RELEASEDIR)
	(mkdir -p $(RELEASEDIR)/$(DATADIR)/; cp -p $(SRCDATA)/*.* $(RELEASEDIR)/$(DATADIR)/; exit 0)
	for i in $(SRCLANG)/* ;do if [ -d $$i ]; then \
		mkdir -p $(RELEASEDIR)/$$i; cp -p $$i/*.mo $(RELEASEDIR)/$$i; \
	fi; done

st_install: st_exe
	mkdir -p $(RELEASEDIR)
	cp -p $(ST_EXE) $(RELEASEDIR)
	(mkdir -p $(RELEASEDIR)/$(DATADIR)/; cp -p $(SRCDATA)/*.* $(RELEASEDIR)/$(DATADIR)/; exit 0)
	for i in $(SRCLANG)/* ;do if [ -d $$i ]; then \
		mkdir -p $(RELEASEDIR)/$$i; cp -p $$i/*.mo $(RELEASEDIR)/$$i; \
	fi; done

dbg_install: dbg_exe
	mkdir -p $(DEBUGDIR)
	cp -p $(DBG_EXE) $(DEBUGDIR)
	(mkdir -p $(DEBUGDIR)/$(DATADIR)/; cp -p $(SRCDATA)/*.* $(DEBUGDIR)/$(DATADIR)/; exit 0)
	for i in $(SRCLANG)/* ;do if [ -d $$i ]; then \
		mkdir -p $(DEBUGDIR)/$$i; cp -p $$i/*.mo $(DEBUGDIR)/$$i; \
	fi; done

mk_builddir:
	mkdir -p $(BUILDDIR)/$(SRCDIR)
	mkdir -p $(BUILDDIR)/$(SRCBASICFMTDIR)
	mkdir -p $(BUILDDIR)/$(SRCDISKIMGDIR)
	mkdir -p $(BUILDDIR)/$(SRCUIDIR)

mk_sh_builddir:
	mkdir -p $(SH_BUILDDIR)/$(SRCDIR)
	mkdir -p $(SH_BUILDDIR)/$(SRCBASICFMTDIR)
	mkdir -p $(SH_BUILDDIR)/$(SRCDISKIMGDIR)
	mkdir -p $(SH_BUILDDIR)/$(SRCUIDIR)

mk_st_builddir:
	mkdir -p $(ST_BUILDDIR)/$(SRCDIR)
	mkdir -p $(ST_BUILDDIR)/$(SRCBASICFMTDIR)
	mkdir -p $(ST_BUILDDIR)/$(SRCDISKIMGDIR)
	mkdir -p $(ST_BUILDDIR)/$(SRCUIDIR)

mk_dbg_builddir:
	mkdir -p $(DBG_BUILDDIR)/$(SRCDIR)
	mkdir -p $(DBG_BUILDDIR)/$(SRCBASICFMTDIR)
	mkdir -p $(DBG_BUILDDIR)/$(SRCDISKIMGDIR)
	mkdir -p $(DBG_BUILDDIR)/$(SRCUIDIR)

clean: sh_clean

sh_clean:
	rm -rf $(SH_BUILDDIR)
	rm -f $(BUILDDIR)/Makefile.dep

st_clean:
	rm -rf $(ST_BUILDDIR)
	rm -f $(BUILDDIR)/Makefile.dep

dbg_clean:
	rm -rf $(DBG_BUILDDIR)
	rm -f $(BUILDDIR)/Makefile.dep

clean_all:
	rm -rf $(BUILDDIR)

depend: $(SH_BUILDDIR)/Makefile.dep

sh_depend: $(SH_BUILDDIR)/Makefile.dep

st_depend: $(ST_BUILDDIR)/Makefile.dep

dbg_depend: $(DBG_BUILDDIR)/Makefile.dep

$(SH_BUILDDIR)/Makefile.dep: mk_sh_builddir $(SH_DEPS)
	cat $(SH_DEPS) > $(SH_BUILDDIR)/Makefile.dep
	cp -f $(SH_BUILDDIR)/Makefile.dep $(BUILDDIR)/Makefile.dep

$(ST_BUILDDIR)/Makefile.dep: mk_st_builddir $(ST_DEPS)
	cat $(ST_DEPS) > $(ST_BUILDDIR)/Makefile.dep
	cp -f $(ST_BUILDDIR)/Makefile.dep $(BUILDDIR)/Makefile.dep

$(DBG_BUILDDIR)/Makefile.dep: mk_dbg_builddir $(DBG_DEPS)
	cat $(DBG_DEPS) > $(DBG_BUILDDIR)/Makefile.dep
	cp -f $(DBG_BUILDDIR)/Makefile.dep $(BUILDDIR)/Makefile.dep

$(SH_BUILDDIR)/%.d: %.cpp
	-$(CC) $(CDEFS) $(SH_CFLAGS) -MM $< | sed 's#^.*\.o:#$@:#' | sed 's/\.d:/.o:/' > $@

$(ST_BUILDDIR)/%.d: %.cpp
	-$(CC) $(CDEFS) $(ST_CFLAGS) -MM $< | sed 's#^.*\.o:#$@:#' | sed 's/\.d:/.o:/' > $@

$(DBG_BUILDDIR)/%.d: %.cpp
	-$(CC) $(CDEFS) $(DBG_CFLAGS) -MM $< | sed 's#^.*\.o:#$@:#' | sed 's/\.d:/.o:/' > $@

-include $(BUILDDIR)/Makefile.dep