OpenVMS Source Code Demos

mysql_demo2_build.com

Note: these three DCL scripts show how to build "mysql_demo02.c" for different OpenVMS environments


program script OpenVMS environment
1 mysql_demo02.c mysql_demo02_berryman_mariadb_build.com Mariadb from Mark Berryman
2 mysql_demo02.c mysql_demo02_vsi_libmaria_build.com LibMariaDB from VSI
3 mysql_demo02.c mysql_demo02_vsi_mariadb_build.com mariadb-5.5-63 from VSI

mysql_demo02_berryman_mariadb_build.com

$!===================================================================
$! title   : mysql_demo02_berryman_mariadb_build.com
$! author  : Neil Rieck
$! edit    : 2024-04-18
$! platform: OpenVMS-8.4 Itanium
$! notes   :
$! 1) builds mysql_demo02.c (links to Mark Berrman's libraries)
$! 2) hack to test linking to system-wide ssl libraries
$!===================================================================
$ say :== write sys$output
$ say "-i-compiling"
$ cc    mysql_demo02.c                -
        /pointer=32                   -
        /nolist                       -
        /names=(as_is,shorten)        -
        /include=MYSQL055_ROOT:[include.mysql]
$ say "-i-linking"
$ link mysql_demo02                   -
        /noMAP                        -
        /noINFORMARIONAL              -
        , sys$input/options
            MYSQL055_ROOT:[lib.ia64]libclientlib.olb/library
            MYSQL055_ROOT:[lib.ia64]libmysys.olb/library
        !   MYSQL055_ROOT:[lib.ia64]libsql.olb/library          ! not required here
            MYSQL055_ROOT:[lib.ia64]libstrings.olb/library
            MYSQL055_ROOT:[lib.ia64]libvio.olb/library
            MYSQL055_ROOT:[lib.ia64]libz.olb/library
            MYSQL055_ROOT:[lib.ia64]ssl_libssl32.olb/library    ! pass (Mark's Lib)
            MYSQL055_ROOT:[lib.ia64]ssl_libcrypto32.olb/library ! pass (Mark's Lib)
        !   sys$library:SSL_LIBSSL_SHR32.EXE/share              ! pass
        !   sys$library:SSL_LIBCRYPTO_SHR32.EXE/share           ! pass
        !   sys$library:SSL$LIBSSL_SHR32.EXE/share              ! fail
        !   sys$library:SSL$LIBCRYPTO_SHR32.EXE/share           ! fail
        !   sys$library:SSL1$LIBSSL_SHR32.EXE/share             ! fail
        !   sys$library:SSL1$LIBCRYPTO_SHR32.EXE/share          ! fail
        !   sys$library:SSL111$LIBSSL_SHR32.EXE/share           ! fail
        !   sys$library:SSL111$LIBCRYPTO_SHR32.EXE/share        ! fail
        !   sys$library:SSL31$LIBSSL_SHR32.EXE/share            ! fail
        !   sys$library:SSL31$LIBCRYPTO_SHR32.EXE/share         ! fail
$!
$ say "-i-done"
$! this is the last line
$!===================================================================

mysql_demo02_vsi_libmaria_build.com

$!===================================================================
$! title   : mysql_demo02_vsi_libmaria_build.com
$! author  : Neil Rieck
$! edit    : 2024-04-18
$! platform: OpenVMS-8.4 Itanium
$! notes   :
$! 1) builds mysql_demo02.c (links to LibMariaDB v3 from VSI)
$! 2) hack to test linking to system-wide ssl libraries
$!===================================================================
$ say :== write sys$output
$ say "-i-compiling"
$ cc    mysql_demo02.c                -
        /pointer=32                   -
        /nolist                       -
        /names=(as_is,shorten)        -
        /include=LIBMARIADB$ROOT:[include]
$ say "-i-linking"
$ link mysql_demo02                   -
        /noMAP                        -
        /noINFORMARIONAL              -
        , sys$input/options
            LIBMARIADB$ROOT:[lib]libmariadb.olb/library
            LIBMARIADB$ROOT:[lib]libz.olb/library
	    LIBMARIADB$ROOT:libmariadb$shr.exe/share		! this share provides ssl
        !   sys$library:SSL_LIBSSL_SHR32.EXE/share              ! fail
        !   sys$library:SSL_LIBCRYPTO_SHR32.EXE/share           ! fail
        !   sys$library:SSL$LIBSSL_SHR32.EXE/share              ! fail
        !   sys$library:SSL$LIBCRYPTO_SHR32.EXE/share           ! fail
        !   sys$library:SSL1$LIBSSL_SHR32.EXE/share             ! fail
        !   sys$library:SSL1$LIBCRYPTO_SHR32.EXE/share          ! fail
        !   sys$library:SSL111$LIBSSL_SHR32.EXE/share           ! pass
        !   sys$library:SSL111$LIBCRYPTO_SHR32.EXE/share        ! pass
        !   sys$library:SSL31$LIBSSL_SHR32.EXE/share            ! almost works
        !   sys$library:SSL31$LIBCRYPTO_SHR32.EXE/share         ! almost works
$!
$ say "-i-done"
$! this is the last line
$!===================================================================

mysql_demo02_vsi_mariadb_build.com

$!===================================================================
$! title   : mysql_demo02_vsi_mariadb_build.com
$! author  : Neil Rieck
$! edit    : 2024-04-18
$! platform: OpenVMS-8.4 Itanium
$! notes   :
$! 1) builds mysql_demo2.c (linked to mariadb from VSI)
$! 2) hack to test linking to system-wide ssl libraries
$!===================================================================
$ say :== write sys$output
$ say "-i-compiling"
$ cc    mysql_demo02.c                -
        /pointer=32                   -
        /nolist                       -
        /names=(as_is,shorten)        -
        /include=MARIADB$ROOT:[include.mysql]
$ say "-i-linking"
$ link mysql_demo02                   -
        /noMAP                        -
        /noINFORMARIONAL              -
        , sys$input/options
            MARIADB$ROOT:[lib]libclientlib.olb/library
            MARIADB$ROOT:[lib]libmysys.olb/library
        !   MARIADB$ROOT:[lib]libsql.olb/library        ! not required here
            MARIADB$ROOT:[lib]libstrings.olb/library
            MARIADB$ROOT:[lib]libvio.olb/library
            MARIADB$ROOT:[lib]libz32.olb/library
	    MARIADB$ROOT:[LIB]MARIADB$CLIENT_SHR.EXE/share	! use this in place of SSL files
        !   sys$library:SSL_LIBSSL_SHR32.EXE/share              ! pass
        !   sys$library:SSL_LIBCRYPTO_SHR32.EXE/share           ! pass
        !   sys$library:SSL$LIBSSL_SHR32.EXE/share              ! pass
        !   sys$library:SSL$LIBCRYPTO_SHR32.EXE/share           ! pass
        !   sys$library:SSL1$LIBSSL_SHR32.EXE/share             ! fail
        !   sys$library:SSL1$LIBCRYPTO_SHR32.EXE/share          ! fail
        !   sys$library:SSL111$LIBSSL_SHR32.EXE/share           ! fail
        !   sys$library:SSL111$LIBCRYPTO_SHR32.EXE/share        ! fail
        !   sys$library:SSL31$LIBSSL_SHR32.EXE/share            ! fail
        !   sys$library:SSL31$LIBCRYPTO_SHR32.EXE/share         ! fail
$!
$ say "-i-done"