Rev 108 | Rev 193 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
60 | peter | 1 | |
107 | dmarschall | 2 | BUILDING FILTER FOUNDRY ON OPENWATCOM |
3 | by Peter Heckert and Daniel Marschall |
||
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 | |
61 | peter | 24 | 4) SVN client |
192 | daniel-mar | 25 | Get an SVN client, e.g. TortoiseSVN: |
26 | https://tortoisesvn.net/downloads.html |
||
27 | Make sure you include the command line tools during the install. |
||
60 | peter | 28 | |
107 | dmarschall | 29 | |
192 | daniel-mar | 30 | How to get FilterFoundry |
31 | ------------------------ |
||
60 | peter | 32 | |
192 | daniel-mar | 33 | Make a directory anywhere (e.g. C:\FilterFoundry\) for telegraphics plugins, |
34 | then open the command line and type: |
||
35 | cd /d "C:\FilterFoundry\" |
||
36 | svn checkout https://www.telegraphics.com.au/svn/common/trunk common |
||
37 | svn checkout https://www.telegraphics.com.au/svn/filterfoundry/trunk filterfoundry |
||
60 | peter | 38 | |
192 | daniel-mar | 39 | In our example, you should now have the directories |
40 | C:\FilterFoundry\common\ |
||
41 | C:\FilterFoundry\filterfoundry\ |
||
107 | dmarschall | 42 | |
192 | daniel-mar | 43 | IMPORTANT: Your path must not contain whitespaces! |
44 | For example, you must not use "C:\Users\John Doe\SVN\Filter Foundry\". |
||
107 | dmarschall | 45 | |
60 | peter | 46 | |
192 | daniel-mar | 47 | Build setup |
48 | ----------- |
||
60 | peter | 49 | |
192 | daniel-mar | 50 | There is no special build setup required. |
51 | Just open wpj\filterfoundry.wpj in Watcom's IDE |
||
52 | and click "Make target". |
||
60 | peter | 53 | |
107 | dmarschall | 54 | |
192 | daniel-mar | 55 | Troubleshooting |
56 | --------------- |
||
107 | dmarschall | 57 | |
192 | daniel-mar | 58 | - Please make sure that you must not have whitespaces in the pathname. |
107 | dmarschall | 59 | |
60 | - If you get the error message "Fatal Error! 62: Unable to open 'sdkddkver.h'", please open |
||
61 | pluginsdk\photoshopapi\photoshop\PITypes.h in your Adobe Photoshop SDK and |
||
108 | dmarschall | 62 | comment out the line "#include <sdkddkver.h> // for WINVER". |
63 | Alternatively, you can use an older version of the Photoshop SDK, or create an empty |
||
64 | sdkddkver.h file in your wpj folder. |
||
107 | dmarschall | 65 | |
66 | - It is important that the correct calling convention is used. |
||
67 | The calling convention needs to be set in |
||
68 | Options -> C Compiler Switches -> Memory Model and Processor Switches. |
||
69 | There, select "Pentium Pro stack-based calling" (default is "Pentium Pro register based calling"). |
||
70 | The wpj project should already have this setting applied. |
||
71 | |||
72 | - If you receive the error message "lex.yy.c(580): Error! E1009: Expecting ';' but found '1'", |
||
73 | check if the compiler directive "YY_SKIP_YYWRAP" is set. |
||
192 | daniel-mar | 74 | Go to Options -> C Compiler Switches -> Source switches, and add YY_SKIP_YYWRAP=1 . |
107 | dmarschall | 75 | The wpj project should already have this setting applied. |
76 | |||
192 | daniel-mar | 77 | - The path to the Photoshop SDK and to Win Flex/Bison (PreBuild event) |
78 | is already set in the project file. Please note that changing these |
||
79 | paths is a bit complicated. There are several bugs in OpenWatcom |
||
80 | where you can only make the pre-build-events shorter, but not longer). |
||
81 | Sometimes, some lines aren't even displayed! |
||
82 | You have to edit the WPJ file with a text editor. |
||
83 | Remember how many characters you have added or deleted, |
||
84 | and subtract or add them to the number written above the before-instructions |
||
85 | (currently 347). This is the number of bytes of the commands. |
||
107 | dmarschall | 86 | |
192 | daniel-mar | 87 | |
60 | peter | 88 | Remarks |
192 | daniel-mar | 89 | ------- |
60 | peter | 90 | |
192 | daniel-mar | 91 | flex and bison are currently invoked as a batch process. |
60 | peter | 92 | This is defined in the menu File->Before. |
192 | daniel-mar | 93 | The IDE fails to build the project when filenames contain more than one dot. |
61 | peter | 94 | Therefore the output files of bison and lex are renamed. |
60 | peter | 95 | There is no error checking done. |
96 | Probably it would be better to write a small wmake file for this purpose. |