Subversion Repositories filter_foundry

Rev

Rev 102 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 102 Rev 106
1
# This file is part of "Filter Foundry", a filter plugin for Adobe Photoshop
1
# This file is part of "Filter Foundry", a filter plugin for Adobe Photoshop
2
# Copyright (C) 2002-9 Toby Thain, toby@telegraphics.com.au
2
# Copyright (C) 2002-9 Toby Thain, toby@telegraphics.com.au
3
 
3
 
4
# This program is free software; you can redistribute it and/or modify
4
# This program is free software; you can redistribute it and/or modify
5
# it under the terms of the GNU General Public License as published by  
5
# it under the terms of the GNU General Public License as published by  
6
# the Free Software Foundation; either version 2 of the License, or
6
# the Free Software Foundation; either version 2 of the License, or
7
# (at your option) any later version.
7
# (at your option) any later version.
8
 
8
 
9
# This program is distributed in the hope that it will be useful,
9
# This program is distributed in the hope that it will be useful,
10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10
# but WITHOUT ANY WARRANTY; without even the implied warranty of
11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
# GNU General Public License for more details.
12
# GNU General Public License for more details.
13
 
13
 
14
# You should have received a copy of the GNU General Public License  
14
# You should have received a copy of the GNU General Public License  
15
# along with this program; if not, write to the Free Software
15
# along with this program; if not, write to the Free Software
16
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17
 
17
 
18
# NMAKE Makefile
18
# NMAKE Makefile
19
 
19
 
20
# Tested with Visual C++ 2008 Express Edition
20
# Tested with Visual C++ 2008 Express Edition
21
#	http://www.microsoft.com/express/vc/
21
#	http://www.microsoft.com/express/vc/
22
# and Windows SDK for Windows Server 2008
22
# and Windows SDK for Windows Server 2008
23
#	http://www.microsoft.com/downloads/details.aspx?FamilyId=E6E1C3DF-A74F-4207-8586-711EBE331CDC&displaylang=en
23
#	http://www.microsoft.com/downloads/details.aspx?FamilyId=E6E1C3DF-A74F-4207-8586-711EBE331CDC&displaylang=en
24
 
24
 
25
# Set environment variables as follows (fix paths for
25
# Set environment variables as follows (fix paths for
26
# *your* actual installations and ignore line breaks :)
26
# *your* actual installations and ignore line breaks :)
27
#	SET INCLUDE=H:\Microsoft Visual Studio 9.0\VC\include;
27
#	SET INCLUDE=H:\Microsoft Visual Studio 9.0\VC\include;
28
#               C:\Program Files\Microsoft SDKs\Windows\v6.1\Include
28
#               C:\Program Files\Microsoft SDKs\Windows\v6.1\Include
29
#	SET LIB=H:\Microsoft Visual Studio 9.0\Common7\IDE;
29
#	SET LIB=H:\Microsoft Visual Studio 9.0\Common7\IDE;
30
#           H:\Microsoft Visual Studio 9.0\VC\lib;
30
#           H:\Microsoft Visual Studio 9.0\VC\lib;
31
#           C:\Program Files\Microsoft SDKs\Windows\v6.1\Lib
31
#           C:\Program Files\Microsoft SDKs\Windows\v6.1\Lib
32
#	SET PATH=H:\Microsoft Visual Studio 9.0\Common7\IDE;
32
#	SET PATH=H:\Microsoft Visual Studio 9.0\Common7\IDE;
33
#            H:\Microsoft Visual Studio 9.0\VC\bin;
33
#            H:\Microsoft Visual Studio 9.0\VC\bin;
34
#            C:\Program Files\Microsoft SDKs\Windows\v6.1\Bin
34
#            C:\Program Files\Microsoft SDKs\Windows\v6.1\Bin
35
 
35
 
36
# To do a 64-bit build,
36
# To do a 64-bit build,
37
# - set LIB to {VC}\lib\amd64;Microsoft SDKs\Windows\v6.1\Lib\x64
37
# - set LIB to {VC}\lib\amd64;Microsoft SDKs\Windows\v6.1\Lib\x64
38
#   and PATH to {VC}\bin\x86_amd64;{VC}\bin
38
#   and PATH to {VC}\bin\x86_amd64;{VC}\bin
39
#   where {VC} is the vc directory of the Visual Studio distribution.
39
#   where {VC} is the vc directory of the Visual Studio distribution.
40
# - add  -d_WIN64  to RFLAGS
40
# - add  -d_WIN64  to RFLAGS
41
 
41
 
42
EXEC = FilterFoundry
42
EXEC = FilterFoundry
43
 
43
 
44
# define location of Photoshop SDK headers
44
# define location of Photoshop SDK headers
45
PSAPI = "c:\Adobe Photoshop CS4 SDK\photoshopapi"
45
PSAPI = "D:\FilterFoundry\adobe_photoshop_sdk_cc_2017_win\pluginsdk\photoshopapi"
46
 
46
 
47
# C compiler flags
47
# C compiler flags
48
CPPFLAGS = -DWIN32 -DWIN_ENV -DYY_SKIP_YYWRAP \
48
CPPFLAGS = -DWIN32 -DWIN_ENV -DYY_SKIP_YYWRAP \
49
           -I$(PSAPI)\Pica_sp -I$(PSAPI)\Photoshop -I$(PSAPI)\General \
49
           -I$(PSAPI)\Pica_sp -I$(PSAPI)\Photoshop -I$(PSAPI)\General \
50
           -I..\common\adobeplugin -I..\common\tt -I.
50
           -I..\common\adobeplugin -I..\common\tt -I.
51
CFLAGS = -O2 $(CPPFLAGS)
51
CFLAGS = -O2 $(CPPFLAGS)
52
 
52
 
53
# Note since VS8 it is necessary to link with multithreaded standard lib, using /MT
53
# Note since VS8 it is necessary to link with multithreaded standard lib, using /MT
54
LDFLAGS = /LD /MT user32.lib gdi32.lib comdlg32.lib
54
LDFLAGS = /LD /MT user32.lib gdi32.lib comdlg32.lib
55
 
55
 
56
# resource compiler flags
56
# resource compiler flags
57
RFLAGS = -i$(PSAPI)\Photoshop
57
RFLAGS = -i$(PSAPI)\Photoshop
58
 
58
 
-
 
59
# Path to flex and bison (you can download them at https://sourceforge.net/projects/winflexbison/ )
-
 
60
FLEX = D:\FilterFoundry\win_flex_bison\win_flex
-
 
61
BISON = D:\FilterFoundry\win_flex_bison\win_bison
-
 
62
 
59
OBJ = main.obj funcs.obj trigtab.obj process.obj node.obj symtab.obj \
63
OBJ = main.obj funcs.obj trigtab.obj process.obj node.obj symtab.obj \
60
	ui.obj ui_build.obj preview.obj read.obj save.obj make.obj \
64
	ui.obj ui_build.obj preview.obj read.obj save.obj make.obj \
61
	scripting.obj y.tab.obj lex.yy.obj ui_win.obj make_win.obj load_win.obj \
65
	scripting.obj lex.yy.obj ui_win.obj make_win.obj load_win.obj \
62
	..\common\tt\dbg_win.obj ..\common\tt\ui_compat_win.obj \
66
	..\common\tt\dbg_win.obj ..\common\tt\ui_compat_win.obj \
63
	..\common\tt\choosefile_win.obj ui_build_win.obj \
67
	..\common\tt\choosefile_win.obj ui_build_win.obj \
64
	..\common\tt\compat_string.obj ..\common\tt\compat_win.obj \
68
	..\common\tt\compat_string.obj ..\common\tt\compat_win.obj \
65
	..\common\tt\file_compat_win.obj ..\common\tt\str.obj \
69
	..\common\tt\file_compat_win.obj ..\common\tt\str.obj \
66
	..\common\adobeplugin\dllmain.obj
70
	..\common\adobeplugin\dllmain.obj
67
 
71
 
68
all : $(EXEC).8bf
72
all : parser lexer $(EXEC).8bf
69
 
73
 
70
clean :
74
clean :
71
	-del *.obj *.asm *.cod win_res.res $(EXEC).8bi $(EXEC).exp $(EXEC).lib $(EXEC).map
75
	-del *.obj *.asm *.cod win_res.res $(EXEC).8bf $(EXEC).exp $(EXEC).lib $(EXEC).map
72
 
76
 
73
win_res.res : win_res.rc PiPL.rc PiPL_body.rc ui_win.rc caution.ico ui.h version.h
77
win_res.res : win_res.rc PiPL.rc PiPL_body.rc ui_win.rc caution.ico ui.h version.h
74
	$(RC) $(RFLAGS) $(CPPFLAGS) win_res.rc
78
	$(RC) $(RFLAGS) $(CPPFLAGS) win_res.rc
75
 
79
	
-
 
80
parser : parser.y
-
 
81
	$(BISON)  parser.y -d -y
-
 
82
	
-
 
83
lexer : lexer.l
-
 
84
	$(FLEX)  lexer.l y.tab.c
-
 
85
 
76
$(EXEC).8bf : $(OBJ) win_res.res
86
$(EXEC).8bf : $(OBJ) win_res.res
77
	$(CC) /Fe$@ $(**F) $(LDFLAGS)
87
	$(CC) /Fe$@ $(**F) $(LDFLAGS)