Subversion Repositories filter_foundry

Rev

Rev 197 | Rev 200 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
60 peter 1
 
198 daniel-mar 2
Building FilterFoundry with OpenWatcom
3
======================================
60 peter 4
 
192 daniel-mar 5
Most recently tested with OpenWatcom 1.9 and Adobe Photoshop SDK CC 2017.
60 peter 6
 
107 dmarschall 7
 
192 daniel-mar 8
Prerequisites
9
-------------
107 dmarschall 10
 
11
1) Flex and Bison
192 daniel-mar 12
   Available here:
13
   https://sourceforge.net/projects/winflexbison/
107 dmarschall 14
 
15
2) Adobe Photoshop SDK
192 daniel-mar 16
   Available on some Photoshop CDs, or can be downloaded at
17
   https://www.adobe.com/devnet/photoshop/sdk.html
107 dmarschall 18
 
61 peter 19
3) Watcom 1.6beta RC1 or later
192 daniel-mar 20
   Available here:
21
   http://www.openwatcom.org/
22
   After installing, do a reboot, or set the environment manually.
60 peter 23
 
24
 
193 daniel-mar 25
Build setup
26
-----------
107 dmarschall 27
 
193 daniel-mar 28
There is no special build setup required.
29
Just open wpj\filterfoundry.wpj in Watcom's IDE and click "Make target".
60 peter 30
 
192 daniel-mar 31
IMPORTANT: Your path must not contain whitespaces!
32
For example, you must not use "C:\Users\John Doe\SVN\Filter Foundry\".
107 dmarschall 33
 
60 peter 34
 
192 daniel-mar 35
Troubleshooting
36
---------------
107 dmarschall 37
 
192 daniel-mar 38
- Please make sure that you must not have whitespaces in the pathname.
107 dmarschall 39
 
40
- If you get the error message "Fatal Error! 62:  Unable to open 'sdkddkver.h'", please open 
41
  pluginsdk\photoshopapi\photoshop\PITypes.h in your Adobe Photoshop SDK and
108 dmarschall 42
  comment out the line "#include <sdkddkver.h> // for WINVER".
43
  Alternatively, you can use an older version of the Photoshop SDK, or create an empty
44
  sdkddkver.h file in your wpj folder.
107 dmarschall 45
 
46
- It is important that the correct calling convention is used.
47
  The calling convention needs to be set in
48
  Options -> C Compiler Switches -> Memory Model and Processor Switches.
49
  There, select "Pentium Pro stack-based calling" (default is "Pentium Pro register based calling").
50
  The wpj project should already have this setting applied.
51
 
52
- If you receive the error message "lex.yy.c(580): Error! E1009: Expecting ';' but found '1'",
53
  check if the compiler directive "YY_SKIP_YYWRAP" is set.
192 daniel-mar 54
  Go to Options -> C Compiler Switches -> Source switches, and add YY_SKIP_YYWRAP=1 .
107 dmarschall 55
  The wpj project should already have this setting applied.
56
 
192 daniel-mar 57
- The path to the Photoshop SDK and to Win Flex/Bison (PreBuild event)
58
  is already set in the project file. Please note that changing these
59
  paths is a bit complicated. There are several bugs in OpenWatcom
60
  where you can only make the pre-build-events shorter, but not longer).
61
  Sometimes, some lines aren't even displayed!
62
  You have to edit the WPJ file with a text editor.
63
  Remember how many characters you have added or deleted,
64
  and subtract or add them to the number written above the before-instructions
65
  (currently 347). This is the number of bytes of the commands.
107 dmarschall 66
 
198 daniel-mar 67
- In the code, it is important that all variables are declared at the
68
  top of the scope (curly brackets) and that there is no executable code or
69
  assignments in between.
192 daniel-mar 70
 
198 daniel-mar 71
 
60 peter 72
Remarks
192 daniel-mar 73
-------
60 peter 74
 
192 daniel-mar 75
flex and bison are currently invoked as a batch process.
60 peter 76
This is defined in the menu File->Before.
192 daniel-mar 77
The IDE fails to build the project when filenames contain more than one dot.
61 peter 78
Therefore the output files of bison and lex are renamed.
60 peter 79
There is no error checking done.
80
Probably it would be better to write a small wmake file for this purpose.