make-w32
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Sources build file for buildning GNU make with Windows DDK


From: Jerker Bäck
Subject: Sources build file for buildning GNU make with Windows DDK
Date: Thu, 28 Apr 2005 16:40:28 +0200

Hello Win32 GNU make users

I post my "sources" file if anyone is interested in this.

This will create a binary linked to the offical Windows C runtime library
msvcrt.dll. Default optimized for size: /Oxs /Oy /opt:ref /opt:icf
/opt:nowin98

How I did:
1) Create a subdir "winddk"
2) Put the "sources" and "makefile" in winddk
3) Optional create a make.rc file
4) Create hardlinks (or copy) the following to winddk
        fnmatch.c
        glob.c
        dirent.c
        pathstuff.c
        misc2.c
        sub_proc.c
        w32err.c
  Ex: "fsutil hardlink create misc2.c ..\w32\subproc\misc.c"
5) Start a DDK "Free build Environment"
6) change dir to winddk
7) type "build"

<-------------- Start of "sources"

# build file for Windows DDK utility build.exe 
# tested for Windows 2003 DDK by Jerker Bäck in april 2005
# Note: By design of build.exe, source files MUST be in the same or 
#       parent folder of the "sources" file.
# All compiler warnings must be fixed or disabled. 
# Ex: compiler switch /wd4100 /wd4127

# ---- names and paths ----
SRCDIR=..
ROOTDIR=..
HOMEDIR=winddk

TARGETNAME=make
TARGETTYPE=PROGRAM
TARGETPATH=$(ROOTDIR)\bin
TARGETPATHLIB=$(ROOTDIR)\lib
INCDIR=$(ROOTDIR)\w32\include;$(ROOTDIR)\w32\subproc;$(ROOTDIR)\glob

# ---- compiler settings ----
UMTYPE=console
WIN32_WINNT_VERSION=0x0400
INCLUDES=\.;$(INCDIR);$(SRCDIR)
MSC_WARNING_LEVEL=/W4
PROJECT_COMPILER_WARNINGS=/FI$(HOMEDIR)\vc_defs.h
USER_C_FLAGS=/D"WINDOWS32" /D"HAVE_CONFIG_H"

# ---- linker settings ----
USE_MSVCRT=1
LINKER_FLAGS=$(LINKER_FLAGS) /ignore:4199

TARGETLIBS= \
#       $(TARGETPATHLIB)\*\subproc.lib    \
#       $(SDK_LIB_PATH)\user32.lib        \
        $(SDK_LIB_PATH)\oldnames.lib

# ---- project files ----
SOURCES= \
        make.rc                   \
        $(SRCDIR)\ar.c            \
        $(SRCDIR)\arscan.c        \
        $(SRCDIR)\commands.c      \
        $(SRCDIR)\default.c       \
        $(SRCDIR)\dir.c           \
        $(SRCDIR)\expand.c        \
        $(SRCDIR)\file.c          \
        $(SRCDIR)\function.c      \
        $(SRCDIR)\getloadavg.c    \
        $(SRCDIR)\getopt.c        \
        $(SRCDIR)\getopt1.c       \
        $(SRCDIR)\hash.c          \
        $(SRCDIR)\implicit.c      \
        $(SRCDIR)\job.c           \
        $(SRCDIR)\main.c          \
        $(SRCDIR)\misc.c          \
        $(SRCDIR)\read.c          \
        $(SRCDIR)\remake.c        \
        $(SRCDIR)\remote-stub.c   \
        $(SRCDIR)\rule.c          \
        $(SRCDIR)\signame.c       \
        $(SRCDIR)\variable.c      \
        $(SRCDIR)\version.c       \
        $(SRCDIR)\vpath.c         \
        fnmatch.c                 \
        glob.c                    \
        dirent.c                  \
        pathstuff.c               \
        misc2.c                   \
        sub_proc.c                \
        w32err.c

# Note: Make hardlinks to the last 7 files to HOMEDIR (ie winddk)

-------> End of "sources"



<------ Start of "makefile"

!INCLUDE $(NTMAKEENV)\makefile.def

-------> End of "makefile"


Enjoy
Jerker Bäck 






reply via email to

[Prev in Thread] Current Thread [Next in Thread]