rpms/mingw32-nsis/F-10 import.log, NONE, 1.1 mingw32-nsis.spec, NONE, 1.1 nsis-2.42-debian-64bit-fixes.patch, NONE, 1.1 nsis-2.43-debian-debug-opt.patch, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2

Richard W.M. Jones rjones at fedoraproject.org
Sat Feb 21 17:17:12 UTC 2009


Author: rjones

Update of /cvs/pkgs/rpms/mingw32-nsis/F-10
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv14414/F-10

Modified Files:
	.cvsignore sources 
Added Files:
	import.log mingw32-nsis.spec 
	nsis-2.42-debian-64bit-fixes.patch 
	nsis-2.43-debian-debug-opt.patch 
Log Message:
Initial import.



--- NEW FILE import.log ---
mingw32-nsis-2_43-2_fc11:F-10:mingw32-nsis-2.43-2.fc11.src.rpm:1235236572


--- NEW FILE mingw32-nsis.spec ---
%define sconsopts VERSION=%{version} PREFIX=%{_prefix} PREFIX_CONF=%{_sysconfdir} SKIPPLUGINS=System DEBUG_SYMBOLS=1 OPTS=1
%define _default_patch_fuzz 2

Name:           mingw32-nsis
Version:        2.43
Release:        2%{?dist}
Summary:        Nullsoft Scriptable Install System

License:        zlib and CPL
Group:          Development/Libraries
URL:            http://nsis.sourceforge.net/
Source0:        http://dl.sourceforge.net/sourceforge/nsis/nsis-%{version}-src.tar.bz2
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

# Patches from Debian (mainly by Paul Wise).
Patch0:         nsis-2.42-debian-64bit-fixes.patch
Patch1:         nsis-2.43-debian-debug-opt.patch

BuildRequires:  mingw32-filesystem >= 40
BuildRequires:  mingw32-gcc
BuildRequires:  mingw32-gcc-c++
BuildRequires:  mingw32-binutils
BuildRequires:  python
BuildRequires:  scons

# since nsis a 32 bit only apps
#ExclusiveArch:  %{ix86} ppc
#BuildRequires:  wxGTK-devel
# The above is only required for Koji.  In mock we _can_ build on
# x86_64 provided we have the 32 bit libraries required by the next
# two lines.
BuildRequires:  /usr/include/gnu/stubs-32.h
BuildRequires:  /usr/lib/libwx_baseu-2.8.so


%description
NSIS, the Nullsoft Scriptable Install System, is a script-driven
Windows installation system.

This package includes native Fedora binaries of makensis (etc.) and
all plugins except for System.dll.  The System.dll plugin cannot be
built natively at this time since it includes inline Microsoft
assembler code.


%prep
%setup -q -n nsis-%{version}-src

%patch0 -p1 -b .64bit
%patch1 -p1 -b .debug


%build
scons %{sconsopts}


%install
rm -rf $RPM_BUILD_ROOT

mkdir $RPM_BUILD_ROOT
scons %{sconsopts} PREFIX_DEST=$RPM_BUILD_ROOT install

mv $RPM_BUILD_ROOT%{_docdir}/nsis $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}


%clean
rm -rf $RPM_BUILD_ROOT


%files
%defattr(-,root,root)
%doc %{_docdir}/%{name}-%{version}
%config(noreplace) %{_sysconfdir}/nsisconf.nsh
%{_bindir}/*
#{_includedir}/nsis
%{_datadir}/nsis


%changelog
* Fri Feb 20 2009 Richard W.M. Jones <rjones at redhat.com> - 2.43-2
- Rebuild for mingw32-gcc 4.4

* Fri Feb 13 2009 Levente Farkas <lfarkas at lfarkas.org> - 2.43-1
- update to the latest upstream

* Wed Jan 14 2009 Levente Farkas <lfarkas at lfarkas.org> - 2.42-1
- update to the latest upstream
- a few small changes

* Fri Oct 17 2008 Richard W.M. Jones <rjones at redhat.com> - 2.39-5
- Fix the Summary line.

* Wed Oct  8 2008 Richard W.M. Jones <rjones at redhat.com> - 2.39-4
- Initial RPM release.

nsis-2.42-debian-64bit-fixes.patch:

--- NEW FILE nsis-2.42-debian-64bit-fixes.patch ---
--- ./Source/Plugins.cpp.lfarkas	2009-01-14 17:03:11.000000000 +0100
+++ ./Source/Plugins.cpp	2009-01-14 17:03:58.000000000 +0100
@@ -136,7 +136,7 @@
         DWORD prd = FIX_ENDIAN_INT32(sections[i].PointerToRawData);
         PIMAGE_EXPORT_DIRECTORY exports = PIMAGE_EXPORT_DIRECTORY(&dlldata[0] + prd + ExportDirVA - va);
         DWORD na = FIX_ENDIAN_INT32(exports->AddressOfNames);
-        unsigned long *names = (unsigned long*)((unsigned long) exports + (char *) na - ExportDirVA);
+        unsigned int *names = (unsigned int*)((unsigned long) exports + (char *) na - ExportDirVA);
         for (unsigned long j = 0; j < FIX_ENDIAN_INT32(exports->NumberOfNames); j++)
         {
           const string name = string((char*)exports + FIX_ENDIAN_INT32(names[j]) - ExportDirVA);
--- ./Source/ResourceEditor.cpp.lfarkas	2009-01-14 17:04:08.000000000 +0100
+++ ./Source/ResourceEditor.cpp	2009-01-14 17:07:47.000000000 +0100
@@ -665,7 +665,7 @@
     rdDir.NumberOfIdEntries = ConvertEndianness(rdDir.NumberOfIdEntries);
 
     CopyMemory(seeker, &rdDir, sizeof(IMAGE_RESOURCE_DIRECTORY));
-    crd->m_dwWrittenAt = DWORD(seeker);
+    crd->m_dwWrittenAt = long(seeker);
     seeker += sizeof(IMAGE_RESOURCE_DIRECTORY);
 
     for (int i = 0; i < crd->CountEntries(); i++) {
@@ -686,7 +686,7 @@
       rDirE.UName.NameString.NameIsString = (crd->GetEntry(i)->HasName()) ? 1 : 0;
 
       CopyMemory(seeker, &rDirE, sizeof(MY_IMAGE_RESOURCE_DIRECTORY_ENTRY));
-      crd->GetEntry(i)->m_dwWrittenAt = DWORD(seeker);
+      crd->GetEntry(i)->m_dwWrittenAt = long(seeker);
       seeker += sizeof(MY_IMAGE_RESOURCE_DIRECTORY_ENTRY);
     }
     qDirs.pop();
@@ -702,7 +702,7 @@
     rDataE.Size = ConvertEndianness(cRDataE->GetSize());
 
     CopyMemory(seeker, &rDataE, sizeof(IMAGE_RESOURCE_DATA_ENTRY));
-    cRDataE->m_dwWrittenAt = DWORD(seeker);
+    cRDataE->m_dwWrittenAt = long(seeker);
     seeker += sizeof(IMAGE_RESOURCE_DATA_ENTRY);
 
     qDataEntries.pop();
@@ -714,7 +714,7 @@
   while (!qStrings.empty()) {
     CResourceDirectoryEntry* cRDirE = qStrings.front();
 
-    PMY_IMAGE_RESOURCE_DIRECTORY_ENTRY(cRDirE->m_dwWrittenAt)->UName.NameString.NameOffset = ConvertEndianness(DWORD(seeker) - DWORD(pbRsrcSec));
+    PMY_IMAGE_RESOURCE_DIRECTORY_ENTRY(cRDirE->m_dwWrittenAt)->UName.NameString.NameOffset = ConvertEndianness(long(seeker) - long(pbRsrcSec));
 
     WCHAR* szName = cRDirE->GetName();
     WORD iLen = winchar_strlen(szName) + 1;
@@ -745,7 +745,7 @@
   /*
    * Set all of the directory entries offsets.
    */
-  SetOffsets(m_cResDir, DWORD(pbRsrcSec));
+  SetOffsets(m_cResDir, long(pbRsrcSec));
 }
 
 // Sets the offsets in directory entries
@@ -868,7 +868,7 @@
 // Returns -1 if can not be found
 int CResourceDirectory::Find(WCHAR* szName) {
   if (IS_INTRESOURCE(szName))
-    return Find((WORD) (DWORD) szName);
+    return Find((WORD) (long) szName);
   else
     if (szName[0] == '#')
       return Find(WORD(winchar_stoi(szName + 1)));
@@ -946,7 +946,7 @@
   if (IS_INTRESOURCE(szName)) {
     m_bHasName = false;
     m_szName = 0;
-    m_wId = (WORD) (DWORD) szName;
+    m_wId = (WORD) (long) szName;
   }
   else {
     m_bHasName = true;
@@ -960,7 +960,7 @@
   if (IS_INTRESOURCE(szName)) {
     m_bHasName = false;
     m_szName = 0;
-    m_wId = (WORD) (DWORD) szName;
+    m_wId = (WORD) (long) szName;
   }
   else {
     m_bHasName = true;
--- ./Source/DialogTemplate.cpp.lfarkas	2009-01-14 16:56:31.000000000 +0100
+++ ./Source/DialogTemplate.cpp	2009-01-14 17:01:14.000000000 +0100
@@ -74,7 +74,7 @@
     if (IS_INTRESOURCE(x)) { \
       *(WORD*)seeker = 0xFFFF; \
       seeker += sizeof(WORD); \
-      *(WORD*)seeker = ConvertEndianness(WORD(DWORD(x))); \
+      *(WORD*)seeker = ConvertEndianness(WORD(long(x))); \
       seeker += sizeof(WORD); \
     } \
     else { \
@@ -622,7 +622,7 @@
     }
   }
 
-  assert((DWORD) seeker - (DWORD) pbDlg == dwSize);
+  assert((long) seeker - (long) pbDlg == dwSize);
 
   // DONE!
   return pbDlg;
--- ./Source/mmap.cpp.lfarkas	2009-01-14 17:00:12.000000000 +0100
+++ ./Source/mmap.cpp	2009-01-14 17:01:36.000000000 +0100
@@ -322,7 +322,7 @@
   if (!pView)
     return;
 
-  unsigned int alignment = ((unsigned int)pView) % m_iAllocationGranularity;
+  unsigned int alignment = ((unsigned long)pView) % m_iAllocationGranularity;
   pView = (char *)pView - alignment;
   size += alignment;
 #ifdef _WIN32
--- ./Source/util.cpp.lfarkas	2009-01-14 17:07:59.000000000 +0100
+++ ./Source/util.cpp	2009-01-14 17:09:25.000000000 +0100
@@ -75,9 +75,9 @@
   }
 
   if (width != 0) {
-    LONG biWidth;
+    DWORD biWidth;
     fseek(f, 18, SEEK_SET); // Seek to the width member of the header
-    fread(&biWidth, sizeof(LONG), 1, f);
+    fread(&biWidth, sizeof(DWORD), 1, f);
     FIX_ENDIAN_INT32_INPLACE(biWidth);
     if (width != biWidth) {
       fclose(f);
@@ -86,12 +86,12 @@
   }
 
   if (height != 0) {
-    LONG biHeight;
+    DWORD biHeight;
     fseek(f, 22, SEEK_SET); // Seek to the height member of the header
-    fread(&biHeight, sizeof(LONG), 1, f);
+    fread(&biHeight, sizeof(DWORD), 1, f);
     FIX_ENDIAN_INT32_INPLACE(biHeight);
     // Bitmap height can be negative too...
-    if (height != abs(biHeight)) {
+    if (height != abs((long int)biHeight)) {
       fclose(f);
       return -3;
     }
--- ./Source/Platform.h.lfarkas	2009-01-14 17:01:43.000000000 +0100
+++ ./Source/Platform.h	2009-01-14 17:03:03.000000000 +0100
@@ -165,7 +165,7 @@
 #    define MAKEINTRESOURCE MAKEINTRESOURCEA
 #  endif
 #  ifndef IMAGE_FIRST_SECTION
-#    define IMAGE_FIRST_SECTION(h) ( PIMAGE_SECTION_HEADER( (DWORD) h + \
+#    define IMAGE_FIRST_SECTION(h) ( PIMAGE_SECTION_HEADER( (long) h + \
                                      FIELD_OFFSET(IMAGE_NT_HEADERS, OptionalHeader) + \
                                      FIX_ENDIAN_INT16(PIMAGE_NT_HEADERS(h)->FileHeader.SizeOfOptionalHeader) ) )
 #  endif
@@ -197,7 +197,7 @@
 #endif
 
 #ifndef ULONG_PTR
-#  define ULONG_PTR DWORD
+#  define ULONG_PTR ULONG
 #endif
 
 #ifndef IDC_HAND
@@ -702,7 +702,7 @@
   WORD e_oemid;
   WORD e_oeminfo;
   WORD e_res2[10];
-  LONG e_lfanew;
+  DWORD e_lfanew;
 } IMAGE_DOS_HEADER,*PIMAGE_DOS_HEADER;
 #  pragma pack()
 #  pragma pack(4)
--- ./SCons/Config/gnu.lfarkas	2009-01-14 16:55:33.000000000 +0100
+++ ./SCons/Config/gnu	2009-01-14 16:56:21.000000000 +0100
@@ -90,8 +90,6 @@
 makensis_env.Append(CXXFLAGS = ['-Wno-non-virtual-dtor']) # ignore virtual dtor warnings
 
 conf = FlagsConfigure(makensis_env)
-conf.CheckCompileFlag('-m32')                     #
-conf.CheckLinkFlag('-m32')                        #
 conf.CheckLinkFlag('$MAP_FLAG')                   # generate map file
 if not defenv['DEBUG'] and defenv['STRIP'] and defenv['STRIP_CP']:
 	TestStrip(conf)                                 # strip

nsis-2.43-debian-debug-opt.patch:

--- NEW FILE nsis-2.43-debian-debug-opt.patch ---
diff -up ./SCons/Config/gnu.debug ./SCons/Config/gnu
--- ./SCons/Config/gnu.debug	2009-02-13 12:41:42.000000000 +0100
+++ ./SCons/Config/gnu	2009-02-13 12:42:37.000000000 +0100
@@ -68,13 +68,16 @@ cross_env(stub_env)
 
 stub_env.Append(CPPPATH = ['#$BUILD_CONFIG'])
 
-if not defenv['DEBUG']:
-	stub_env.Append(CCFLAGS = ['-Os'])                # optimize for size
+if defenv['DEBUG_SYMBOLS']:
+	stub_env.Append(LINKFLAGS = '-g')           # debugging
+	stub_env.Append(CCFLAGS = '-g')             # debugging
+if not defenv['DEBUG'] and defenv['OPT']:
+	stub_env.Append(CCFLAGS = ['-O2'])          # optimize
 stub_env.Append(CCFLAGS = ['-Wall'])                # all warnings
 stub_env.Append(CCFLAGS = ['-xc'])                  # force compile as c
 stub_env.Append(CCFLAGS = ['-fno-strict-aliasing']) # not safe for strict aliasing
 
-if not defenv['DEBUG'] and defenv['STRIP'] and defenv['STRIP_W32']:
+if not defenv['DEBUG'] and not defenv['DEBUG_SYMBOLS'] and defenv['STRIP'] and defenv['STRIP_W32']:
 	stub_env.Append(LINKFLAGS = ['-s'])               # strip
 stub_env.Append(LINKFLAGS = ['-mwindows'])          # build windows executables
 stub_env.Append(LINKFLAGS = ['$NODEFLIBS_FLAG'])    # no standard libraries
@@ -88,15 +91,18 @@ makensis_env = defenv.Clone()
 
 makensis_env.Append(CPPPATH = ['#$BUILD_CONFIG'])
 
-if not defenv['DEBUG']:
-	makensis_env.Append(CCFLAGS = ['-O2'])                  # optimize
+if defenv['DEBUG_SYMBOLS']:
+	makensis_env.Append(LINKFLAGS = '-g')             # debugging
+	makensis_env.Append(CCFLAGS = '-g')               # debugging
+if not defenv['DEBUG'] and defenv['OPT']:
+	makensis_env.Append(CCFLAGS = ['-O2'])            # optimize
 makensis_env.Append(CFLAGS = ['-Wall'])                   # all warnings
 makensis_env.Append(CXXFLAGS = ['-Wno-non-virtual-dtor']) # ignore virtual dtor warnings
 makensis_env.Append(CXXFLAGS = ['-Wall'])                 # all warnings
 
 conf = FlagsConfigure(makensis_env)
 conf.CheckLinkFlag('$MAP_FLAG')                   # generate map file
-if not defenv['DEBUG'] and defenv['STRIP'] and defenv['STRIP_CP']:
+if not defenv['DEBUG'] and not defenv['DEBUG_SYMBOLS'] and defenv['STRIP'] and defenv['STRIP_CP']:
 	TestStrip(conf)                                 # strip
 conf.Finish()
 
@@ -105,12 +111,15 @@ conf.Finish()
 plugin_env = defenv.Clone()
 cross_env(plugin_env)
 
-if not defenv['DEBUG']:
-	plugin_env.Append(CCFLAGS = ['-Os'])              # optimize for size
+if defenv['DEBUG_SYMBOLS']:
+	plugin_env.Append(LINKFLAGS = '-g')         # debugging
+	plugin_env.Append(CCFLAGS = '-g')           # debugging
+if not defenv['DEBUG'] and defenv['OPT']:
+	plugin_env.Append(CCFLAGS = ['-O2'])        # optimize
 plugin_env.Append(CCFLAGS = ['-Wall'])              # level 3 warnings
 plugin_env.Append(CCFLAGS = ['-fno-strict-aliasing']) # not safe for strict aliasing
 
-if not defenv['DEBUG'] and defenv['STRIP'] and defenv['STRIP_W32']:
+if not defenv['DEBUG'] and not defenv['DEBUG_SYMBOLS'] and defenv['STRIP'] and defenv['STRIP_W32']:
 	plugin_env.Append(LINKFLAGS = ['-s'])             # strip
 plugin_env.Append(LINKFLAGS = ['-mwindows'])        # build windows executables
 plugin_env.Append(LINKFLAGS = ['$ALIGN_FLAG'])      # 512 bytes align
@@ -122,7 +131,10 @@ cp_util_env = defenv.Clone()
 
 cp_util_env.Append(CPPPATH = ['#$BUILD_CONFIG'])
 
-if not defenv['DEBUG']:
+if defenv['DEBUG_SYMBOLS']:
+	cp_util_env.Append(LINKFLAGS = '-g')        # debugging
+	cp_util_env.Append(CCFLAGS = '-g')          # debugging
+if not defenv['DEBUG'] and defenv['OPT']:
 	cp_util_env.Append(CCFLAGS = ['-O2'])             # optimize
 cp_util_env.Append(CCFLAGS = ['-Wall'])             # all warnings
 cp_util_env.Append(CCFLAGS = ['-fno-strict-aliasing']) # not safe for strict aliasing
@@ -140,7 +152,7 @@ util_env.Append(LINKFLAGS = ['-mwindows'
 util_env.Append(LINKFLAGS = ['$ALIGN_FLAG'])        # 512 bytes align
 
 conf = FlagsConfigure(util_env)
-if not defenv['DEBUG'] and defenv['STRIP'] and defenv['STRIP_W32']:
+if not defenv['DEBUG'] and not defenv['DEBUG_SYMBOLS'] and defenv['STRIP'] and defenv['STRIP_W32']:
 	util_env.Append(LINKFLAGS = ['-s'])                   # strip
 conf.Finish()
 
@@ -149,7 +161,7 @@ conf.Finish()
 conf = FlagsConfigure(cp_util_env)
 conf.CheckCompileFlag('-m32')
 conf.CheckLinkFlag('-m32')
-if not defenv['DEBUG'] and defenv['STRIP'] and defenv['STRIP_CP']:
+if not defenv['DEBUG'] and not defenv['DEBUG_SYMBOLS'] and defenv['STRIP'] and defenv['STRIP_CP']:
 	TestStrip(conf)                                 # strip
 conf.Finish()
 
@@ -157,6 +169,9 @@ conf.Finish()
 
 test_env = defenv.Clone()
 test_env.Append(CPPPATH = ['#$BUILD_CONFIG'])
+if defenv['DEBUG_SYMBOLS']:
+	test_env.Append(LINKFLAGS = '-g')           # debugging
+	test_env.Append(CCFLAGS = '-g')             # debugging
 conf = FlagsConfigure(test_env)
 conf.CheckCompileFlag('-m32')
 conf.CheckLinkFlag('-m32')
diff -up ./SConstruct.debug ./SConstruct
--- ./SConstruct.debug	2009-02-04 15:05:48.000000000 +0100
+++ ./SConstruct	2009-02-13 12:41:42.000000000 +0100
@@ -157,6 +157,8 @@ opts.Add(('APPEND_CCFLAGS', 'Additional 
 opts.Add(('APPEND_LINKFLAGS', 'Additional linker flags'))
 # build options
 opts.Add(BoolVariable('DEBUG', 'Build executables with debugging information', 'no'))
+opts.Add(BoolOption('DEBUG_SYMBOLS', 'Build with debugging information, but none of the side effects of DEBUG', 'no'))
+opts.Add(BoolOption('OPT', 'Build with optimization', 'yes'))
 opts.Add(PathVariable('CODESIGNER', 'A program used to sign executables', None))
 opts.Add(BoolVariable('STRIP', 'Strips executables of any unrequired data such as symbols', 'yes'))
 opts.Add(BoolVariable('STRIP_CP', 'Strips cross-platform executables of any unrequired data such as symbols', 'yes'))


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/mingw32-nsis/F-10/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore	18 Feb 2009 19:24:22 -0000	1.1
+++ .cvsignore	21 Feb 2009 17:17:10 -0000	1.2
@@ -0,0 +1 @@
+nsis-2.43-src.tar.bz2


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/mingw32-nsis/F-10/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources	18 Feb 2009 19:24:22 -0000	1.1
+++ sources	21 Feb 2009 17:17:11 -0000	1.2
@@ -0,0 +1 @@
+a034a602c03ad7c5512423e9e961f372  nsis-2.43-src.tar.bz2




More information about the fedora-extras-commits mailing list