diff --git a/cmake/Modules/GrVersion.cmake b/cmake/Modules/GrVersion.cmake index 9199a70..bafd0a7 100644 --- a/cmake/Modules/GrVersion.cmake +++ b/cmake/Modules/GrVersion.cmake @@ -1,4 +1,4 @@ -# Copyright 2011 Free Software Foundation, Inc. +# Copyright 2011,2013 Free Software Foundation, Inc. # # This file is part of GNU Radio # @@ -54,6 +54,8 @@ if("${MINOR_VERSION}" STREQUAL "git") set(VERSION "${GIT_DESCRIBE}") set(DOCVER "${MAJOR_VERSION}.${API_COMPAT}${MINOR_VERSION}") set(LIBVER "${MAJOR_VERSION}.${API_COMPAT}${MINOR_VERSION}") + set(RC_MINOR_VERSION "0") + set(RC_MAINT_VERSION "0") elseif("${MAINT_VERSION}" STREQUAL "git") # VERSION: 3.3.1git-xxx-gxxxxxxxx # DOCVER: 3.3.1git @@ -61,6 +63,8 @@ elseif("${MAINT_VERSION}" STREQUAL "git") set(VERSION "${GIT_DESCRIBE}") set(DOCVER "${MAJOR_VERSION}.${API_COMPAT}.${MINOR_VERSION}${MAINT_VERSION}") set(LIBVER "${MAJOR_VERSION}.${API_COMPAT}.${MINOR_VERSION}${MAINT_VERSION}") + math(EXPR RC_MINOR_VERSION "${MINOR_VERSION} - 1") + set(RC_MAINT_VERSION "0") else() # This is a numbered release. # VERSION: 3.3.1{.x} @@ -73,4 +77,6 @@ else() endif() set(DOCVER "${VERSION}") set(LIBVER "${VERSION}") + set(RC_MINOR_VERSION ${MINOR_VERSION}) + set(RC_MAINT_VERSION ${MAINT_VERSION}) endif() diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index 2f4767f..850a660 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -132,6 +132,20 @@ CONFIGURE_FILE( ${CMAKE_CURRENT_BINARY_DIR}/config.h @ONLY) +######################################################################## +# Set up Windows DLL resource files +######################################################################## +IF(MSVC) + include(${CMAKE_SOURCE_DIR}/cmake/Modules/GrVersion.cmake) + + configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/gnuradio-osmosdr.rc.in + ${CMAKE_CURRENT_BINARY_DIR}/gnuradio-osmosdr.rc + @ONLY) + + GR_OSMOSDR_APPEND_SRCS(${CMAKE_CURRENT_BINARY_DIR}/gnuradio-osmosdr.rc) +ENDIF(MSVC) + ######################################################################## # Setup libgnuradio-osmosdr library ######################################################################## diff --git a/lib/gnuradio-osmosdr.rc.in b/lib/gnuradio-osmosdr.rc.in new file mode 100644 index 0000000..62fd5ea --- /dev/null +++ b/lib/gnuradio-osmosdr.rc.in @@ -0,0 +1,55 @@ +/* -*- c++ -*- */ +/* + * Copyright 2013 Free Software Foundation, Inc. + * + * This file is part of GNU Radio + * + * GNU Radio is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * GNU Radio is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GNU Radio; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#include + +VS_VERSION_INFO VERSIONINFO + FILEVERSION @MAJOR_VERSION@,@API_COMPAT@,@RC_MINOR_VERSION@,@RC_MAINT_VERSION@ + PRODUCTVERSION @MAJOR_VERSION@,@API_COMPAT@,@RC_MINOR_VERSION@,@RC_MAINT_VERSION@ + FILEFLAGSMASK 0x3fL +#ifndef NDEBUG + FILEFLAGS 0x0L +#else + FILEFLAGS 0x1L +#endif + FILEOS VOS__WINDOWS32 + FILETYPE VFT_DLL + FILESUBTYPE VFT2_DRV_INSTALLABLE + BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "FileDescription", "gnuradio-osmosdr" + VALUE "FileVersion", "@VERSION@" + VALUE "InternalName", "gnuradio-osmosdr.dll" + VALUE "LegalCopyright", "Licensed under GPLv3 or any later version" + VALUE "OriginalFilename", "gnuradio-osmosdr.dll" + VALUE "ProductName", "gnuradio-osmosdr" + VALUE "ProductVersion", "@VERSION@" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END + END