internals:windows:todo

This is an old revision of the document!


Todo

Library Stuff

  1. Decide if we will distribute, third party but we will build/distribute, and third party we can't touch them
  2. Build and distribute libs (and source/makefiles/etc)
  3. Update on a regular basis with new libs
  4. Keep version information and dates current with new builds
  5. recruit additional help with building libraries
  6. Document the process of getting a new library in our build systems (rules, naming, platform support, etc.)

Code

  1. Compiler warning killing spree (Kalle)
  2. lower deprecation to _CRT_SECURE_NO_DEPRECATE _CRT_NONSTDC_NO_DEPRECATE instead of /wd4996 - and kill new warnings
  3. remove no deprecate warnings and fix core to use new API (probably not until 6.0)
  4. get 6.0 compiling with unicode flag? (that would be fun)
  5. Code audit for problem areas (streams/sockets and process control are two that come to mind)

Missing function implementations

Compiler warnings

Linker etc. warnings

  • ext/gettext: generates a MSIL .netmodule or module compiled with /GL; add /LTCG to the link command line to improve linker performance
  • ext/gd: generates a LNK4098 (default lib conflicts with use of other libs)
  • ext/iconv: generates a MSIL .netmodule or module compiled with /GL; add /LTCG to the linker command line to improve linker performance
  • ext/xmlreader: generates two LNK4049 (locally defined symbol imported)
  • sapi/cli: readline generates U4004 (too many rules for target)
  • sapi/embed: generates multiple LNK4044 (unrecognized option)

Configure system

  1. equivalent of phpize on windows (one extension configure/compile)
  2. configs for extensions that can be done for windows (ncurses et al)

PHP Build Box

  1. create release build system
  2. move all pecl extension building to pecl (pecl snaps on pecl)

PECL Build Box

  1. Get builds going for snaps (SVN versions), release versions, and alpha/beta if applicable

Windows GCOV Box

  1. Auto building and testing similar to gcov, only for windows

Documentation

  1. Update the official Windows build documentation
  2. Update the PECL on Windows documentation
  3. Update related FAQs: (obtaining libraries and compiling needs)
  4. A recent post about installation doc needs
internals/windows/todo.1302087566.txt.gz · Last modified: 2017/09/22 13:28 (external edit)