Files
harbour-core/harbour/contrib/hbpost.hbm
Viktor Szakats 41e5bf2b5d 2011-05-09 21:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/Makefile
  + include/hbstrict.ch
  * contrib/hbpost.hbm
    + added experimental -u+ header to catch some common code style
      problems. currently IF() is caught, but it interferec with std.ch
      hbsix.ch and possibly more, so it's not enabled

  * config/global.mk
  * src/dynlib/2nd/Makefile
  * src/dynlib/Makefile
    * secondary harbour dynlib is now enabled by __HB_BUILD_DYN_2ND=yes
    * renamed secondary harbour dynlib to harbour2*
    + it's now possible (again) to build harbour .dll in ST mode by
      using __HB_BUILD_DYN_ST=yes. if used together with __HB_BUILD_DYN_2ND=yes,
      the secondary dynlib will be MT. (pls note the secondary dynlib 
      is never directly used by hbmk2, so it's there for mere build convenience
      only)

  * contrib/hbxbp/xbpmenubar.prg
  * contrib/hbxbp/xbprtf.prg
  * contrib/hbxbp/xbpfiledialog.prg
  * contrib/hbxbp/xbpprintdialog.prg
  * contrib/hbxbp/xbpscrollbar.prg
  * contrib/hbxbp/xbpprinter.prg
  * contrib/hbxbp/xbpdataref.prg
    ! IF() -> IIF() (with the help of hbstrict.ch)

  * contrib/hbformat/hbfmtcls.prg
    ! fixed mistakenly changed '==' to LEFTEQUAL() in prev commit
2011-05-09 19:46:56 +00:00

88 lines
4.1 KiB
Plaintext

#
# $Id$
#
# These are mandatory in Harbour SVN, they will always
# override project options.
"{HB_BUILD_PARTS='lib'&!hblib}-stop=! Skipped because HB_BUILD_PARTS=lib"
-prgflag=-w3
-prgflag=-es2
-prgflag=-kmo
-prgflag=-i-
#-prgflag=-u+hbstrict.ch
# It is also supported by official mingw 4.4.x and mingw64 4.4.x,
# but not supported by mingw tdm 4.4.x, so I only enable it on or
# above 4.5.0.
{win&allmingw&HB_COMP_VER>'44'}-ldflag=-Wl,--nxcompat
{win&allmingw&HB_COMP_VER>'44'}-ldflag=-Wl,--dynamicbase
{win&allmingw&HB_COMP_VER>'44'}-dflag=-Wl,--nxcompat
{win&allmingw&HB_COMP_VER>'44'}-dflag=-Wl,--dynamicbase
# MSVS 2005 SP1 also supports it, but we only enable it for 2008 and upper.
{win&allmsvc&HB_COMP_VER>'1400'}-ldflag=-nxcompat
{win&allmsvc&HB_COMP_VER>'1400'}-ldflag=-dynamicbase
{win&allmsvc&HB_COMP_VER>'1400'}-ldflag=-fixed:no
{win&allmsvc&HB_COMP_VER>'1400'}-dflag=-nxcompat
{win&allmsvc&HB_COMP_VER>'1400'}-dflag=-dynamicbase
-cflag=-DHB_LEGACY_TYPES_OFF
{allwin&!(__HB_BUILD_WINUNI='no')}-winuni
{HB_BUILD_DEBUG}-prgflag=-l-
{HB_BUILD_DEBUG}-debug
{HB_BUILD_DEBUG}-cflag=-DHB_TR_LEVEL_DEBUG
{(hbdyn|hbexe)&HB_BUILD_SHARED='yes'&!(HB_SYSLOC='yes')}-shared
{(hbdyn|hbexe)&HB_BUILD_SHARED='yes'&HB_SYSLOC='yes'}-fullshared
# dynamic lib creation settings
{_HB_BUILD_LIBDYN}-shared
{_HB_BUILD_LIBDYN}-implib=../lib/${hb_plat}/${hb_comp}${hb_build}/
{_HB_BUILD_LIBDYN&hb_dynsuffix}-implib=${hb_outputname}${hb_dynsuffix}
{_HB_BUILD_LIBDYN&!hb_dynsuffix}-implib=${hb_outputname}_dll
{_HB_BUILD_LIBDYN&unix&!cygwin}-ln=${hb_dynprefix}${hb_outputname}${hb_dynext}
{_HB_BUILD_LIBDYN&unix&!darwin&!cygwin}-ln=${hb_dynprefix}${hb_outputname}${hb_dynext}.${hb_major}.${hb_minor}
{_HB_BUILD_LIBDYN&unix&darwin}-ln=${hb_dynprefix}${hb_outputname}.${hb_major}.${hb_minor}${hb_dynext}
{_HB_BUILD_LIBDYN&(allwin|cygwin)}-lhbmaindllp
{_HB_BUILD_LIBDYN}-depimplib-
"{_HB_BUILD_LIBDYN&darwin}-dflag=-install_name '${hb_dynprefix}${hb_outputname}${hb_dynext}'"
"{_HB_BUILD_LIBDYN&darwin}-dflag=-compatibility_version ${hb_major}.${hb_minor}"
"{_HB_BUILD_LIBDYN&darwin}-dflag=-current_version ${hb_major}.${hb_minor}.${hb_release}"
"{_HB_BUILD_LIBDYN&linux}-dflag=-Wl,-soname,${hb_dynprefix}${hb_outputname}${hb_dynext}.${hb_major}.${hb_minor}"
"{_HB_BUILD_LIBDYN&sunos}-dflag=-Wl,-h,${hb_dynprefix}${hb_outputname}${hb_dynext}.${hb_major}.${hb_minor}"
# output name tweaks for dynamic libs
# NOTE: We're altering previously set output name value here
{hbdyn&unix&!darwin&!cygwin}-o${hb_outputname}${hb_dynext}.${hb_major}.${hb_minor}.${hb_release}
{hbdyn&unix&darwin}-o${hb_outputname}.${hb_major}.${hb_minor}.${hb_release}${hb_dynext}
{hbdyn&unix&cygwin}-o${hb_outputname}${hb_dynext}
{hbdyn&!unix&allwin}-o${hb_outputname}-${hb_major}${hb_minor}${hb_dynsuffix}
{hbdyn&!unix&!allwin}-o${hb_outputname}${hb_dynsuffix}
# output dir (in sync with GNU Make)
{hblib}-o../lib/${hb_plat}/${hb_comp}${hb_build}/
{hbexe}-o../bin/${hb_plat}/${hb_comp}${hb_build}/
{hbdyn&unix&!cygwin}-o../lib/${hb_plat}/${hb_comp}${hb_build}/
{hbdyn&(cygwin|!unix)}-o../bin/${hb_plat}/${hb_comp}${hb_build}/
# workdir (in sync with GNU Make)
{hblib}-workdir=../lib/${hb_plat}/${hb_comp}${hb_build}/${hb_work}/${hb_outputname}${hb_workdynsub}
{hbexe}-workdir=../bin/${hb_plat}/${hb_comp}${hb_build}/${hb_work}/${hb_outputname}${hb_workdynsub}
{hbdyn&unix&!cygwin}-workdir=../lib/${hb_plat}/${hb_comp}${hb_build}/${hb_work}/${hb_outputname}${hb_workdynsub}
{hbdyn&(cygwin|!unix)}-workdir=../bin/${hb_plat}/${hb_comp}${hb_build}/${hb_work}/${hb_outputname}${hb_workdynsub}
# install
{_HB_BUILD_INSTALL&_HB_INSTALL_LIB&hblib}-instpath=${_HB_INSTALL_LIB}/
{_HB_BUILD_INSTALL&_HB_INSTALL_BIN&hbexe}-instpath=${_HB_INSTALL_BIN}/
{_HB_BUILD_INSTALL&_HB_INSTALL_DYN&hbdyn}-instpath=${_HB_INSTALL_DYN}/
{_HB_BUILD_INSTALL&_HB_INSTALL_INC&hblib}-instpath=inc:${_HB_INSTALL_INC}/
{_HB_BUILD_INSTALL&_HB_INSTALL_LIB}-instpath=implib:${_HB_INSTALL_LIB}/
{_HB_BUILD_INSTALL&_HB_INSTALL_ETC}-instpath=etc:${_HB_INSTALL_ETC}/
{_HB_BUILD_INSTALL&_HB_INSTALL_MAN}-instpath=man:${_HB_INSTALL_MAN}/
{_HB_BUILD_INSTALL&_HB_INSTALL_LIB&HB_INSTALL_IMPLIB='yes'}-instpath=depimplib:${_HB_INSTALL_LIB}/
{_HB_BUILD_INSTALL}-instforce