internals:cmake:status

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
internals:cmake:status [2008/07/05 18:33] – added some php macros defined in acinclude.m4 part I gloobinternals:cmake:status [2017/09/22 13:28] (current) – external edit 127.0.0.1
Line 6: Line 6:
 ===== TODO ===== ===== TODO =====
  
-  * Tests in differents platforms 
   * Extensions   * Extensions
   * Libraries detections for extensions   * Libraries detections for extensions
 +    * Resolve internal_functions.* relations with extensions.
   * User selection   * User selection
 +    * Using option() cmake feature. We need to provide user selection like autotools (--enable-[ext]) with a script.
 +  * phpize support.
   * Win32 support   * Win32 support
   * CDash hook   * CDash hook
   * CTest   * CTest
   * CPack   * CPack
 +  * Tests in differents platforms
  
 ===== Milestone ===== ===== Milestone =====
  
   * ~ May 21   * ~ May 21
-Analysis and information gathering. Investigate PHP project dependencies with autotools. Analysis of CMake. Use and analysis of am2cmake/vcproj2cmake.rb and other automatic converters from Autotools to CMake. Collect info about KDE experience with CMake.+~~Analysis and information gathering. Investigate PHP project dependencies with autotools. Analysis of CMake. Use and analysis of am2cmake/vcproj2cmake.rb and other automatic converters from Autotools to CMake. Collect info about KDE experience with CMake.~~
  
   * ~ July 15   * ~ July 15
Line 26: Line 29:
 Export and test of CMake project for PHP to other operative system like Windows, MacOS. Export and test of CMake project for PHP to other operative system like Windows, MacOS.
  
- 
-===== Notes ===== 
- 
-==== Linux buildchain ==== 
- 
- 
-  * buildconf 
-    Shell script to recreate user tarball, two options --force and --debug, if --$force regenerate anyway, if debug only add SUPPRESS_WARNINGS="" to make invocation. Extract version from `grep '^PHP_EXTRA_VERSION=' configure.in` to check if is dev, and check Zend directory to check if is Zend v1 or Zend v2 (this is deprecated?) At end call make -s -f build/build.mk ZENDDIR=Zend 
- 
-  * build/build.mk 
-    * ($STAMP) - call buildcheck.sh (check autoconf version > 2.13 and inform) 
-    * ($ALWAYS) == generated_lists - makefile_am_files, config_h_files, config_m4_files >> generated_lists  
-    * (action) call build/build2.mk - all: mkinstalldirs install-sh missing configure main/php_config.h.in 
-      * touch mkinstalldirs install-sh missing 
-      * cat acinclude.m4 ./build/libtool.m4 > aclocal.m4 
-      * autoconf (to regenerate ./configure) 
-      * autoheader (to regenerate acconfig.h) 
-    * Ready to configure. 
- 
-At this step generated files are: 
-<code> 
-? acconfig.h 
-? aclocal.m4 
-? autom4te.cache/output.0 
-? autom4te.cache/requests 
-? autom4te.cache/traces.0 
-? configure 
-? generated_lists 
-? install-sh 
-? main/php_config.h.in 
-? missing 
-? mkinstalldirs 
-</code> 
- 
-  * ./configure 
- 
-<code> 
-? Makefile 
-? Makefile.fragments 
-? Makefile.objects 
-? TSRM/tsrm_config.h 
-? Zend/zend_config.h 
-? config.log 
-? config.nice 
-? config.status 
-? ext/date/lib/timelib_config.h 
-? ext/iconv/php_have_bsd_iconv.h 
-? ext/iconv/php_have_glibc_iconv.h 
-? ext/iconv/php_have_ibm_iconv.h 
-? ext/iconv/php_have_iconv.h 
-? ext/iconv/php_have_libiconv.h 
-? ext/iconv/php_iconv_supports_errno.h 
-? ext/iconv/php_php_iconv_h_path.h 
-? ext/iconv/php_php_iconv_impl.h 
-? ext/pdo_sqlite/sqlite/src/config.h 
-? ext/pdo_sqlite/sqlite/src/sqlite3.h 
-? ext/sqlite/libsqlite/src/config.h 
-? ext/sqlite/libsqlite/src/sqlite.h 
-? libtool 
-? main/build-defs.h 
-? main/internal_functions.c 
-? main/internal_functions_cli.c 
-? main/php_config.h 
-? php5.spec 
-? sapi/cli/php.1 
-? scripts/man1/php-config.1 
-? scripts/man1/phpize.1 
-? scripts/php-config 
-? scripts/phpize 
-</code> 
- 
-==== Windows buildchain ==== 
- 
-    * Windows side: buildconf.bat execute -> cscript /nologo win32\build\buildconf.js %*, Javascript script that build the configure.js. 
- 
-===== Components ===== 
- 
-==== Zend ==== 
- 
-  * Zend/Makefile.am 
-  * Zend/acconfig.h 
-  * Zend/Zend.m4 
- 
-<code> 
-Configuring Zend 
-checking for bison version... (cached) 2.3 (ok) 
-checking for inttypes.h... (cached) yes 
-checking for stdint.h... (cached) yes 
-checking for limits.h... (cached) yes 
-checking malloc.h usability... yes 
-checking malloc.h presence... yes 
-checking for malloc.h... yes 
-checking for string.h... (cached) yes 
-checking for unistd.h... (cached) yes 
-checking for stdarg.h... (cached) yes 
-checking for sys/types.h... (cached) yes 
-checking for sys/time.h... (cached) yes 
-checking for signal.h... (cached) yes 
-checking for unix.h... (cached) no 
-checking for stdlib.h... (cached) yes 
-checking for dlfcn.h... (cached) yes 
-checking for mach-o/dyld.h... (cached) no 
-checking for size_t... (cached) yes 
-checking return type of signal handlers... void 
-checking for uint... yes 
-checking for ulong... yes 
-checking for int32_t... yes 
-checking for uint32_t... yes 
-checking for vprintf... (cached) yes 
-checking for _doprnt... (cached) no 
-checking for working memcmp... yes 
-checking for working alloca.h... (cached) yes 
-checking for alloca... (cached) yes 
-checking for memcpy... (cached) yes 
-checking for strdup... (cached) yes 
-checking for getpid... yes 
-checking for kill... yes 
-checking for strtod... yes 
-checking for strtol... yes 
-checking for finite... yes 
-checking for fpclass... (cached) no 
-checking for sigsetjmp... no 
-checking whether sprintf is broken... no 
-checking for finite... (cached) yes 
-checking for isfinite... no 
-checking for isinf... (cached) yes 
-checking for isnan... (cached) yes 
-checking whether fp_except is defined... no 
-checking for dlfcn.h... (cached) yes 
-checking whether dlsym() requires a leading underscore in symbol names... no 
-checking virtual machine dispatch method... CALL 
-checking whether to enable thread-safety... no 
-checking whether to enable inline optimization for GCC... yes 
-checking whether to enable Zend debugging... no 
-checking for inline... inline 
-checking target system is Darwin... no 
-checking for MM alignment and log values... done 
-checking for memory allocation using mmap(MAP_ANON)... yes 
-checking for memory allocation using mmap("/dev/zero")... yes 
-checking for mremap... yes 
-</code> 
- 
-Generated post-configued: 
-  * zend_config.h 
- 
- 
-==== configure.in ==== 
- 
-  * [[.:Zend:acinclude.m4 | Zend/acinclude.m4]] (Zend specific macro definitions) 
-  * PHP_CONFIG_NICE(config.nice) - ?? 
-  * PHP_CANONICAL_HOST_TARGET 
-  * AC_CONFIG_HEADER(main/php_config.h) 
- 
-  * PHP_MAJOR_VERSION=5 
-  * PHP_MINOR_VERSION=3 
-  * PHP_RELEASE_VERSION=0 
-  * PHP_EXTRA_VERSION="-dev" 
-  * PHP_VERSION="$PHP_MAJOR_VERSION.$PHP_MINOR_VERSION.$PHP_RELEASE_VERSION$PHP_EXTRA_VERSION" 
-  * PHP_VERSION_ID=`expr [$]PHP_MAJOR_VERSION \* 10000 + [$]PHP_MINOR_VERSION \* 100 + [$]PHP_RELEASE_VERSION` 
- 
- 
-==== Extension PHP Macros ==== 
- 
-  * PHP_ARG_WITH() 
-  * PHP_ARG_ENABLE() 
-  * PHP_ADD_INCLUDE() 
-  * PHP_CHECK_LIBRARY() 
-  * PHP_ADD_LIBRARY_WITH_PATH() 
-  * PHP_SUBST() 
-  * PHP_NEW_EXTENSION() 
-  * PHP_ADD_BUILD_DIR() 
-  * PHP_ADD_MAKEFILE_FRAGMENT() 
- 
-==== acinclude.m4 Macros ==== 
- 
-=== Output stylize macros for configure (help/runtime) === 
- 
-  * <del>PHP_HELP_SEPARATOR(title)</del> - Adds separator title into the configure --help display. 
-  * <del>PHP_CONFIGURE_PART(title)</del> - Adds separator title configure output. 
- 
-=== Build system helper macros === 
- 
-  * PHP_DEF_HAVE(what) - Generates 'AC_DEFINE(HAVE_WHAT, 1, [ ])'. 
-  * PHP_RUN_ONCE(namespace, variable, code) - execute code, if variable is not set in namespace. 
-  * <del>PHP_EXPAND_PATH(path, variable)</del> - expands path to an absolute path and assigns it to variable. 
-  * PHP_DEFINE(WHAT [, value[, directory]]) - Creates builddir/include/what.h and in there #define WHAT value. 
-  * PHP_SUBST(varname) - Adds variable with it's value into Makefile, e.g.: CC = gcc 
-  * PHP_SUBST_OLD(varname) - Same as PHP_SUBST() but also substitutes all @VARNAME@ instances in every file passed to AC_OUTPUT() 
-  * PHP_OUTPUT(file) - Adds "file" to the list of files generated by AC_OUTPUT 
- 
-=== Build system base macros === 
-   
-  * <del>PHP_CANONICAL_HOST_TARGET</del>  
-  * <del>PHP_INIT_BUILD_SYSTEM</del> 
-  * PHP_GEN_GLOBAL_MAKEFILE 
-  * PHP_ADD_MAKEFILE_FRAGMENT([srcfile [, ext_srcdir [, ext_builddir]]]) 
-  * PHP_ADD_SOURCES(source-path, sources [, special-flags [, type]]) 
-   
-=== Compiler characteristics checks === 
- 
-  * PHP_TARGET_RDYNAMIC - Checks whether -rdynamic is supported by the compiler.  This is necessary for some targets to populate the global symbol table.  Otherwise, dynamic modules would not be able to resolve PHP-related symbols. If successful, adds -rdynamic to PHP_LDFLAGS. 
-  * PHP_RUNPATH_SWITCH - Checks for -R, etc. switch. 
-  * PHP_CHECK_GCC_ARG(arg, action-if-found, action-if-not-found) 
-  * PHP_LIBGCC_LIBPATH(gcc) - Stores the location of libgcc in libgcc_libpath 
- 
-=== Macros to modify LIBS, INCLUDES, etc. variables === 
- 
-  * PHP_REMOVE_USR_LIB(NAME) - Removes all -L/usr/$PHP_LIBDIR entries from variable NAME 
-  * PHP_EVAL_LIBLINE(libline, SHARED-LIBADD) - Use this macro, if you need to add libraries and or library search paths to the PHP build system which are only given in compiler notation. 
-  * PHP_EVAL_INCLINE(headerline) - Use this macro, if you need to add header search paths to the PHP build system which are only given in compiler notation. 
-  * PHP_ADD_LIBPATH(path [, SHARED-LIBADD]) - Adds a path to linkpath/runpath (LDFLAGS) 
-  * PHP_UTILIZE_RPATHS() - builds RPATHS/LDFLAGS from PHP_RPATHS 
-  * PHP_ADD_INCLUDE(path [,before]) - add an include path. if before is 1, add in the beginning of INCLUDES. 
-  * PHP_ADD_LIBRARY(library[, append[, shared-libadd]]) - add a library to the link line 
internals/cmake/status.1215282794.txt.gz · Last modified: 2017/09/22 13:28 (external edit)