# This file is part of "psdrecover", a File Format # plugin for Adobe Photoshop # Copyright (C) 2007 Toby Thain, toby@telegraphics.com.au # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # MPW Makefile EXEC = PSDRecover EXEC_UNI = :dist:{EXEC} PLUGINTYPE = 8BIF PLUGINCREATOR = 8BIM FILETYPE = -t ¶'{PLUGINTYPE}¶' -c ¶'{PLUGINCREATOR}¶' EXEC_CLASSIC = :debug:{EXEC}.classic EXEC_CARBON = :debug:{EXEC}.carbon # the following rule defines which targets get built # build "universal" plugin with both Classic and Carbon binaries in one file {EXEC_UNI} ÄÄ {EXEC_CARBON} {EXEC_CLASSIC} PiPL_universal.r pipl_common.r version.h catenate {EXEC_CARBON} {EXEC_CLASSIC} > temp && duplicate -y -d temp {EXEC_UNI} # copy just data fork, without junk resources ls -x b {EXEC_CARBON} {EXEC_CLASSIC} > temp target temp find ¥ find /[0-9]+/ && set CARBON_LENGTH `catenate "{target}.¤"` find /[0-9]+/ && set CLASSIC_LENGTH `catenate "{target}.¤"` close Rez PiPL_universal.r -o {Targ} {REZHEADERS} {REZOPTS} ¶ -d CARBON_LENGTH={CARBON_LENGTH} -d CLASSIC_LENGTH={CLASSIC_LENGTH} {EXEC} Ä {EXEC_UNI} files -x brtc {EXEC_UNI} ## directories COMMONA = ::common:adobeplugin: COMMONT = ::common:tt: # where the Photoshop API header files are located PSAPI = "::PhotoshopAPI:" PSHEADERS = {PSAPI}General:,{PSAPI}Photoshop:,{PSAPI}Pica_sp: REZHEADERS = -i {PSAPI}Photoshop: -i {PSAPI}Resources: ZLIB = ::zlib-1.2.3: LIBPNG = ::libpng-1.2.16: PSDPARSE = ::psdparse: ACCESSPATHS = -i {PSHEADERS},{ZLIB},{LIBPNG},:,{COMMONT},{COMMONA},{PSDPARSE} ## object files OBJ_CLASSIC = main.cl.x read.cl.x ui.cl.x ui_mac.cl.x ¶ {PSDPARSE}extra.cl.x {PSDPARSE}descriptor.cl.x ¶ {PSDPARSE}resources.cl.x {PSDPARSE}icc.cl.x {PSDPARSE}mkdir_unimpl.cl.x ¶ {PSDPARSE}channel.cl.x {PSDPARSE}plugin.cl.x {PSDPARSE}unpackbits.cl.x ¶ {PSDPARSE}constants.cl.x {PSDPARSE}psd.cl.x {PSDPARSE}util.cl.x ¶ {COMMONT}file_io.cl.x {COMMONT}str.cl.x {COMMONT}ui_compat_mac.cl.x ¶ {COMMONT}dbg_mac.cl.x {COMMONT}largefiles_mac.cl.x OBJ_CARBON = main.ca.x read.ca.x ui.ca.x ui_mac.ca.x ¶ {PSDPARSE}extra.ca.x {PSDPARSE}descriptor.ca.x ¶ {PSDPARSE}resources.ca.x {PSDPARSE}icc.ca.x {PSDPARSE}mkdir_unimpl.ca.x ¶ {PSDPARSE}channel.ca.x {PSDPARSE}plugin.ca.x {PSDPARSE}unpackbits.ca.x ¶ {PSDPARSE}constants.ca.x {PSDPARSE}psd.ca.x {PSDPARSE}util.ca.x ¶ {COMMONT}file_io.ca.x {COMMONT}str.ca.x {COMMONT}ui_compat_mac.ca.x ¶ {COMMONT}dbg_mac.ca.x {COMMONT}largefiles_mac.ca.x REZFILES = ui_mac.r LIBS_CLASSIC = ¶ "{SharedLibraries}InterfaceLib" ¶ "{SharedLibraries}StdCLib" ¶ #"{SharedLibraries}MathLib" ¶ #"{SharedLibraries}NavigationLib" ¶ #"{SharedLibraries}AppearanceLib" ¶ "{PPCLibraries}StdCRuntime.o" ¶ "{PPCLibraries}PPCCRuntime.o" ¶ #"{PPCLibraries}PPCToolLibs.o" ¶ #"{PPCLibraries}"CarbonAccessors.o LIBS_CARBON = ¶ "{SharedLibraries}CarbonLib" ¶ "{SharedLibraries}StdCLib" ¶ "{PPCLibraries}CarbonStdCLib.o" ¶ "{PPCLibraries}PPCCRuntime.o" COPT = -proto strict -w 2,35 -opt speed ¶ {ACCESSPATHS} -d MAC_ENV -d PSDPARSE_PLUGIN -d PSBSUPPORT -d WANT_LARGE_FILES PPCLINKOPTS = -t {PLUGINTYPE} -c {PLUGINCREATOR} -m PluginMain REZOPTS = {FILETYPE} -a -s : -d SystemSevenOrLater=1 .ca.x Ä .c mrc {depdir}{default}.c -o {TARG} -d MACPPC_ENV {COPT} -tb on -d TARGET_CARBON .cl.x Ä .c mrc {depdir}{default}.c -o {TARG} -d MACPPC_ENV {COPT} -tb on {EXEC_CLASSIC} ÄÄ {OBJ_CLASSIC} PPCLink -o {TARG} {PPCLINKOPTS} {OBJ_CLASSIC} {LIBS_CLASSIC} {EXEC_CARBON} ÄÄ {OBJ_CARBON} PPCLink -o {TARG} {PPCLINKOPTS} {OBJ_CARBON} -d {LIBS_CARBON} {EXEC_CLASSIC} ÄÄ {REZFILES} version.h Rez -o {TARG} {REZHEADERS} {REZOPTS} {REZFILES} {EXEC_CARBON} ÄÄ {REZFILES} version.h Rez -o {TARG} {REZHEADERS} {REZOPTS} {REZFILES} {EXEC_UNI} ÄÄ {REZFILES} version.h Rez -o {TARG} {REZHEADERS} {REZOPTS} {REZFILES} {EXEC_CLASSIC} ÄÄ PiPL_classic.r version.h PiPL_common.r Rez -o {TARG} {REZHEADERS} {REZOPTS} PiPL_classic.r {EXEC_CARBON} ÄÄ PiPL_carbon.r version.h PiPL_common.r Rez -o {TARG} {REZHEADERS} {REZOPTS} PiPL_carbon.r