Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG  Not logged in ELOG logo
icon5.gif   no availability of el8 and el9 rpm, posted by scott on Wed Feb 21 10:39:21 2024 
    icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Wed Feb 21 11:15:38 2024 
       icon2.gif   Re: no availability of el8 and el9 rpm, posted by Konstantin Olchanski on Wed Feb 21 21:20:56 2024 
          icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Thu Feb 22 00:53:26 2024 
             icon2.gif   Re: no availability of el8 and el9 rpm, posted by Stefan Ritt on Thu Feb 22 08:12:28 2024 
                icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Thu Feb 22 11:59:03 2024 
                   icon2.gif   Re: no availability of el8 and el9 rpm, posted by Stefan Ritt on Fri Feb 23 08:40:26 2024 bitbucket-pipelines.yml
                      icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Fri Feb 23 18:00:41 2024 elog-EL7_c11_patch.diffBitbucket_pipeline_with_elx.pngBitbucket_access_to_artifacts.pngbitbucket-pipelines.yml
                         icon2.gif   Re: no availability of el8 and el9 rpm, posted by Stefan Ritt on Mon Feb 26 17:39:56 2024 
                            icon2.gif   Re: no availability of el8 and el9 rpm, posted by Antonio Bulgheroni on Mon Feb 26 21:18:23 2024 
                            icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Mon Feb 26 22:23:05 2024 
                               icon2.gif   Re: no availability of el8 and el9 rpm, posted by Antonio Bulgheroni on Tue Feb 27 06:59:06 2024 
                               icon2.gif   Re: no availability of el8 and el9 rpm, posted by Stefan Ritt on Tue Feb 27 07:35:15 2024 
                                  icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Tue Feb 27 16:55:39 2024 
                                  icon2.gif   Re: no availability of el8 and el9 rpm, posted by Laurent Jean-Rigaud on Mon Mar 4 10:10:50 2024 Build_started.txt
Message ID: 69751     Entry time: Mon Mar 4 10:10:50 2024     In reply to: 69748
Icon: Reply  Author: Laurent Jean-Rigaud  Author Email: lollspam@free.fr 
Category: Question  OS: Linux | Other  ELOG Version: Latest version 
Subject: Re: no availability of el8 and el9 rpm 

Hi Stefan,

Some updates for Windows version.

I spent last WE to try to build ELOG on Windows from MSVCODE, MSCV, crosschain tool under linux etc, but in vain.

ELOG MSVC projects file are obsolete for last MS C++, and after migration, so much error or missing libs for SSL/Ldap/krb5 which should be built... I drop the sponge :-P

With mingw64 under Linux (docker/Debian), the code has also to be updated (C++11), but I don't get a build after all (also libs missing and must be built).

Finally, I can build Windows version from Windows with CygWin gcc-c++ as I did in the past. All the dependencies are available from CygWin installer. I got problems with strlcpy file missing, need to drop inlcude from elog.c and elogd.h as mxml doesn't include it anymore...

I find a Win64 CI/CD solution on AppVeyor which is free for OSS project. After creating account and add link to my ELOG test Bitbucket repo, ad new files (appveyor.yml, buildming script, update NSIS script for CygWin DDL, add tool for service), it builds automatically an elog-ver-release.exe artifact : (current build from GIT with SSL/LDAP/KRB5 available on month up to March 3, 2024 : https://ci.appveyor.com/api/buildjobs/logp7r8f0kcjq9pp/artifacts/elog-3.1.5-a720145.exe)

I installed this NSIS bundle on my PC and it's starting fine as a service.

The link info from EXE :

$ ldd /cygdrive/c/Program\ Files\ \(x86\)/ELOG/elogd.exe
        ntdll.dll => /cygdrive/c/Windows/SYSTEM32/ntdll.dll (0x7ffdb1fb0000)
        KERNEL32.DLL => /cygdrive/c/Windows/System32/KERNEL32.DLL (0x7ffdb0dc0000)
        KERNELBASE.dll => /cygdrive/c/Windows/System32/KERNELBASE.dll (0x7ffdaf950000)
        cygwin1.dll => /cygdrive/c/Program Files (x86)/ELOG/cygwin1.dll (0x7ffcedc30000)
        cygkrb5-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygkrb5-3.dll (0x3fe0a0000)
        cyglber-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cyglber-2.dll (0x3fe040000)
        cygldap-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cygldap-2.dll (0x3fdf20000)
        cygssl-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygssl-3.dll (0x3fd0d0000)
        cyggcc_s-seh-1.dll => /cygdrive/c/Program Files (x86)/ELOG/cyggcc_s-seh-1.dll (0x3ff1d0000)
        cygstdc++-6.dll => /cygdrive/c/Program Files (x86)/ELOG/cygstdc++-6.dll (0x3fcee0000)
        cygk5crypto-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygk5crypto-3.dll (0x3fe170000)
        cygkrb5support-0.dll => /cygdrive/c/Program Files (x86)/ELOG/cygkrb5support-0.dll (0x3fe080000)
        cygcom_err-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cygcom_err-2.dll (0x3ffe90000)
        cygintl-8.dll => /cygdrive/c/Program Files (x86)/ELOG/cygintl-8.dll (0x3fe450000)
        cygcrypto-1.1.dll => /cygdrive/c/Program Files (x86)/ELOG/cygcrypto-1.1.dll (0x3ffbc0000)
        cygsasl2-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygsasl2-3.dll (0x3fd3e0000)
        cygssl-1.1.dll => /cygdrive/c/Program Files (x86)/ELOG/cygssl-1.1.dll (0x3fd170000)
        cygcrypto-3.dll => /cygdrive/c/Program Files (x86)/ELOG/cygcrypto-3.dll (0x3ff800000)
        cygiconv-2.dll => /cygdrive/c/Program Files (x86)/ELOG/cygiconv-2.dll (0x3fe540000)
        cygz.dll => /cygdrive/c/Program Files (x86)/ELOG/cygz.dll (0x3fc790000)

I will send you the files/patchs if AppVeyor could be used for Windows CI/CD in your project.

Bye,

Laurent

NB: the AppVeyor build log enclosed, need some cleanup...

 

Stefan Ritt wrote:
Laurent Jean-Rigaud wrote:

For Windows target, It's supported in Bitbucket but only with private agent :-(

So I tried to build using docker hub MSVC image (abrarov/msvc-2019) but pipeline fails to retrieve the image. Maybe I need to swipe on alternative images, or these images with MS software are unaccepted from Atlassian...

Also, I tried to crosscompiling ELOG Win32 from Linux with g++-mingw-w64-x86-64, but Makefile/sources need to be patched to manage this 'platform'... For the moment, it fails. :-(

Next solution : use Wine in Debian image to build Elog with mingwin as I know that it works (under Windows :-)). Will be tested after all...

For Windows it's more than just getting the .exe. Users want an installer. I used the Nullsoft Scriptable Installer (NSI), but I have no clue if this still works today. But there is still the elog.nsi script in the repository. Next, users want elogd as a service running in the background as a "service". I'm pretty sure the old way of doing that has changed and one would at least have to test this. Unfortunatley I switched to MacOSX about ten years ago (actually most of ELOG has been developed under Windows, but these days are gone), so I'm kind of illiterate in the Windows world now and don't have any time to change that.

Stefan

 

 

Attachment 1: Build_started.txt  22 kB  | Hide | Hide all
Build started
git clone -q --branch=master https://bitbucket.org/loll1/elog-test.git C:\projects\elog-test
git checkout -qf a720145cbdd1c6078f6648b66a75b9f14007b6fb
REM MSVC environnement
call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars32.bat"
**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.8.2
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x86'
REM Already installed on current Appveyor unstable image
REM echo Retrieving Cygwin'
REM  'appveyor DownloadFile http://cygwin.com/setup-x86.exe -FileName %CYGROOT%/setup-x86.exe'
echo Setting up Cygwin dependencies
Setting up Cygwin dependencies
C:\cygwin\setup-x86_64.exe -qnNdO -P make -P gcc-c++ -P libssl1.1 -P libssl-devel -P openldap-devel -P libopenldap2 -P  libkrb5-devel -P libkrb5_3
Starting cygwin install, version 2.926
User has backup/restore rights
User has symlink creation right
Current Directory: C:/cygwin/var/cache/setup
root: C:\cygwin system
Changing gid to Administrators
Selected local directory: C:/cygwin/var/cache/setup
net: Preconfig
site: http://cygwin.mirror.constant.com/
mbox note: This setup is version 2.926, but setup.ini claims version 2.930 is available.
You might want to upgrade to get the latest features and bug fixes.
unattended_mode is set at mbox: returning default value
Package 'gcc-c++' not found.
solving: 7 tasks, update: no, use test packages: no
solving: 16 tasks, update: no, use test packages: no
Augmented Transaction List:
   0 install libcom_err-devel   1.44.5-1    
   1 install libgssrpc4         1.15.2-2    
   2 install libiodbc2          3.52.8-2    
   3 install libsasl2-devel     2.1.27-1    
   4 install libssl-devel       3.0.13-1    
   5 install libssl1.0          1.0.2u+za-1 
   6 install libuuid-devel      2.33.1-3    
   7 install libkdb5_8          1.15.2-2    
   8 install libkadm5clnt_mit11 1.15.2-2    
   9 install libiodbc-devel     3.52.8-2    
  10 install libevent2.0_5      2.0.22-1    
  11 install libkadm5srv_mit11  1.15.2-2    
  12 install openldap-devel     2.6.7-1     
  13 install libverto1          0.2.6-1     
  14 install libkrad0           1.15.2-2    
  15 install libkrb5-devel      1.15.2-2    
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/e2fsprogs/libcom_err-devel/libcom_err-devel-1.44.5-1.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libgssrpc4/libgssrpc4-1.15.2-2.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/libiodbc/libiodbc2/libiodbc2-3.52.8-2.tar.bz2
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/cyrus-sasl/libsasl2-devel/libsasl2-devel-2.1.27-1.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/openssl/libssl-devel/libssl-devel-3.0.13-1.tar.zst
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/openssl10/libssl1.0/libssl1.0-1.0.2u+za-1.tar.zst
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/util-linux/libuuid-devel/libuuid-devel-2.33.1-3.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkdb5_8/libkdb5_8-1.15.2-2.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkadm5clnt_mit11/libkadm5clnt_mit11-1.15.2-2.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/libiodbc/libiodbc-devel/libiodbc-devel-3.52.8-2.tar.bz2
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/libevent/libevent2.0_5/libevent2.0_5-2.0.22-1.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkadm5srv_mit11/libkadm5srv_mit11-1.15.2-2.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/openldap/openldap-devel/openldap-devel-2.6.7-1.tar.zst
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/libverto/libverto1/libverto1-0.2.6-1.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkrad0/libkrad0-1.15.2-2.tar.xz
Downloaded C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkrb5-devel/libkrb5-devel-1.15.2-2.tar.xz
Registry value set: HKEY_LOCAL_MACHINE\Software\Cygwin\setup\rootdir = "C:\cygwin"
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/e2fsprogs/libcom_err-devel/libcom_err-devel-1.44.5-1.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libgssrpc4/libgssrpc4-1.15.2-2.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/libiodbc/libiodbc2/libiodbc2-3.52.8-2.tar.bz2
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/cyrus-sasl/libsasl2-devel/libsasl2-devel-2.1.27-1.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/openssl/libssl-devel/libssl-devel-3.0.13-1.tar.zst
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/openssl10/libssl1.0/libssl1.0-1.0.2u+za-1.tar.zst
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/util-linux/libuuid-devel/libuuid-devel-2.33.1-3.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkdb5_8/libkdb5_8-1.15.2-2.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkadm5clnt_mit11/libkadm5clnt_mit11-1.15.2-2.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/libiodbc/libiodbc-devel/libiodbc-devel-3.52.8-2.tar.bz2
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/libevent/libevent2.0_5/libevent2.0_5-2.0.22-1.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkadm5srv_mit11/libkadm5srv_mit11-1.15.2-2.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/openldap/openldap-devel/openldap-devel-2.6.7-1.tar.zst
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/libverto/libverto1/libverto1-0.2.6-1.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkrad0/libkrad0-1.15.2-2.tar.xz
Extracting from file://C:/cygwin/var/cache/setup/http%3a%2f%2fcygwin.mirror.constant.com%2f/x86_64/release/krb5/libkrb5-devel/libkrb5-devel-1.15.2-2.tar.xz
running: C:\cygwin\bin\dash.exe "/etc/postinstall/0p_000_autorebase.dash"
running: C:\cygwin\bin\dash.exe "/etc/postinstall/0p_update-info-dir.dash"
running: C:\cygwin\bin\dash.exe "/etc/postinstall/openssl10.dash"
running: C:\cygwin\bin\bash.exe --norc --noprofile "/etc/postinstall/zp_desktop-file-utils.sh"
running: C:\cygwin\bin\bash.exe --norc --noprofile "/etc/postinstall/zp_glib2.0.sh"
running: C:\cygwin\bin\dash.exe "/etc/postinstall/zp_man-db-update-index.dash"
running: C:\cygwin\bin\bash.exe --norc --noprofile "/etc/postinstall/zp_shared-mime-info.sh"
Ending cygwin install
echo Check Cygwin setup
Check Cygwin setup
C:\cygwin\bin\bash.exe -lc "cygcheck -dc cygwin"
Cygwin Package Information
Package              Version
cygwin               3.4.10-1
echo Build Windows package
Build Windows package
C:\cygwin\bin\bash.exe -lc /cygdrive/C/projects/elog-test/buildcygw
Build ELOG with CygWin...
Cloning into 'mxml'...
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -c -o mxml.o mxml/mxml.cxx
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -w -c -o crypt.o src/crypt.cxx
type git &> /dev/null; if [ $? -eq 1 ]; then REV="unknown" ;else REV=`git log -n 1 --pretty=format:"%ad - %h"`; fi; echo \#define GIT_REVISION \"$REV\" > src/git-revision.h
fatal: detected dubious ownership in repository at '/cygdrive/C/projects/elog-test'
To add an exception for this directory, call:
	git config --global --add safe.directory /cygdrive/C/projects/elog-test
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elog src/elog.cxx mxml.o crypt.o -lssl -lkrb5 -lldap -llber
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -w -c -o auth.o src/auth.cxx
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elogd src/elogd.cxx auth.o mxml.o crypt.o -lssl -lkrb5 -lldap -llber
src/elogd.cxx:217:6: warning: ‘_timezone’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes]
  217 | long _timezone;
      |      ^~~~~~~~~
src/elogd.cxx: In function ‘int el_submit(LOGBOOK*, int, BOOL, const char*, char (*)[1500], char (*)[1500], int, const char*, const char*, const char*, const char*, const char (*)[256], BOOL, const char*, const char*)’:
src/elogd.cxx:4956:47: warning: ‘%s’ directive writing up to 149999 bytes into a region of size between 100103 and 250102 [-Wformat-overflow=]
 4956 |       sprintf(message + strlen(message), "%s: %s\n", attr_name[i], attrib[i]);
      |                                               ^~
src/elogd.cxx:4956:14: note: ‘sprintf’ output between 4 and 300002 bytes into a destination of size 250104
 4956 |       sprintf(message + strlen(message), "%s: %s\n", attr_name[i], attrib[i]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_edit_form(LOGBOOK*, int, BOOL, BOOL, BOOL, BOOL, BOOL, BOOL)’:
src/elogd.cxx:9655:28: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
 9655 |       sprintf(str, "Preset %s", attr_list[index]);
      |                            ^~
src/elogd.cxx:9655:14: note: ‘sprintf’ output between 8 and 150007 bytes into a destination of size 4000
 9655 |       sprintf(str, "Preset %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9676:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3978 [-Wformat-overflow=]
 9676 |       sprintf(str, "Preset on first reply %s", attr_list[index]);
      |                                           ^~
src/elogd.cxx:9676:14: note: ‘sprintf’ output between 23 and 150022 bytes into a destination of size 4000
 9676 |       sprintf(str, "Preset on first reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9697:37: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                     ^~
src/elogd.cxx:9697:14: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9697 |       sprintf(str, "Preset on reply %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9717:36: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3985 [-Wformat-overflow=]
 9717 |       sprintf(str, "Preset on edit %s", attr_list[index]);
      |                                    ^~
src/elogd.cxx:9717:14: note: ‘sprintf’ output between 16 and 150015 bytes into a destination of size 4000
 9717 |       sprintf(str, "Preset on edit %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9737:41: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
 9737 |       sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |                                         ^~
src/elogd.cxx:9737:14: note: ‘sprintf’ output between 21 and 150020 bytes into a destination of size 4000
 9737 |       sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9758:22: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3999 [-Wformat-overflow=]
 9758 |       sprintf(str, "p%s", attr_list[index]);
      |                      ^~
src/elogd.cxx:9758:14: note: ‘sprintf’ output between 2 and 150001 bytes into a destination of size 4000
 9758 |       sprintf(str, "p%s", attr_list[index]);
      |       ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9776:31: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3993 [-Wformat-overflow=]
 9776 |          sprintf(str, "Preset %s", attr_list[index]);
      |                               ^~
src/elogd.cxx:9776:17: note: ‘sprintf’ output between 8 and 150007 bytes into a destination of size 4000
 9776 |          sprintf(str, "Preset %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9797:40: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3984 [-Wformat-overflow=]
 9797 |          sprintf(str, "Preset on reply %s", attr_list[index]);
      |                                        ^~
src/elogd.cxx:9797:17: note: ‘sprintf’ output between 17 and 150016 bytes into a destination of size 4000
 9797 |          sprintf(str, "Preset on reply %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:9817:44: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 3980 [-Wformat-overflow=]
 9817 |          sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |                                            ^~
src/elogd.cxx:9817:17: note: ‘sprintf’ output between 21 and 150020 bytes into a destination of size 4000
 9817 |          sprintf(str, "Preset on duplicate %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void show_elog_list(LOGBOOK*, int, int, int, BOOL, char*)’:
src/elogd.cxx:20444:43: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1587 [-Wformat-overflow=]
20444 |                sprintf(str, "Icon comment %s", attrib[i]);
      |                                           ^~
src/elogd.cxx:20444:23: note: ‘sprintf’ output between 14 and 150013 bytes into a destination of size 1600
20444 |                sprintf(str, "Icon comment %s", attrib[i]);
      |                ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:20491:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20491 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                 ^~
src/elogd.cxx:20491:32: note: directive argument in the range [0, 99]
20491 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                ^~~~~~~
src/elogd.cxx:20491:26: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
20491 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:20455:33: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
20455 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                 ^~
src/elogd.cxx:20455:32: note: directive argument in the range [0, 99]
20455 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                                ^~~~~~~
src/elogd.cxx:20455:26: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
20455 |                   sprintf(str, "%s_%d", attr_list[i], j);
      |                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21037:30: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1600 [-Wformat-overflow=]
21037 |                sprintf(str, "%s_%d", attr_list[i], j);
      |                              ^~
src/elogd.cxx:21037:29: note: directive argument in the range [0, 99]
21037 |                sprintf(str, "%s_%d", attr_list[i], j);
      |                             ^~~~~~~
src/elogd.cxx:21037:23: note: ‘sprintf’ output between 3 and 150003 bytes into a destination of size 1600
21037 |                sprintf(str, "%s_%d", attr_list[i], j);
      |                ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21523:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21523 |                   sprintf(str, "Time format %s", attr_list[i]);
      |                                             ^~
src/elogd.cxx:21523:26: note: ‘sprintf’ output between 13 and 150012 bytes into a destination of size 1600
21523 |                   sprintf(str, "Time format %s", attr_list[i]);
      |                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:21508:45: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 1588 [-Wformat-overflow=]
21508 |                   sprintf(str, "Date format %s", attr_list[i]);
      |                                             ^~
src/elogd.cxx:21508:26: note: ‘sprintf’ output between 13 and 150012 bytes into a destination of size 1600
21508 |                   sprintf(str, "Date format %s", attr_list[i]);
      |                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx: In function ‘void submit_elog(LOGBOOK*)’:
src/elogd.cxx:23278:38: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 2034 [-Wformat-overflow=]
23278 |          sprintf(str, "Subst on edit %s", attr_list[index]);
      |                                      ^~
src/elogd.cxx:23278:17: note: ‘sprintf’ output between 15 and 150014 bytes into a destination of size 2048
23278 |          sprintf(str, "Subst on edit %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/elogd.cxx:23308:39: warning: ‘%s’ directive writing up to 149999 bytes into a region of size 2033 [-Wformat-overflow=]
23308 |          sprintf(str, "Subst on reply %s", attr_list[index]);
      |                                       ^~
src/elogd.cxx:23308:17: note: ‘sprintf’ output between 16 and 150015 bytes into a destination of size 2048
23308 |          sprintf(str, "Subst on reply %s", attr_list[index]);
      |          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c++ -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -Wno-unused-result -Imxml -DHAVE_SSL -DHAVE_KRB5 -DHAVE_LDAP -o elconv src/elconv.cxx -lssl -lkrb5 -lldap -llber
Prepare git for version
Build NSIS bundle version 3.1.5-a720145
Command line defined: "VERSION=3.1.5-a720145"
Processing config: C:\Program Files (x86)\NSIS\nsisconf.nsh
Processing script file: "elog.nsi" (ACP)
Processed 1 file, writing output (x86-unicode):
Output: "C:\projects\elog-test\elog-3.1.5-a720145.exe"
Install: 5 pages (320 bytes), 4 sections (8288 bytes), 1137 instructions (31836 bytes), 807 strings (64766 bytes), 1 language table (326 bytes).
Uninstall: 2 pages (192 bytes), 1 section (2072 bytes), 83 instructions (2324 bytes), 114 strings (3642 bytes), 1 language table (250 bytes).
Datablock optimizer saved 164729 bytes (~1.5%).
Using zlib compression.
EXE header size:               55296 / 39936 bytes
Install code:                  20896 / 106000 bytes
Install data:               10248205 / 24076796 bytes
Uninstall code+data:           11495 / 15815 bytes
CRC (0xB0B55D8E):                  4 / 4 bytes
Total size:                 10335896 / 24238551 bytes (42.6%)
/bin/rm -f *~ elog elogd elconv crypt.o auth.o mxml.o strlcpy.o locext
dir elog*.exe
 Volume in drive C has no label.
 Volume Serial Number is 0CA6-1C58
 Directory of C:\projects\elog-test
03/04/2024  03:09 AM        10,335,896 elog-3.1.5-a720145.exe
               1 File(s)     10,335,896 bytes
               0 Dir(s)  130,718,511,104 bytes free
Collecting artifacts...
Found artifact 'elog-3.1.5-a720145.exe' matching 'elog-*.exe' path
Uploading artifacts...
[1/1] elog-3.1.5-a720145.exe (10,335,896 bytes)...100%
Build success
ELOG V3.1.5-fe60aaf