From 79b8b969722bae65bab2d8423fb8ed7caf0f9438 Mon Sep 17 00:00:00 2001 From: toshinagata1964 Date: Fri, 16 Aug 2019 12:51:34 +0000 Subject: [PATCH] Xcode settings are restructured git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/molby/trunk@618 a2be9bc6-48de-4e38-9406-05402d4bc13c --- Makefile | 72 ++++---- build-win/Makefile | 3 +- build-win/molby.iss | 3 +- build-xcode/.svnignore | 2 +- build-xcode/Molby-Info.plist | 2 +- build-xcode/Molby.xcodeproj/.svnignore | 2 + build-xcode/Molby.xcodeproj/project.pbxproj | 191 ++++++++++++++++++--- .../UserInterfaceState.xcuserstate | Bin 48409 -> 62993 bytes .../xcschemes/Molby.xcscheme | 0 .../xcschemes/Molby_Archive.xcscheme | 12 +- .../xcschemes/Molby_command.xcscheme | 0 .../xcschemes/Molby_Windows.xcscheme | 80 --------- .../xcschemes/xcschememanagement.plist | 24 +-- build-xcode/buildInfo.c | 4 +- build-xcode/buildInfo.txt | 2 +- record_build_date.sh | 6 +- wxSources/RubyDialogFrame.cpp | 8 +- 17 files changed, 229 insertions(+), 182 deletions(-) rename build-xcode/Molby.xcodeproj/{xcuserdata/toshi_n.xcuserdatad => xcshareddata}/xcschemes/Molby.xcscheme (100%) rename build-xcode/Molby.xcodeproj/{xcuserdata/toshi_n.xcuserdatad => xcshareddata}/xcschemes/Molby_Archive.xcscheme (89%) rename build-xcode/Molby.xcodeproj/{xcuserdata/toshi_n.xcuserdatad => xcshareddata}/xcschemes/Molby_command.xcscheme (100%) delete mode 100644 build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby_Windows.xcscheme diff --git a/Makefile b/Makefile index faa0b82..9170dc7 100755 --- a/Makefile +++ b/Makefile @@ -1,40 +1,31 @@ -ifeq ($(TARGET_PLATFORM),MAC) - WX_DIR = $(PWD)/../../wxWidgets-3.0.0 - WX_LIB_DIR = $(WX_DIR)/osx-build/lib - WX_ARCH_DIR = $(WX_LIB_DIR)/wx/include/osx_cocoa-unicode-static-3.0 - WX_CPPFLAGS = -isystem $(WX_ARCH_DIR) -isystem $(WX_DIR)/include -D_FILE_OFFSET_BITS=64 -D__WXMAC__ -D__WXOSX__ -D__WXOSX_COCOA__ - WX_LDFLAGS = -L$(WX_LIB_DIR) -framework IOKit -framework Carbon -framework Cocoa -framework AudioToolbox -framework System -framework OpenGL -framework QuickTime -lwx_osx_cocoau-3.0 -lwx_osx_cocoau_gl-3.0 -framework WebKit -lwxregexu-3.0 -lwxtiff-3.0 -lwxjpeg-3.0 -lwxpng-3.0 -lz -lpthread -liconv - CPP_EXTRA_FLAGS = -isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5 -arch ppc -arch i386 -DUSE_RUBY=1 -g -isystem $(PWD)/../../fftw-3.3.2/osx-build/include - LD_EXTRA_FLAGS = -framework Accelerate -framework GLUT -L$(PWD)/../../fftw-3.3.2/osx-build/lib -lfftw3 - RUBY_DIR = $(PWD)/../../ruby-1.8.7-p160 - RUBY_CFLAGS = -isystem $(RUBY_DIR)/osx-build/include - RUBY_LDFLAGS = -L$(RUBY_DIR)/osx-build/lib -lruby-static -lenc -ltrans - EXECUTABLE = Molby - EXE_SUFFIX = -endif - ifeq ($(TARGET_PLATFORM),MSW) - ifneq ($(CROSS_COMPILE),) + ifeq ($(TARGET_ARCH),x86_64) + TOOL_PREFIX = x86_64-w64-mingw32- + MSW_BUILD = build-win + LIB_SUFFIX = -3.0-x86_64-w64-mingw32 + WINE_PATH=/Applications/EasyWine.app/Contents/Resources/wine/bin + else TOOL_PREFIX = i686-w64-mingw32- - CPP_EXTRA_FLAGS += -isystem /usr/local/mingw-w32/mingw/include - MSW_BUILD = mswx-build +# CPP_EXTRA_FLAGS += -isystem /usr/local/mingw-w32/mingw/include + MSW_BUILD = build-win32 LIB_SUFFIX = -3.0-i686-w64-mingw32 WINE_PATH=/Applications/EasyWine.app/Contents/Resources/wine/bin - else - MSW_BUILD = msw-build - LIB_SUFFIX = -3.0 endif - WX_DIR = $(PWD)/../../wxWidgets-3.0.0 + WX_DIR = $(PWD)/../../wxWidgets-3.0.3 WX_LIB_DIR = $(WX_DIR)/$(MSW_BUILD)/lib WX_ARCH_DIR = $(WX_LIB_DIR)/wx/include/$(TOOL_PREFIX)msw-unicode-static-3.0 WX_CPPFLAGS = -isystem $(WX_ARCH_DIR) -isystem $(WX_DIR)/include -D_LARGEFIILE_SOURCE=unknown -D__WXMSW__ WX_LDFLAGS = -L$(WX_LIB_DIR) -Wl,--subsystem,windows -mwindows -lwx_mswu_gl$(LIB_SUFFIX) -lopengl32 -lglu32 -lwx_mswu$(LIB_SUFFIX) -lwxregexu$(LIB_SUFFIX) -lwxexpat$(LIB_SUFFIX) -lwxtiff$(LIB_SUFFIX) -lwxjpeg$(LIB_SUFFIX) -lwxpng$(LIB_SUFFIX) -lwxzlib$(LIB_SUFFIX) -lrpcrt4 -loleaut32 -lole32 -luuid -lwinspool -lwinmm -lshell32 -lcomctl32 -lcomdlg32 -ladvapi32 -lwsock32 -lgdi32 CPP_EXTRA_FLAGS = -isystem $(PWD)/../../CLAPACK-3.1.1.1-mingw/INCLUDE -isystem $(PWD)/../../fftw-3.3.2/$(MSW_BUILD)/include -I$(PWD)/../MolLib - LD_EXTRA_FLAGS = -L$(PWD)/../../CLAPACK-3.1.1.1-mingw/$(MSW_BUILD)/lib -L$(PWD)/../../fftw-3.3.2/$(MSW_BUILD)/lib -llapackMinGW -lblasMinGW -lf2c_nomain -lfftw3 -static-libgcc -static-libstdc++ + LD_EXTRA_FLAGS = -L$(PWD)/../../CLAPACK-3.1.1.1-mingw/$(MSW_BUILD)/lib -L$(PWD)/../../fftw-3.3.2/$(MSW_BUILD)/lib -llapackMinGW -lblasMinGW -lf2c_nomain -lfftw3 -static-libgcc -static-libstdc++ -Wl,-Bstatic,-lpthread RUBY_DIR = $(PWD)/../../ruby-2.0.0-p353 - RUBY_CFLAGS = -isystem $(RUBY_DIR)/$(MSW_BUILD)/include/ruby-2.0.0 -I$(RUBY_DIR) -I$(RUBY_DIR)/$(MSW_BUILD)/include/ruby-2.0.0/i386-mingw32 -# RUBY_LDFLAGS = -L$(RUBY_DIR)/$(MSW_BUILD)/lib -lmsvcrt-ruby200-static -lmsvcrt-ruby200 -lws2_32 -lshlwapi -limagehlp -lenc -ltrans - RUBY_LDFLAGS = -L$(RUBY_DIR)/$(MSW_BUILD)/lib -lmsvcrt-ruby200-static -lws2_32 -lshlwapi -limagehlp -lenc -ltrans + ifeq ($(TARGET_ARCH),x86_64) + RUBY_CFLAGS = -isystem $(RUBY_DIR)/$(MSW_BUILD)/include/ruby-2.0.0 -I$(RUBY_DIR) -I$(RUBY_DIR)/$(MSW_BUILD)/include/ruby-2.0.0/x64-mingw32 + RUBY_LDFLAGS = -L$(RUBY_DIR)/$(MSW_BUILD)/lib -lx64-msvcrt-ruby200-static -lws2_32 -lshlwapi -limagehlp -lenc -ltrans + else + RUBY_CFLAGS = -isystem $(RUBY_DIR)/$(MSW_BUILD)/include/ruby-2.0.0 -I$(RUBY_DIR) -I$(RUBY_DIR)/$(MSW_BUILD)/include/ruby-2.0.0/i386-mingw32 + RUBY_LDFLAGS = -L$(RUBY_DIR)/$(MSW_BUILD)/lib -lmsvcrt-ruby200-static -lws2_32 -lshlwapi -limagehlp -lenc -ltrans + endif EXECUTABLE = _Molby.exe_ FINAL_EXECUTABLE = Molby.exe EXE_SUFFIX = .exe @@ -70,8 +61,8 @@ else endif MAKEDIR = $(PWD) DESTDIR = $(PWD)/$(DESTPREFIX) -CFLAGS = $(CPPFLAGS) $(COPT) $(CPP_EXTRA_FLAGS) $(RUBY_CFLAGS) $(WX_CPPFLAGS) -LDFLAGS = $(WX_LDFLAGS) $(LD_EXTRA_FLAGS) $(RUBY_LDFLAGS) +CFLAGS = $(CPPFLAGS) $(COPT) $(RUBY_CFLAGS) $(WX_CPPFLAGS) $(CPP_EXTRA_FLAGS) +LDFLAGS = $(WX_LDFLAGS) $(RUBY_LDFLAGS) $(LD_EXTRA_FLAGS) export CFLAGS export LDFLAGS export DESTDIR @@ -102,14 +93,16 @@ RESOURCE = molby_rc.o # The following HOMETEMP kludges are to work around a bug where '#include "..."' # does not work when the include path is on the C: drive whereas the source is # on the Z: drive. 2009.7.24. Toshi Nagata -HOMETEMP = $(HOME)/__molby_temp_build__ +# 2019.8.16. We no longer need this kludge +#HOMETEMP = $(HOME)/__molby_temp_build__ $(DESTPREFIX)/$(RESOURCE) : molby.rc - mkdir -p $(HOMETEMP)/$(MSW_BUILD) $(HOMETEMP)/bitmaps - cp molby.rc $(HOMETEMP)/$(MSW_BUILD) - cp ../bitmaps/*.ico $(HOMETEMP)/bitmaps - (cd $(HOMETEMP)/$(MSW_BUILD); $(TOOL_PREFIX)windres -i molby.rc -o molby_rc.o -I$(WX_DIR)/include) - cp $(HOMETEMP)/$(MSW_BUILD)/molby_rc.o $@ - rm -rf $(HOMETEMP) + $(TOOL_PREFIX)windres -i molby.rc -o $(DESTPREFIX)/$(RESOURCE) -I$(WX_DIR)/include +# mkdir -p $(HOMETEMP)/$(MSW_BUILD) $(HOMETEMP)/bitmaps +# cp molby.rc $(HOMETEMP)/$(MSW_BUILD) +# cp ../bitmaps/*.ico $(HOMETEMP)/bitmaps +# (cd $(HOMETEMP)/$(MSW_BUILD); $(TOOL_PREFIX)windres -i molby.rc -o molby_rc.o -I$(WX_DIR)/include) +# cp $(HOMETEMP)/$(MSW_BUILD)/molby_rc.o $@ +# rm -rf $(HOMETEMP) endif depend: cleandep $(DESTPREFIX) $(OBJECTS:%.o=$(DESTPREFIX)/%.d) $(EXTRA_OBJECTS:%.o=$(DESTPREFIX)/%.d) @@ -145,11 +138,8 @@ $(DESTPREFIX)/Ruby_bind.a : ../MolLib/Ruby_bind/*.[ch] ALL_OBJECTS = $(OBJECTS) $(EXTRA_OBJECTS) $(LIBS) $(RESOURCE) DESTOBJECTS = $(addprefix $(DESTPREFIX)/,$(ALL_OBJECTS)) $(DESTPREFIX)/$(EXECUTABLE) : $(DESTOBJECTS) ../revisionInfo.txt -ifeq ($(TARGET_PLATFORM),MAC) - sh ../record_build_date.sh --with-svn-status -endif ifeq ($(TARGET_PLATFORM),MSW) - sh ../record_build_date.sh + sh ../record_build_date.sh --with-svn-status >buildInfo.c endif $(CC) -c buildInfo.c -o $(DESTPREFIX)/buildInfo.o $(CFLAGS) $(CPP) -o $@ $(DESTOBJECTS) $(DESTPREFIX)/buildInfo.o $(CFLAGS) $(LDFLAGS) @@ -173,7 +163,7 @@ ifeq ($(TARGET_PLATFORM),MSW) rm -rf $(DESTPREFIX)/$(PRODUCT_DIR) mkdir -p $(DESTPREFIX)/$(PRODUCT_DIR) cp $(DESTPREFIX)/$(EXECUTABLE) $(DESTPREFIX)/$(PRODUCT_DIR)/$(FINAL_EXECUTABLE) - cp mingwm10.dll $(DESTPREFIX)/$(PRODUCT_DIR) +# cp mingwm10.dll $(DESTPREFIX)/$(PRODUCT_DIR) cp -r ../Scripts $(DESTPREFIX)/$(PRODUCT_DIR) cp -r amber11 $(DESTPREFIX)/$(PRODUCT_DIR) cp -r ortep3 $(DESTPREFIX)/$(PRODUCT_DIR) @@ -186,7 +176,7 @@ install: setup setup: build/release/$(PRODUCT_DIR)/$(FINAL_EXECUTABLE) mkdir -p ../latest_binaries -ifneq ($(CROSS_COMPILE),) +ifneq ($(WINE_PATH),) ($(WINE_PATH)/wine ../../Inno\ Setup\ 5/ISCC.exe molby.iss || exit 1) else (/c/Program\ Files\ \(x86\)/Inno\ Setup\ 5/iscc molby.iss || exit 1) diff --git a/build-win/Makefile b/build-win/Makefile index ab27bb2..28801f5 100755 --- a/build-win/Makefile +++ b/build-win/Makefile @@ -1,5 +1,6 @@ TARGET_PLATFORM = MSW -CROSS_COMPILE = 1 +#CROSS_COMPILE = 1 +TARGET_ARCH = x86_64 PWD = $(shell echo $$PWD) ifeq ($(CONFIGURATION),Debug) DEBUG = 1 diff --git a/build-win/molby.iss b/build-win/molby.iss index 955cb13..7a2746d 100755 --- a/build-win/molby.iss +++ b/build-win/molby.iss @@ -1,6 +1,6 @@ [Setup] AppName = Molby -AppVerName = Molby (v1.0b3) +AppVerName = Molby (v1.0) DefaultDirName = {pf}\Molby DefaultGroupName = Molby UninstallDisplayIcon = {app}\Molby.exe @@ -8,7 +8,6 @@ OutputBaseFileName = SetupMolbyWin [Files] Source: "build\release\Molby\Molby.exe"; DestDir: {app} -Source: "build\release\Molby\mingwm10.dll"; DestDir: {app} Source: "build\release\Molby\amber11\bin\*"; DestDir: {app}\amber11\bin Source: "build\release\Molby\amber11\dat\antechamber\*"; DestDir: {app}\amber11\dat\antechamber Source: "build\release\Molby\amber11\dat\leap\parm\*"; DestDir: {app}\amber11\dat\leap\parm diff --git a/build-xcode/.svnignore b/build-xcode/.svnignore index 1746416..bb8c639 100644 --- a/build-xcode/.svnignore +++ b/build-xcode/.svnignore @@ -1,6 +1,6 @@ ortep3 amber11 build -buildInfo.* +buildInfo* .* diff --git a/build-xcode/Molby-Info.plist b/build-xcode/Molby-Info.plist index 08b4636..399617c 100755 --- a/build-xcode/Molby-Info.plist +++ b/build-xcode/Molby-Info.plist @@ -36,6 +36,6 @@ CFBundleSignature ???? CFBundleVersion - v0.6.5 + v1.0 diff --git a/build-xcode/Molby.xcodeproj/.svnignore b/build-xcode/Molby.xcodeproj/.svnignore index ee32cb9..a7e7ac2 100644 --- a/build-xcode/Molby.xcodeproj/.svnignore +++ b/build-xcode/Molby.xcodeproj/.svnignore @@ -2,3 +2,5 @@ *.mode1v3 *.pbxuser project.xcworkspace +xcuserdata + diff --git a/build-xcode/Molby.xcodeproj/project.pbxproj b/build-xcode/Molby.xcodeproj/project.pbxproj index a402e47..c24d369 100644 --- a/build-xcode/Molby.xcodeproj/project.pbxproj +++ b/build-xcode/Molby.xcodeproj/project.pbxproj @@ -7,9 +7,9 @@ objects = { /* Begin PBXAggregateTarget section */ - E4CB370F1FE4FF0E001BB75E /* Molby (Mac Archive) */ = { + E4CB370F1FE4FF0E001BB75E /* Molby_archive */ = { isa = PBXAggregateTarget; - buildConfigurationList = E4CB37101FE4FF0E001BB75E /* Build configuration list for PBXAggregateTarget "Molby (Mac Archive)" */; + buildConfigurationList = E4CB37101FE4FF0E001BB75E /* Build configuration list for PBXAggregateTarget "Molby_archive" */; buildPhases = ( E4CB37171FE4FF42001BB75E /* ShellScript */, ); @@ -17,8 +17,9 @@ E4CB37141FE4FF23001BB75E /* PBXTargetDependency */, E4CB37161FE4FF23001BB75E /* PBXTargetDependency */, E4CB37191FE50707001BB75E /* PBXTargetDependency */, + E4B710FF2306BD0A000A77EB /* PBXTargetDependency */, ); - name = "Molby (Mac Archive)"; + name = Molby_archive; productName = "Molby (Mac Archive)"; }; /* End PBXAggregateTarget section */ @@ -48,6 +49,7 @@ E420BE24188574F600A2B983 /* wxKillAddition.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E420BE21188574F600A2B983 /* wxKillAddition.cpp */; }; E45B94621A170B9A008E95EB /* docview.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E45B94611A170B9A008E95EB /* docview.cpp */; }; E4653CB118A0CC7D0022377B /* textctrl_addition.mm in Sources */ = {isa = PBXBuildFile; fileRef = E4653CB018A0CC7D0022377B /* textctrl_addition.mm */; }; + E49B3DF72306D9F500422E13 /* buildInfo_cmd.c in Sources */ = {isa = PBXBuildFile; fileRef = E49B3DF62306D9F500422E13 /* buildInfo_cmd.c */; }; E49BFBFA1886E72000188237 /* MyVersion.c in Sources */ = {isa = PBXBuildFile; fileRef = E420BE18188574D700A2B983 /* MyVersion.c */; }; E49BFBFB1886E74600188237 /* IntGroup.c in Sources */ = {isa = PBXBuildFile; fileRef = E4FC777D183E4F3F0064FB2E /* IntGroup.c */; }; E49BFBFF1886E74600188237 /* MainViewCommon.c in Sources */ = {isa = PBXBuildFile; fileRef = E4FC7781183E4F3F0064FB2E /* MainViewCommon.c */; }; @@ -69,7 +71,6 @@ E49BFC191886E76F00188237 /* ruby_bind.c in Sources */ = {isa = PBXBuildFile; fileRef = E4FC779F183E4F3F0064FB2E /* ruby_bind.c */; }; E49BFC1B1886E77000188237 /* ruby_md.c in Sources */ = {isa = PBXBuildFile; fileRef = E4FC77A2183E4F3F0064FB2E /* ruby_md.c */; }; E49BFC1C1886E77100188237 /* ruby_types.c in Sources */ = {isa = PBXBuildFile; fileRef = E4FC77A3183E4F3F0064FB2E /* ruby_types.c */; }; - E49BFC1F1886E78600188237 /* buildInfo.c in Sources */ = {isa = PBXBuildFile; fileRef = E4FC7CA5183F94D30064FB2E /* buildInfo.c */; }; E49BFC2C1886E88A00188237 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E4FC7810183E50DC0064FB2E /* Accelerate.framework */; }; E4ACACE718C6D32300F08B67 /* ortep3 in Resources */ = {isa = PBXBuildFile; fileRef = E4ACACE418C6D32300F08B67 /* ortep3 */; }; E4D379A219C87C2200636D28 /* modalwindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4D379A119C87C2200636D28 /* modalwindow.cpp */; }; @@ -119,6 +120,13 @@ /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ + E4B710FE2306BD0A000A77EB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */; + proxyType = 1; + remoteGlobalIDString = E4B710FA2306BC80000A77EB; + remoteInfo = Molby_win64; + }; E4CB37131FE4FF23001BB75E /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */; @@ -202,6 +210,7 @@ E420BE21188574F600A2B983 /* wxKillAddition.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = wxKillAddition.cpp; sourceTree = ""; }; E45B94611A170B9A008E95EB /* docview.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = docview.cpp; sourceTree = ""; }; E4653CB018A0CC7D0022377B /* textctrl_addition.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = textctrl_addition.mm; sourceTree = ""; }; + E49B3DF62306D9F500422E13 /* buildInfo_cmd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = buildInfo_cmd.c; sourceTree = ""; }; E49BFB761886E2E400188237 /* Molby_command */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = Molby_command; sourceTree = BUILT_PRODUCTS_DIR; }; E4ACACE418C6D32300F08B67 /* ortep3 */ = {isa = PBXFileReference; lastKnownFileType = folder; path = ortep3; sourceTree = ""; }; E4CB37081FDD4654001BB75E /* OpenGL_extensions.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = OpenGL_extensions.c; sourceTree = ""; }; @@ -344,6 +353,7 @@ E4FC7C28183E55820064FB2E /* wxSources */, E4FC7779183E4F3F0064FB2E /* MolLib */, E4FC7CA5183F94D30064FB2E /* buildInfo.c */, + E49B3DF62306D9F500422E13 /* buildInfo_cmd.c */, ); name = Sources; sourceTree = ""; @@ -526,17 +536,31 @@ /* End PBXGroup section */ /* Begin PBXLegacyTarget section */ - E4CB370B1FE2C1F7001BB75E /* Molby (Windows) */ = { + E4B710FA2306BC80000A77EB /* Molby_win64 */ = { isa = PBXLegacyTarget; - buildArgumentsString = "PATH=/usr/local/mingw-w32/bin:$PATH make $(ACTION)"; - buildConfigurationList = E4CB370C1FE2C1F7001BB75E /* Build configuration list for PBXLegacyTarget "Molby (Windows)" */; + buildArgumentsString = "PATH=/usr/local/homebrew/bin:$PATH make $(ACTION)"; + buildConfigurationList = E4B710FB2306BC80000A77EB /* Build configuration list for PBXLegacyTarget "Molby_win64" */; buildPhases = ( ); buildToolPath = /usr/bin/env; buildWorkingDirectory = "$(PROJECT_DIR)/../build-win"; dependencies = ( ); - name = "Molby (Windows)"; + name = Molby_win64; + passBuildSettingsInEnvironment = 1; + productName = "Molby (Windows)"; + }; + E4CB370B1FE2C1F7001BB75E /* Molby_win32 */ = { + isa = PBXLegacyTarget; + buildArgumentsString = "PATH=/usr/local/homebrew/bin:$PATH make $(ACTION)"; + buildConfigurationList = E4CB370C1FE2C1F7001BB75E /* Build configuration list for PBXLegacyTarget "Molby_win32" */; + buildPhases = ( + ); + buildToolPath = /usr/bin/env; + buildWorkingDirectory = "$(PROJECT_DIR)/../build-win32"; + dependencies = ( + ); + name = Molby_win32; passBuildSettingsInEnvironment = 1; productName = "Molby (Windows)"; }; @@ -567,6 +591,7 @@ isa = PBXNativeTarget; buildConfigurationList = E49BFB7A1886E30200188237 /* Build configuration list for PBXNativeTarget "Molby_command" */; buildPhases = ( + E49B3DF82306DB1800422E13 /* ShellScript */, E49BFB731886E2E400188237 /* Sources */, E49BFB741886E2E400188237 /* Frameworks */, E4DF3BCD1FDCEAEE0014F980 /* CopyFiles */, @@ -614,8 +639,9 @@ targets = ( 8D1107260486CEB800E47090 /* Molby */, E49BFB751886E2E400188237 /* Molby_command */, - E4CB370B1FE2C1F7001BB75E /* Molby (Windows) */, - E4CB370F1FE4FF0E001BB75E /* Molby (Mac Archive) */, + E4CB370B1FE2C1F7001BB75E /* Molby_win32 */, + E4B710FA2306BC80000A77EB /* Molby_win64 */, + E4CB370F1FE4FF0E001BB75E /* Molby_archive */, ); }; /* End PBXProject section */ @@ -661,6 +687,23 @@ shellPath = /bin/sh; shellScript = "if [ \"${BUILD_STYLE:=$CONFIGURATION}\" = \"Release\" ]; then\n mkdir -p \"$PROJECT_DIR/../latest_binaries/Molby\" || exit 1\n (cd \"$PROJECT_DIR/../latest_binaries/Molby\" && rm -rf Molby_command Molby_resources) || exit 1\n (cd \"$TARGET_BUILD_DIR\"; cp -a Molby_command Molby_resources \"$PROJECT_DIR/../latest_binaries/Molby\") || exit 1\nfi\n"; }; + E49B3DF82306DB1800422E13 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "cd $PROJECT_DIR; sh ../record_build_date.sh --with-svn-status >buildInfo_cmd.c\n"; + }; E4CB37171FE4FF42001BB75E /* ShellScript */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -672,7 +715,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "if [ \"${BUILD_STYLE:=$CONFIGURATION}\" = \"Release\" ]; then\n (cd \"$PROJECT_DIR/../latest_binaries\" && rm -f MolbyMac.zip && zip -r MolbyMac.zip Molby -x \\*.DS_Store -x \\*.svn*) || exit 1\n (cd \"$PROJECT_DIR/../Documents\" && /usr/bin/ruby makedoc.rb && cp -a MolbyDoc \"$PROJECT_DIR/../latest_binaries\") || exit 1\n (cd \"$PROJECT_DIR/../latest_binaries\" && zip -r MolbyDoc.zip MolbyDoc -x \\*.DS_Store -x \\*.svn*) || exit 1\n (cd \"$PROJECT_DIR/../mswx-build\"; PATH=/usr/local/mingw-w32/bin:$PATH; make setup) || exit 1\nfi\n"; + shellScript = "if [ \"${BUILD_STYLE:=$CONFIGURATION}\" = \"Release\" ]; then\n (cd \"$PROJECT_DIR/../latest_binaries\" && rm -f MolbyMac.zip && zip -r MolbyMac.zip Molby -x \\*.DS_Store -x \\*.svn*) || exit 1\n (cd \"$PROJECT_DIR/../Documents\" && /usr/bin/ruby makedoc.rb && cp -a MolbyDoc \"$PROJECT_DIR/../latest_binaries\") || exit 1\n (cd \"$PROJECT_DIR/../latest_binaries\" && zip -r MolbyDoc.zip MolbyDoc -x \\*.DS_Store -x \\*.svn*) || exit 1\n (cd \"$PROJECT_DIR/../build-win32\"; PATH=/usr/local/homebrew/bin:$PATH; make setup) || exit 1\n (cd \"$PROJECT_DIR/../build-win\"; PATH=/usr/local/homebrew/bin:$PATH; make setup) || exit 1\nfi\n"; }; E4FC7B57183E516E0064FB2E /* ShellScript */ = { isa = PBXShellScriptBuildPhase; @@ -685,7 +728,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "cd $PROJECT_DIR; sh ../record_build_date.sh --with-svn-status\n"; + shellScript = "cd $PROJECT_DIR; sh ../record_build_date.sh --with-svn-status >buildInfo.c\n"; }; /* End PBXShellScriptBuildPhase section */ @@ -764,6 +807,7 @@ E49BFC111886E74600188237 /* cmdtool_stubs.c in Sources */, E49BFC121886E75700188237 /* MDCore.c in Sources */, E49BFC131886E75C00188237 /* MDEwald.c in Sources */, + E49B3DF72306D9F500422E13 /* buildInfo_cmd.c in Sources */, E49BFC141886E75D00188237 /* MDForce.c in Sources */, E49BFC151886E75D00188237 /* MDGraphite.c in Sources */, E49BFC161886E75E00188237 /* MDPressure.c in Sources */, @@ -771,13 +815,17 @@ E49BFC191886E76F00188237 /* ruby_bind.c in Sources */, E49BFC1B1886E77000188237 /* ruby_md.c in Sources */, E49BFC1C1886E77100188237 /* ruby_types.c in Sources */, - E49BFC1F1886E78600188237 /* buildInfo.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ + E4B710FF2306BD0A000A77EB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = E4B710FA2306BC80000A77EB /* Molby_win64 */; + targetProxy = E4B710FE2306BD0A000A77EB /* PBXContainerItemProxy */; + }; E4CB37141FE4FF23001BB75E /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 8D1107260486CEB800E47090 /* Molby */; @@ -790,7 +838,7 @@ }; E4CB37191FE50707001BB75E /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = E4CB370B1FE2C1F7001BB75E /* Molby (Windows) */; + target = E4CB370B1FE2C1F7001BB75E /* Molby_win32 */; targetProxy = E4CB37181FE50707001BB75E /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ @@ -917,37 +965,31 @@ C01FCF4F08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ARCHS = ( - ppc, - i386, - ); + ARCHS = "$(ARCHS_STANDARD)"; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 0; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.5; + MACOSX_DEPLOYMENT_TARGET = 10.6; ONLY_ACTIVE_ARCH = YES; PREBINDING = NO; - SDKROOT = macosx10.5; + SDKROOT = macosx10.6; }; name = Debug; }; C01FCF5008A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - ARCHS = ( - ppc, - i386, - ); + ARCHS = "$(ARCHS_STANDARD)"; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 2; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.5; + MACOSX_DEPLOYMENT_TARGET = 10.6; PREBINDING = NO; - SDKROOT = macosx10.5; + SDKROOT = macosx10.6; }; name = Release; }; @@ -1020,6 +1062,90 @@ }; name = Release; }; + E4B710FC2306BC80000A77EB /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUGGING_SYMBOLS = YES; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_DYNAMIC_NO_PIC = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_CFLAGS = ""; + OTHER_LDFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + E4B710FD2306BC80000A77EB /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_CFLAGS = ""; + OTHER_LDFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; E4CB370D1FE2C1F7001BB75E /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -1148,7 +1274,16 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - E4CB370C1FE2C1F7001BB75E /* Build configuration list for PBXLegacyTarget "Molby (Windows)" */ = { + E4B710FB2306BC80000A77EB /* Build configuration list for PBXLegacyTarget "Molby_win64" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + E4B710FC2306BC80000A77EB /* Debug */, + E4B710FD2306BC80000A77EB /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + E4CB370C1FE2C1F7001BB75E /* Build configuration list for PBXLegacyTarget "Molby_win32" */ = { isa = XCConfigurationList; buildConfigurations = ( E4CB370D1FE2C1F7001BB75E /* Debug */, @@ -1157,7 +1292,7 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - E4CB37101FE4FF0E001BB75E /* Build configuration list for PBXAggregateTarget "Molby (Mac Archive)" */ = { + E4CB37101FE4FF0E001BB75E /* Build configuration list for PBXAggregateTarget "Molby_archive" */ = { isa = XCConfigurationList; buildConfigurations = ( E4CB37111FE4FF0E001BB75E /* Debug */, diff --git a/build-xcode/Molby.xcodeproj/project.xcworkspace/xcuserdata/toshi_n.xcuserdatad/UserInterfaceState.xcuserstate b/build-xcode/Molby.xcodeproj/project.xcworkspace/xcuserdata/toshi_n.xcuserdatad/UserInterfaceState.xcuserstate index 2b121a76c0863b5741d82de2f121d96cdea91475..96efec1ea88f6e00e762042b9d6259f07f7469e8 100644 GIT binary patch literal 62993 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 J_$Qp delta 22656 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 Z>fnvRyV@g23_{_5Jwo_@==b2g{|B{~HXHx| diff --git a/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby.xcscheme b/build-xcode/Molby.xcodeproj/xcshareddata/xcschemes/Molby.xcscheme similarity index 100% rename from build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby.xcscheme rename to build-xcode/Molby.xcodeproj/xcshareddata/xcschemes/Molby.xcscheme diff --git a/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby_Archive.xcscheme b/build-xcode/Molby.xcodeproj/xcshareddata/xcschemes/Molby_Archive.xcscheme similarity index 89% rename from build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby_Archive.xcscheme rename to build-xcode/Molby.xcodeproj/xcshareddata/xcschemes/Molby_Archive.xcscheme index f31c651..93bf7d8 100644 --- a/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby_Archive.xcscheme +++ b/build-xcode/Molby.xcodeproj/xcshareddata/xcschemes/Molby_Archive.xcscheme @@ -15,8 +15,8 @@ @@ -46,8 +46,8 @@ @@ -64,8 +64,8 @@ diff --git a/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby_command.xcscheme b/build-xcode/Molby.xcodeproj/xcshareddata/xcschemes/Molby_command.xcscheme similarity index 100% rename from build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby_command.xcscheme rename to build-xcode/Molby.xcodeproj/xcshareddata/xcschemes/Molby_command.xcscheme diff --git a/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby_Windows.xcscheme b/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby_Windows.xcscheme deleted file mode 100644 index f6157a3..0000000 --- a/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/Molby_Windows.xcscheme +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/xcschememanagement.plist b/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/xcschememanagement.plist index 3255dbb..7b6671c 100644 --- a/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/xcschememanagement.plist +++ b/build-xcode/Molby.xcodeproj/xcuserdata/toshi_n.xcuserdatad/xcschemes/xcschememanagement.plist @@ -4,25 +4,30 @@ SchemeUserState - Molby.xcscheme + Molby.xcscheme_^#shared#^_ orderHint 0 - Molby_Archive.xcscheme + Molby_Archive.xcscheme_^#shared#^_ orderHint - 3 + 2 - Molby_Windows.xcscheme + Molby_command.xcscheme_^#shared#^_ orderHint - 2 + 1 - Molby_command.xcscheme + Molby_win32.xcscheme_^#shared#^_ orderHint - 1 + 3 + + Molby_win64.xcscheme_^#shared#^_ + + orderHint + 4 SuppressBuildableAutocreation @@ -37,11 +42,6 @@ primary - E4CB370B1FE2C1F7001BB75E - - primary - - E4CB370F1FE4FF0E001BB75E primary diff --git a/build-xcode/buildInfo.c b/build-xcode/buildInfo.c index da54352..9c682c0 100644 --- a/build-xcode/buildInfo.c +++ b/build-xcode/buildInfo.c @@ -1,2 +1,2 @@ -char *gLastBuildString = "2019-08-16 01:27:22 JST"; -int gRevisionNumber = 612; +volatile char *gLastBuildString = "2019-08-16 21:40:23 JST"; +volatile int gRevisionNumber = 617; diff --git a/build-xcode/buildInfo.txt b/build-xcode/buildInfo.txt index 92be869..394c4f1 100644 --- a/build-xcode/buildInfo.txt +++ b/build-xcode/buildInfo.txt @@ -1 +1 @@ -last_build = "2019-08-16 01:27:22 JST" +last_build = "2019-08-16 21:40:23 JST" diff --git a/record_build_date.sh b/record_build_date.sh index 54e4dda..946a4fe 100644 --- a/record_build_date.sh +++ b/record_build_date.sh @@ -1,8 +1,8 @@ #!/bin/sh -# Usage: sh ../record_build_date.sh [--with-svn-status] +# Usage: sh ../record_build_date.sh [--with-svn-status] > buildInfo.c LAST_BUILD=`date '+%Y-%m-%d %H:%M:%S %Z'` echo "last_build = \"$LAST_BUILD\"" > buildInfo.txt -echo "char *gLastBuildString = \"$LAST_BUILD\";" > buildInfo.c +echo "volatile char *gLastBuildString = \"$LAST_BUILD\";" if [ "$1" = "--with-svn-status" ]; then REVISION_INFO=`(cd ..; svn status -v . --depth=empty | awk '{print $1}')` echo $REVISION_INFO > ../revisionInfo.txt @@ -12,4 +12,4 @@ else REVISION_INFO=0 fi fi -echo "int gRevisionNumber = $REVISION_INFO;" >> buildInfo.c +echo "volatile int gRevisionNumber = $REVISION_INFO;" diff --git a/wxSources/RubyDialogFrame.cpp b/wxSources/RubyDialogFrame.cpp index 506afa5..11f1f91 100644 --- a/wxSources/RubyDialogFrame.cpp +++ b/wxSources/RubyDialogFrame.cpp @@ -1740,7 +1740,7 @@ RubyDialogCallback_setFont(RDDeviceContext *dc, void **args) float size = *((float *)(args[i + 1])); font.SetPointSize((int)size); } else if (strcmp((const char *)args[i], "style") == 0) { - long style = (long)(args[i + 1]); + long style = (intptr_t)(args[i + 1]); switch (style) { case 0: style = wxFONTSTYLE_NORMAL; break; case 1: style = wxFONTSTYLE_ITALIC; break; @@ -1750,7 +1750,7 @@ RubyDialogCallback_setFont(RDDeviceContext *dc, void **args) font.SetStyle(style); } else if (strcmp((const char *)args[i], "family") == 0) { wxFontFamily family; - j = (long)(args[i + 1]); + j = (intptr_t)(args[i + 1]); switch (j) { case 0: family = wxFONTFAMILY_DEFAULT; break; case 1: family = wxFONTFAMILY_ROMAN; break; @@ -1761,7 +1761,7 @@ RubyDialogCallback_setFont(RDDeviceContext *dc, void **args) font.SetFamily(family); } else if (strcmp((const char *)args[i], "weight") == 0) { wxFontWeight weight; - j = (long)(args[i + 1]); + j = (intptr_t)(args[i + 1]); switch (j) { case 0: weight = wxFONTWEIGHT_NORMAL; break; case 1: weight = wxFONTWEIGHT_LIGHT; break; @@ -1793,7 +1793,7 @@ RubyDialogCallback_setPen(RDDeviceContext *dc, void **args) float width = *((float *)(args[i + 1])); pen.SetWidth((int)width); } else if (strcmp((const char *)args[i], "style") == 0) { - long style = (long)(args[i + 1]); + long style = (intptr_t)(args[i + 1]); switch (style) { case 0: style = wxSOLID; break; case 1: style = wxTRANSPARENT; break; -- 2.11.0