Windows OMF support has been removed (for DMD v2.109.0).

This commit is contained in:
haru-s 2024-06-18 22:55:35 +09:00
parent 93c976c123
commit 5fa5f9a50a
17 changed files with 12 additions and 41 deletions

View file

@ -4,8 +4,9 @@ This unofficial project is a migration of [D Forms Library (DFL)](http://wiki.dp
DFL is a Win32 windowing library for the D language.
## Recent major features
- **Windows OMF support has been removed (for DMD v2.109.0).**
- **Registered DFL to DUB.**
- **Support multiple screens.**
- Supported multiple screens.
- Module "dfl.chart" is now comming.
- TableRenderer (with example)
- LineGraphRenderer (with example)
@ -76,11 +77,11 @@ set dmc_path=c:\dmc\dm
### 2. Install the undeaD library
DFL is required the undeaD library (**undead.lib**).
Download a ZIP file from https://github.com/dlang/undead.
Extract **undeaD-master.zip** and run the below with either option `-a=x86_omf`, `-a=x86_32mscoff` or `-a=x86_64`:
Extract **undeaD-master.zip** and run the below with either option `-a=x86_mscoff` or `-a=x86_64`:
```bat
> cd undeaD-master
> dub build -a=x86_omf
Starting Performing "debug" build using C:\D\dmd2\windows\bin\dmd.exe for x86, x86_omf.
> dub build -a=x86_64
Starting Performing "debug" build using C:\D\dmd2\windows\bin\dmd.exe for x86_64.
Up-to-date undead ~master: target for configuration [library] is up to date.
> dir bin /b
undead.lib
@ -88,13 +89,9 @@ undead.lib
Copy the **undead.lib** to `your/lib/dir`.
### 3. Make dfl.lib and dfl_debug.lib
Run **makelib.bat**:
Run **makelib.bat** (MSVC required):
```bat
> cd dfl/win32/dfl
> makelib.bat 32omf # 32-bit omf
```
or (MSVC required)
```bat
> makelib.bat # 32-bit mscoff
```
or (MSVC required)
@ -105,12 +102,11 @@ or (MSVC required)
```bat
> makelib.bat 64 # 64-bit mscoff
```
Also copy **dfl.lib** and **dfl_debug.lib** to `your/lib/dir`.
Also copy **dfl.lib** and **dfl_debug.lib** in `dfl/source` to `your/lib/dir`.
**IMPORTANT**: Both library files are containing the **undead.lib** and WINSDK libraries such as **user32.lib**, **gdi32.lib** and so on.
In order to make and move *.lib to paths below:
- **go32omf.bat** : Make and move *.lib to `%dmd_path%\lib`
- **go.bat** (MSVC required) : Make and move *.lib to `%dmd_path%\lib32mscoff`
- **go.bat 32mscoff** (MSVC required) : ditto
- **go64.bat** (MSVC required) : Make and move *.lib to `%dmd_path%\lib64`

View file

@ -1,4 +0,0 @@
pushd source
dmd -m32omf -L/exet:nt/su:windows:4.0 hello_dfl.d
hello_dfl.exe
popd

1
go.bat
View file

@ -1,7 +1,6 @@
@rem How to use:
@rem go.bat # Same as 32mscoff
@rem go.bat 32mscoff # 32-Bit COFF
@rem go.bat 32omf # 32-bit OMF
@rem go.bat 64 # 64-Bit
call makelib "%~1"

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -1,10 +0,0 @@
Windows SDK Libraries from \dmd2\windows\lib
advapi32.lib
COMCTL32.LIB
comdlg32.lib
gdi32.lib
ole32.lib
OLEAUT32.LIB
shell32.lib
user32.lib
WS2_32.LIB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -1,5 +1,5 @@
@rem Make DFL.
@rem http://www.dprogramming.com/dfl.php
@rem https://github.com/Rayerd/dfl
@rem Modified for 64-bit and COFF object format
@rem How to use:

View file

@ -1,5 +1,5 @@
@rem Make DFL.
@rem http://www.dprogramming.com/dfl.php
@rem https://github.com/Rayerd/dfl
@rem Requires DMD and DMC's libs
@rem Free downloads from https://dlang.org/download.html
@ -7,7 +7,6 @@
@rem How to use:
@rem makelib.bat # Same as 32mscoff
@rem makelib.bat 32mscoff # 32-Bit COFF
@rem makelib.bat 32omf # 32-bit OMF
@rem makelib.bat 64 # 64-Bit
@if "%~1" == "64" (
@ -23,7 +22,9 @@
goto done
)
@if "%~1" == "32omf" (
set dmd_omf_flag=-m32omf
@echo.
@echo '32omf' is already invalid option.
goto done
) else (
set dmd_omf_flag=
)

View file

@ -1,11 +0,0 @@
@goto done
@set _dlib_save89824=%dlib%
@set dlib=Tango
@call makelib.bat
@set dlib=%_dlib_save89824%
:done
@echo Now, DFL with Tango library is not work.