File/Properties/Details on hamlib-X.dll now shows information except for File version (still to be fixed)

https://github.com/Hamlib/Hamlib/issues/1168
pull/1215/head
Mike Black W9MDB 2022-12-22 11:50:50 -06:00
rodzic b153bcd1e5
commit f31e1b7ad9
3 zmienionych plików z 57 dodań i 4 usunięć

Wyświetl plik

@ -15,6 +15,8 @@ dnl however, the use of '~' should be fine as apt (others?) will treat
dnl it as an earlier version than the actual release. TNX KA6MAL dnl it as an earlier version than the actual release. TNX KA6MAL
dnl PACKAGE_NAME + " " + PACKAGE_VERSION must not exceed 20 chars! dnl PACKAGE_NAME + " " + PACKAGE_VERSION must not exceed 20 chars!
AC_INIT([Hamlib],[4.6~git],[hamlib-developer@lists.sourceforge.net],[hamlib],[http://www.hamlib.org]) AC_INIT([Hamlib],[4.6~git],[hamlib-developer@lists.sourceforge.net],[hamlib],[http://www.hamlib.org])
#AC_INIT([PRODUCT_NAME], [Hamlib])
#AC_DEFINE([Hamlib], [PRODUCT_VERSION_RESOURCE])
AC_CONFIG_SRCDIR([include/hamlib/rig.h]) AC_CONFIG_SRCDIR([include/hamlib/rig.h])
AC_CONFIG_MACRO_DIR([macros]) AC_CONFIG_MACRO_DIR([macros])
@ -260,6 +262,7 @@ LT_PREREQ([2.2.6b])
dnl N.B. LT_INIT([win32-dll]) does not work for older libtool dnl N.B. LT_INIT([win32-dll]) does not work for older libtool
dnl so require new enough version above. dnl so require new enough version above.
LT_INIT([win32-dll]) LT_INIT([win32-dll])
LT_LANG([Windows Resource])
## -------------------------- ## ## -------------------------- ##
@ -267,6 +270,7 @@ LT_INIT([win32-dll])
## -------------------------- ## ## -------------------------- ##
dnl The host_os variable is set by the AC_CANONICAL_HOST macro above. dnl The host_os variable is set by the AC_CANONICAL_HOST macro above.
AM_CONDITIONAL([VERSIONDLL], false)
AS_CASE(["$host_os"], AS_CASE(["$host_os"],
[freebsd*], [ [freebsd*], [
AM_CPPFLAGS="-I/usr/local/include ${AM_CPPFLAGS}" AM_CPPFLAGS="-I/usr/local/include ${AM_CPPFLAGS}"
@ -281,6 +285,7 @@ AS_CASE(["$host_os"],
AC_SUBST([OSXLDFLAGS])], AC_SUBST([OSXLDFLAGS])],
[mingw* | pw32* | cygwin*], [ [mingw* | pw32* | cygwin*], [
AM_CONDITIONAL([VERSIONDLL], true)
WINLDFLAGS="-Wl,--output-def,libhamlib.def -Wl,--add-stdcall-alias" WINLDFLAGS="-Wl,--output-def,libhamlib.def -Wl,--add-stdcall-alias"
AC_SUBST([WINLDFLAGS]) AC_SUBST([WINLDFLAGS])

28
src/Makefile.am 100644 → 100755
Wyświetl plik

@ -1,4 +1,3 @@
# src/Makefile.am
BUILT_SOURCES = $(builddir)/hamlibdatetime.h BUILT_SOURCES = $(builddir)/hamlibdatetime.h
@ -11,7 +10,12 @@ RIGSRC = hamlibdatetime.h rig.c serial.c serial.h misc.c misc.h register.c regis
network.c network.h cm108.c cm108.h gpio.c gpio.h idx_builtin.h token.h \ network.c network.h cm108.c cm108.h gpio.c gpio.h idx_builtin.h token.h \
par_nt.h microham.c microham.h amplifier.c amp_reg.c amp_conf.c \ par_nt.h microham.c microham.h amplifier.c amp_reg.c amp_conf.c \
amp_conf.h amp_settings.c extamp.c sleep.c sleep.h sprintflst.c \ amp_conf.h amp_settings.c extamp.c sleep.c sleep.h sprintflst.c \
sprintflst.h cache.c cache.h snapshot_data.c snapshot_data.h sprintflst.h cache.c cache.h snapshot_data.c snapshot_data.h
if VERSIONDLL
RIGSRC += \
version_dll.rc
endif
lib_LTLIBRARIES = libhamlib.la lib_LTLIBRARIES = libhamlib.la
libhamlib_la_SOURCES = $(RIGSRC) libhamlib_la_SOURCES = $(RIGSRC)
@ -20,7 +24,7 @@ libhamlib_la_LDFLAGS = $(WINLDFLAGS) $(OSXLDFLAGS) -no-undefined -version-info $
libhamlib_la_LIBADD = $(top_builddir)/lib/libmisc.la $(top_builddir)/security/libsecurity.la \ libhamlib_la_LIBADD = $(top_builddir)/lib/libmisc.la $(top_builddir)/security/libsecurity.la \
$(BACKENDEPS) $(RIG_BACKENDEPS) $(ROT_BACKENDEPS) $(AMP_BACKENDEPS) $(NET_LIBS) $(MATH_LIBS) $(LIBUSB_LIBS) $(INDI_LIBS) $(BACKENDEPS) $(RIG_BACKENDEPS) $(ROT_BACKENDEPS) $(AMP_BACKENDEPS) $(NET_LIBS) $(MATH_LIBS) $(LIBUSB_LIBS) $(INDI_LIBS)
libhamlib_la_DEPENDENCIES = $(top_builddir)/lib/libmisc.la $(top_builddir)/security/libsecurity.la $(BACKENDEPS) $(RIG_BACKENDEPS) $(ROT_BACKENDEPS) $(AMP_BACKENDEPS) libhamlib_la_DEPENDENCIES = $(top_builddir)/lib/libmisc.la $(top_builddir)/security/libsecurity.la $(BACKENDEPS) $(RIG_BACKENDEPS) $(ROT_BACKENDEPS) $(AMP_BACKENDEPS)
EXTRA_DIST = Android.mk hamlibdatetime.h.in EXTRA_DIST = Android.mk hamlibdatetime.h.in
@ -32,13 +36,29 @@ EXTRA_DIST = Android.mk hamlibdatetime.h.in
hamlibdatetime.h: FORCE hamlibdatetime.h: FORCE
@if test -x $(top_srcdir)/.git ; then \ @if test -x $(top_srcdir)/.git ; then \
echo "/* This date time is from the last non-merge commit to Hamlib. */" > $(builddir)/$(@F).tmp ;\ echo "/* This date time is from the last non-merge commit to Hamlib. */" > $(builddir)/$(@F).tmp ;\
echo "#define HAMLIBDATETIME "\"$$(TZ=UTC git --git-dir=$(top_srcdir)/.git log --no-merges --date='format-local:%a %b %d %H:%M:%S %Y %z SHA=' --format='%cd' -n 1)$$(git --git-dir=$(top_srcdir)/.git log --no-merges | grep commit | head -n 1 | cut -c8-13)\" >> $(builddir)/$(@F).tmp ;\ echo "#define HAMLIBDATETIME "\"$$(TZ=UTC git --git-dir=$(top_srcdir)/.git log --no-merges --date='format-local:%b %d %H:%M:%SZ %Y SHA=' --format='%cd' -n 1)$$(git --git-dir=$(top_srcdir)/.git log --no-merges | grep commit | head -n 1 | cut -c8-13)\" >> $(builddir)/$(@F).tmp ;\
diff -qN $(builddir)/$(@F).tmp $(builddir)/$(@F) ; test $$? -eq 0 || { echo "Generating SCS header \"$(builddir)/$(@F)\"" ; mv -f $(builddir)/$(@F).tmp $(builddir)/$(@F) ; } ;\ diff -qN $(builddir)/$(@F).tmp $(builddir)/$(@F) ; test $$? -eq 0 || { echo "Generating SCS header \"$(builddir)/$(@F)\"" ; mv -f $(builddir)/$(@F).tmp $(builddir)/$(@F) ; } ;\
rm -f $(builddir)/$(@F).tmp ;\ rm -f $(builddir)/$(@F).tmp ;\
else \ else \
test -f $(srcdir)/$(@F) || cp $(srcdir)/$(@F).in $(srcdir)/$(@F) ;\ test -f $(srcdir)/$(@F) || cp $(srcdir)/$(@F).in $(srcdir)/$(@F) ;\
fi fi
RCCOMPILE = $(RC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS)
LTRCCOMPILE = $(LIBTOOL) --mode=compile --tag=RC $(RCCOMPILE)
.rc.lo:
$(LTRCCOMPILE) -i "$<" -o "$@"
.rc.o:
$(RCCOMPILE) -i "$<" -o "$@"
.mc.rc:
$(WINDMC) "$<"
#version.la: version.rc
# windres $(srcdir)/version.rc -o $(builddir)/version.o
FORCE: FORCE:
# If we are making a distribution out-of-source and we have generated # If we are making a distribution out-of-source and we have generated

28
src/version_dll.rc 100755
Wyświetl plik

@ -0,0 +1,28 @@
#include <windows.h>
#include <hamlibdatetime.h>
#define VERSIONINFO_1 1
VERSIONINFO_1 VERSIONINFO
{
BLOCK "StringFileInfo"
{
BLOCK "040904E4"
{
VALUE "FileDescription", "Hamlib DLL"
VALUE "FileVersion", "4.6.0.0"
VALUE "ProductName", "Hamlib"
VALUE "ProductVersion", HAMLIBDATETIME
VALUE "InternalName", "sha256"
VALUE "LegalCopyright", "Copyright Hamlib Team 2022"
VALUE "OriginalFilename", "libhamlib-4.dll"
}
}
BLOCK "VarFileInfo"
{
VALUE "Translation", 0x409, 1200
}
}