summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--html/en/download_tips.html154
-rw-r--r--src/tecmake_compact.mak206
2 files changed, 218 insertions, 142 deletions
diff --git a/html/en/download_tips.html b/html/en/download_tips.html
index ac5fdf2..f010ee4 100644
--- a/html/en/download_tips.html
+++ b/html/en/download_tips.html
@@ -10,11 +10,14 @@
.style1 {
font-family: Tahoma;
}
+.style2 {
+ border-style: solid;
+}
</style>
</head>
<body>
-<h2>Tecgraf/PUC-Rio Library Download Tips</h2>
+<h1>Tecgraf/PUC-Rio Library Download Tips</h1>
<p>All the libraries were build using <b>Tecmake</b>. Please use it if you intend to recompile the sources.
<b>Tecmake</b>
can be found at
@@ -35,8 +38,8 @@ http://sourceforge.net/project/showfiles.php?group_id=241310</a>.<br>
&quot;config.mak&quot; files for <b>Tecmake</b> are also available.</p>
<p>The DLLs were built using the <b>cdecl</b> calling convention. This should be
a problem for Visual Basic users.</p>
-<p>In Visual C++ we use the single thread C Run Time Library for static libraries and the multi thread C RTL for DLLs.
- Because this is the default in Visual Studio for new projects. Since Visual C++ 8, both use the multi thread C RTL.</p>
+<p>In Visual C++ 6 and 7 we use the single thread C Run Time Library for static libraries and the multi thread C RTL for DLLs.
+ Because this were the default in Visual Studio for new projects. Since Visual C++ 8, both use the multithread C RTL.</p>
<h3><a name="pack">Packaging</a></h3>
<p>The package files available for download are named according to the platform where they were build.</p>
<p>In UNIX all strings are based in the result of the command &quot;uname -a&quot;. The package name is a concatenation of the
@@ -62,7 +65,7 @@ Linux&nbsp; with Kernel version 2.6 built with gcc 4.<br>
<b>iup2_4_Win32_vc8_lib.tar.gz</b> = IUP 2.4 32-bits Static Libraries and Includes for Windows to use with Visual C++
8 (2005).<br>
<b>iup2_4_Win32_dll9_lib.tar.gz</b> = IUP 2.4 32-bits Dynamic Libraries (DLLs),
-stub libraries and Includes for Windows to use with Visual C++
+import libraries and Includes for Windows to use with Visual C++
9 (2008).<br>
<b>iup2_4_Docs_html.tar.gz</b> = IUP 2.4 documentation files in HTML format (the web site files can be browsed
locally).<br>
@@ -115,203 +118,214 @@ http://www.tecgraf.puc-rio.br/iup/en/ide_guide/eclipse.html</a>
<p>The following platforms can be available:</p>
<table border="0" cellpadding="3" style="border-collapse: collapse" bordercolor="#111111" align="center">
<tr>
+ <th bgcolor="#DDDDDD" align="right" class="style2">Package Name</th>
+ <th bgcolor="#DDDDDD" class="style2">Description</th>
+ </tr>
+ <tr>
<td bgcolor="#DDDDDD" align="right"><b>AIX43</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;IBM AIX 4.3 (ppc) / gcc 2.95 / Motif 2.1
+ <td bgcolor="#DDDDDD">&nbsp;IBM AIX 4.3 (ppc) / gcc 2.95 / Motif 2.1
</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>IRIX65</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;SGI IRIX 6.5 (mips) / gcc 3.0 / Motif 2.1
+ <td bgcolor="#C0C0C0">&nbsp;SGI IRIX 6.5 (mips) / gcc 3.0 / Motif 2.1
</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>IRIX6465</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;SGI IRIX 6.5 (mips) / gcc 3.3 / Motif 1.2</td>
+ <td bgcolor="#C0C0C0">&nbsp;SGI IRIX 6.5 (mips) / gcc 3.3 / Motif 1.2</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Linux24</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Red Hat 7.3 (x86) / Kernel 2.4 / gcc 2.95 / Open Motif 2.1
+ <td bgcolor="#DDDDDD">&nbsp;Red Hat 7.3 (x86) / Kernel 2.4 / gcc 2.95 / Open Motif 2.1
/ GTK 2.0</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Linux24g3</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;CentOS 3.9 (x86) / Kernel 2.4 / gcc 3.2 / Open Motif 2.2
+ <td bgcolor="#DDDDDD">&nbsp;CentOS 3.9 (x86) / Kernel 2.4 / gcc 3.2 / Open Motif 2.2
<sup><span class="style1">3</span></sup> / GTK 2.2</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right" style="height: 27px"><b>Linux24g3_64&nbsp; </b></td>
- <td bgcolor="#DDDDDD" style="height: 27px; width: 580px;">&nbsp;Red Hat E.L. WS 3 (x64)&nbsp;/ Kernel 2.4 / gcc 3.2 / Open Motif
+ <td bgcolor="#DDDDDD">&nbsp;Red Hat E.L. WS 3 (x64)&nbsp;/ Kernel 2.4 / gcc 3.2 / Open Motif
2.2 <sup><span class="style1">3</span></sup> / GTK 2.2</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Linux26</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;CentOS 4.6 (x86) / Kernel 2.6 / gcc 3.4 / Open Motif 2.2
+ <td bgcolor="#DDDDDD">&nbsp;CentOS 4.6 (x86) / Kernel 2.6 / gcc 3.4 / Open Motif 2.2
<sup><span class="style1">3</span></sup> / GTK 2.4</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Linux26_64</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;CentOS 4.6 (x64) / Kernel 2.6 / gcc 3.4 / Open Motif 2.2
+ <td bgcolor="#DDDDDD">&nbsp;CentOS 4.6 (x64) / Kernel 2.6 / gcc 3.4 / Open Motif 2.2
<sup><span class="style1">3</span></sup> / GTK 2.4</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Linux26g4</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;CentOS 5.3 (x86) / Kernel 2.6 / gcc 4.1 / Open Motif
+ <td bgcolor="#DDDDDD">&nbsp;CentOS 5.3 (x86) / Kernel 2.6 / gcc 4.1 / Open Motif
2.2 <sup><span class="style1">3</span></sup> / GTK 2.12</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><strong>Linux26g4_64</strong></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;CentOS 5.2 (x64) / Kernel 2.6 / gcc 4.1 /
+ <td bgcolor="#DDDDDD">&nbsp;CentOS 5.2 (x64) / Kernel 2.6 / gcc 4.1 /
OpenMotif 2.2 <sup><span class="style1">3</span></sup> / GTK 2.10</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Linux26g4ppc</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Ubuntu 7.10 (ppc) / Kernel 2.6 / gcc 4.1 / Open Motif 2.2
+ <td bgcolor="#DDDDDD">&nbsp;Ubuntu 7.10 (ppc) / Kernel 2.6 / gcc 4.1 / Open Motif 2.2
<sup><span class="style1">3</span></sup> / GTK 2.?</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><strong>Linux26_ia64</strong></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Red Hat E.L. AS 4 (ia64) / Kernel 2.6 / gcc 3.4 /
+ <td bgcolor="#DDDDDD">&nbsp;Red Hat E.L. AS 4 (ia64) / Kernel 2.6 / gcc 3.4 /
Open Motif 2.2 <sup><span class="style1">3</span></sup> / GTK 2.4</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>SunOS57</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;Sun Solaris 7 (sparc) / gcc 2.95 / Motif 2.1
+ <td bgcolor="#C0C0C0">&nbsp;Sun Solaris 7 (sparc) / gcc 2.95 / Motif 2.1
</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>SunOS58</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;Sun Solaris 8 (sparc) / gcc 3.4 / Motif 2.1
+ <td bgcolor="#C0C0C0">&nbsp;Sun Solaris 8 (sparc) / gcc 3.4 / Motif 2.1
</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><strong>SunOS510x86</strong></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;Sun Solaris 10 (x86) / gcc 3.3 / Motif 2.1
+ <td bgcolor="#C0C0C0">&nbsp;Sun Solaris 10 (x86) / gcc 3.3 / Motif 2.1
</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>FreeBSD54</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Free BSD 5.4 (x86) / gcc 3.4 / Open Motif 2.2
+ <td bgcolor="#DDDDDD">&nbsp;Free BSD 5.4 (x86) / gcc 3.4 / Open Motif 2.2
<sup><span class="style1">3</span></sup></td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Darwin811</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;Mac OS X 10.4.11 (ppc)
+ <td bgcolor="#C0C0C0">&nbsp;Mac OS X 10.4.11 (ppc)
[Tiger] / Darwin Kernel 8.11 / gcc 4.0 /
<a href="http://www.ist-inc.com/DOWNLOADS/motif_download.html">Open Motif 2.1</a></td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Darwin811x86</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;Mac OS X 10.4.11 (x86)
- [Tiger] / Darwin Kernel 8.11 / gcc 4.0 /
- <a href="http://www.ist-inc.com/DOWNLOADS/motif_download.html">Open Motif 2.1</a></td>
+ <td bgcolor="#C0C0C0">&nbsp;Mac OS X 10.4.11 (x86)
+ [Tiger] / Darwin Kernel 8.11 / gcc 4.0 / Open Motif 2.1</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Darwin94x86</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;Mac OS X 10.5.4 (x86)
- [Leopard] / Darwin Kernel 9.4 / gcc 4.0 /
- <a href="http://www.ist-inc.com/DOWNLOADS/motif_download.html">Open Motif 2.1</a></td>
+ <td bgcolor="#C0C0C0">&nbsp;Mac OS X 10.5.4 (x86)
+ [Leopard] / Darwin Kernel 9.4 / gcc 4.0 / Open Motif 2.1</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win32_vc6</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Microsoft Visual C++ 6 (static RTL/single thread)</td>
+ <td bgcolor="#DDDDDD">&nbsp;Static library built with Microsoft Visual C++ 6 (static RTL/single thread)</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win32_vc7</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Microsoft Visual C++ 7.1 (.NET 2003) (static RTL/single thread)<br>
- &nbsp;Also compatible with Microsoft Visual C++ Toolkit 2003 -<br>
- &nbsp;<a href="http://msdn.microsoft.com/visualc/vctoolkit2003/" style="text-decoration: none">http://msdn.microsoft.com/visualc/vctoolkit2003/</a>
- ¹</td>
+ <td bgcolor="#DDDDDD">&nbsp;Static library built with Microsoft Visual C++ 7.1 (.NET 2003) (static RTL/single thread)<br>
+ &nbsp;Also compatible with Microsoft Visual C++ Toolkit 2003</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win32_vc8</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Microsoft Visual C++ 8.0 (2005) (static RTL/multithread)<br>
- &nbsp;Also compatible with Microsoft Visual C++ 2005 Express Edition -<br>
- &nbsp;<a style="text-decoration: none" href="http://msdn.microsoft.com/vstudio/express/visualc/">http://msdn.microsoft.com/vstudio/express/visualc/</a>
- ¹</td>
+ <td bgcolor="#DDDDDD">&nbsp;Static library built with Microsoft Visual C++ 8.0 (2005) (static RTL/multithread)<br>
+ &nbsp;Also compatible with Microsoft Visual C++ 2005 Express Edition</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win32_vc9</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Microsoft Visual C++ 9.0 (2008) (static RTL/multithread)<br>
+ <td bgcolor="#DDDDDD">&nbsp;Static library built with Microsoft Visual C++ 9.0 (2008) (static RTL/multithread)<br>
&nbsp;Also compatible with Microsoft Visual C++ 2008 Express Edition -<br>
- &nbsp;<a style="text-decoration: none" href="http://msdn.microsoft.com/vstudio/express/visualc/">http://msdn.microsoft.com/vstudio/express/visualc/</a>
+ &nbsp;<a href="http://www.microsoft.com/express/vc/">http://www.microsoft.com/express/vc/</a>
¹</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Win32_dll6</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;built using vc6, creates dependency with MSVCRT.DLL<br>
- &nbsp;(either other libraries or new applications).</td>
+ <td bgcolor="#C0C0C0">&nbsp;DLL and import library built
+ with vc6, creates dependency with MSVCRT.DLL</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Win32_dll7</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;built using vc7, creates dependency with MSVCR71.DLL<br>
- &nbsp;(either other libraries or new applications).</td>
+ <td bgcolor="#C0C0C0">&nbsp;DLL and import library built
+ with vc7, creates dependency with MSVCR71.DLL</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Win32_dll8</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;built using vc8, creates dependency with MSVCR80.DLL<br>
- &nbsp;(either other libraries or new applications).</td>
+ <td bgcolor="#C0C0C0">&nbsp;DLL and import library built
+ with vc8, creates dependency with MSVCR80.DLL</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Win32_dll9</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;built using vc9, creates dependency with MSVCR90.DLL<br>
- &nbsp;(either other libraries or new applications).</td>
+ <td bgcolor="#C0C0C0">&nbsp;DLL and import library built
+ with vc9, creates dependency with MSVCR90.DLL</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win64_vc8</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp; Same as <b>Win32_vc8</b> but for 64-bits
- systems using x64 standard.</td>
+ <td bgcolor="#DDDDDD">&nbsp;Same as <b>Win32_vc8</b> but for 64-bits
+ systems using the x64 standard.</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win64_vc9</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp; Same as <b>Win32_vc9</b> but for 64-bits
- systems using x64 standard.</td>
+ <td bgcolor="#DDDDDD">&nbsp;Same as <b>Win32_vc9</b> but for 64-bits
+ systems using the x64 standard.</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win64_dll8</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp; Same as <b>Win32_dll8</b> but for 64-bits
- systems using x64 standard.</td>
+ <td bgcolor="#DDDDDD">&nbsp;Same as <b>Win32_dll8</b> but for 64-bits
+ systems using the x64 standard.</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win64_dll9</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp; Same as <b>Win32_dll9</b> but for 64-bits
- systems using x64 standard.</td>
+ <td bgcolor="#DDDDDD">&nbsp;Same as <b>Win32_dll9</b> but for 64-bits
+ systems using the x64 standard.</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Win32_gcc3</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;Cygwin gcc 3.4&nbsp; (Depends on Cygwin DLL 1.5) -
+ <td bgcolor="#C0C0C0">&nbsp;Static library built with Cygwin gcc 3.4&nbsp; (Depends on Cygwin
+ DLL 1.5)</td>
+ </tr>
+ <tr>
+ <td bgcolor="#C0C0C0" align="right"><b>Win32_gcc4</b></td>
+ <td bgcolor="#C0C0C0">&nbsp;Static library built with Cygwin gcc 4.3&nbsp; (Depends on Cygwin DLL 1.7) -
<a href="http://www.cygwin.com/" style="text-decoration: none">http://www.cygwin.com/</a>
¹</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Win32_cygw15</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;Same as <b>Win32_gcc3</b>, but using the Cygwin Posix
+ <td bgcolor="#C0C0C0">&nbsp;Same as <b>Win32_gcc3</b>, but using the Cygwin Posix
+ system</td>
+ </tr>
+ <tr>
+ <td bgcolor="#C0C0C0" align="right"><b>Win32_cygw17</b></td>
+ <td bgcolor="#C0C0C0">&nbsp;Same as <b>Win32_gcc4</b>, but using the Cygwin Posix
system</td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Win32_mingw3</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;MingW gcc 3.4 -
+ <td bgcolor="#C0C0C0">&nbsp;Static library built with MingW gcc 3.4</td>
+ </tr>
+ <tr>
+ <td bgcolor="#C0C0C0" align="right"><b>Win32_mingw4</b></td>
+ <td bgcolor="#C0C0C0">&nbsp;Static library built with MingW gcc 4.3 -
<a href="http://www.mingw.org/" style="text-decoration: none">http://www.mingw.org/</a>
¹<br>
- &nbsp;Also compatible with Dev-C++ -
+ &nbsp;Also compatible with Dev-C++ -
<a href="http://www.bloodshed.net/devcpp.html" style="text-decoration: none">http://www.bloodshed.net/devcpp.html</a><br>
&nbsp;and with Code Blocks - <a href="http://www.codeblocks.org/">
http://www.codeblocks.org/</a>
¹</td>
</tr>
<tr>
- <td bgcolor="#C0C0C0" align="right"><b>Win32_mingw4</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;MingW gcc 4.4 -
- <a href="http://www.mingw.org/" style="text-decoration: none">http://www.mingw.org/</a>
- ¹</td>
+ <td bgcolor="#C0C0C0" align="right"><b>Win32_dllw4</b></td>
+ <td bgcolor="#C0C0C0">&nbsp;DLL and import library built
+ with MingW gcc 4.3</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win32_owc1</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Open Watcom 1.5 -
+ <td bgcolor="#DDDDDD">&nbsp;Static library built with Open Watcom 1.5 -
<a href="http://www.openwatcom.org/" style="text-decoration: none">http://www.openwatcom.org/</a></td>
</tr>
<tr>
<td bgcolor="#C0C0C0" align="right"><b>Win32_bc56</b></td>
- <td bgcolor="#C0C0C0" style="width: 580px">&nbsp;Borland C++ BuilderX 1.0 / Borland C++ 5.6 Compiler -
+ <td bgcolor="#C0C0C0">&nbsp;Static library built with Borland C++ BuilderX 1.0 / Borland C++ 5.6 Compiler -
<br />
&nbsp;<a href="http://www.borland.com/products/downloads/download_cbuilderx.html" style="text-decoration: none">http://www.borland.com/products/downloads/download_cbuilderx.html</a>
<font face="Times New Roman">¹,²</font><br>
@@ -320,16 +334,22 @@ http://www.tecgraf.puc-rio.br/iup/en/ide_guide/eclipse.html</a>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win32_bin</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Executables only for Windows NT/2000/XP</td>
+ <td bgcolor="#DDDDDD">&nbsp;Executables only for Windows NT/2000/XP (can be
+ generated by any of the above compilers)</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><b>Win64_bin</b></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Same as <b>Win32_bin</b> but for 64-bits systems
+ <td bgcolor="#DDDDDD">&nbsp;Same as <b>Win32_bin</b> but for 64-bits systems
using the x64 standard</td>
</tr>
<tr>
<td bgcolor="#DDDDDD" align="right"><strong>Win32_cygw15_bin</strong></td>
- <td bgcolor="#DDDDDD" style="width: 580px">&nbsp;Executables only for Windows NT/2000/XP, but
+ <td bgcolor="#DDDDDD">&nbsp;Executables only for Windows NT/2000/XP, but
+ using the Cygwin Posix system</td>
+ </tr>
+ <tr>
+ <td bgcolor="#DDDDDD" align="right"><strong>Win32_cygw17_bin</strong></td>
+ <td bgcolor="#DDDDDD">&nbsp;Executables only for Windows NT/2000/XP, but
using the Cygwin Posix system</td>
</tr>
</table>
diff --git a/src/tecmake_compact.mak b/src/tecmake_compact.mak
index d4fe0af..9d2cccf 100644
--- a/src/tecmake_compact.mak
+++ b/src/tecmake_compact.mak
@@ -1,12 +1,15 @@
#-------------------------------------------------------------------------#
#- Tecmake (Compact Version) -#
#- Generic Makefile to build applications and libraries at TeCGraf -#
-#- The user makefile usually has the name "config.mak". -#
+#- The user makefile usually has the name "config.mak". -#
#-------------------------------------------------------------------------#
+#---------------------------------#
# Tecmake Version
-VERSION = 3.19
+VERSION = 3.21
+
+#---------------------------------#
# First target
.PHONY: build
build: tecmake
@@ -162,6 +165,9 @@ STDLFLAGS := r
DEBUGFLAGS := -g
STDLDFLAGS := -shared
DLIBEXT := so
+DLIBPRE := lib
+APPEXT :=
+
ifneq ($(findstring Linux, $(TEC_UNAME)), )
GTK_DEFAULT = Yes
@@ -176,6 +182,7 @@ ifneq ($(findstring Linux24, $(TEC_UNAME)), )
GTK_DEFAULT :=
endif
+
#---------------------------------#
# Build Tools
@@ -279,6 +286,7 @@ ifdef USE_CC
CC := cc
CPPC := CC
STDFLAGS =
+ UNAMES := $(UNAMES_CC)
ifdef USE_CC_DIR
TEC_UNAME := $(TEC_UNAME)cc
endif
@@ -297,7 +305,11 @@ ifneq ($(findstring gcc, $(TEC_UNAME)), )
endif
TEC_UNAME_DIR ?= $(TEC_UNAME)
+TEC_UNAME_LIB_DIR ?= $(TEC_UNAME)
ifdef DBG
+ ifdef DBG_LIB_DIR
+ TEC_UNAME_LIB_DIR := $(TEC_UNAME_DIR)d
+ endif
ifdef DBG_DIR
TEC_UNAME_DIR := $(TEC_UNAME_DIR)d
endif
@@ -455,7 +467,7 @@ ifneq ($(findstring Darwin, $(TEC_UNAME)), )
MOTIF_INC := /usr/OpenMotif/include
MOTIF_LIB := /usr/OpenMotif/lib
ifdef BUILD_DYLIB
- STDLDFLAGS := -dynamiclib -install_name lib$(TARGETNAME).dylib
+ STDLDFLAGS := -dynamiclib -Wl -headerpad_max_install_names -undefined dynamic_lookup -install_name lib$(TARGETNAME).dylib
DLIBEXT := dylib
else
STDLDFLAGS := -bundle -undefined dynamic_lookup
@@ -468,12 +480,11 @@ ifneq ($(findstring FreeBSD, $(TEC_UNAME)), )
endif
-################################
+#---------------------------------#
# Allows an extra configuration file.
ifdef EXTRA_CONFIG
include $(EXTRA_CONFIG)
endif
-################################
#---------------------------------#
@@ -485,6 +496,7 @@ CD ?= $(TECTOOLS_HOME)/cd
IM ?= $(TECTOOLS_HOME)/im
LUA ?= $(TECTOOLS_HOME)/lua
LUA51 ?= $(TECTOOLS_HOME)/lua5.1
+LUA52 ?= $(TECTOOLS_HOME)/lua52
#---------------------------------#
@@ -492,7 +504,7 @@ LUA51 ?= $(TECTOOLS_HOME)/lua5.1
# Library order:
# user + iupcd + cd + iup + motif + X
-# Library path order is the oposite
+# Library path order is reversed
ifdef USE_LUA
LUASUFX :=
@@ -529,12 +541,18 @@ ifdef USE_LUA51
NO_LUALIB := Yes
endif
+ifdef USE_LUA52
+ LUASUFX := 52
+ LIBLUASUFX := 52
+ override USE_LUA = Yes
+ LUA := $(LUA52)
+ NO_LUALIB := Yes
+endif
+
ifdef USE_IUP3
override USE_IUP = Yes
-endif
-
-ifdef USE_IUP3BETA
- IUP := $(IUP)3
+# Inside Tecgraf only
+# IUP := $(IUP)3
endif
ifdef USE_IUPBETA
@@ -553,19 +571,23 @@ ifdef USE_GLUT
override USE_OPENGL = Yes
endif
+ifdef USE_GDK
+ override USE_GTK = Yes
+endif
+
ifdef USE_IUPCONTROLS
override USE_CD = Yes
override USE_IUP = Yes
ifdef USE_IUPLUA
ifdef USE_STATIC
- SLIB += $(IUP)/lib/$(TEC_UNAME)/libiupluacontrols$(LIBLUASUFX).a
+ SLIB += $(IUP)/lib/$(TEC_UNAME_LIB_DIR)/libiupluacontrols$(LIBLUASUFX).a
else
LIBS += iupluacontrols$(LIBLUASUFX)
endif
override USE_CDLUA = Yes
endif
ifdef USE_STATIC
- SLIB += $(IUP)/lib/$(TEC_UNAME)/libiupcontrols.a
+ SLIB += $(IUP)/lib/$(TEC_UNAME_LIB_DIR)/libiupcontrols.a
else
LIBS += iupcontrols
endif
@@ -574,7 +596,7 @@ endif
ifdef USE_IMLUA
override USE_IM = Yes
ifdef USE_STATIC
- SLIB += $(IM)/lib/$(TEC_UNAME)/libimlua$(LIBLUASUFX).a
+ SLIB += $(IM)/lib/$(TEC_UNAME_LIB_DIR)/libimlua$(LIBLUASUFX).a
else
LIBS += imlua$(LIBLUASUFX)
endif
@@ -585,10 +607,10 @@ ifdef USE_CDLUA
ifdef USE_STATIC
ifdef USE_IUP
ifdef USE_OLDNAMES
- SLIB += $(CD)/lib/$(TEC_UNAME)/libcdluaiup$(LIBLUASUFX).a
+ SLIB += $(CD)/lib/$(TEC_UNAME_LIB_DIR)/libcdluaiup$(LIBLUASUFX).a
endif
endif
- SLIB += $(CD)/lib/$(TEC_UNAME)/libcdlua$(LIBLUASUFX).a
+ SLIB += $(CD)/lib/$(TEC_UNAME_LIB_DIR)/libcdlua$(LIBLUASUFX).a
else
ifdef USE_IUP
ifdef USE_OLDNAMES
@@ -604,13 +626,13 @@ ifdef USE_IUPLUA
ifdef USE_STATIC
ifdef USE_CD
ifndef USE_OLDNAMES
- SLIB += $(IUP)/lib/$(TEC_UNAME)/libiupluacd$(LIBLUASUFX).a
+ SLIB += $(IUP)/lib/$(TEC_UNAME_LIB_DIR)/libiupluacd$(LIBLUASUFX).a
endif
endif
ifdef USE_OPENGL
- SLIB += $(IUP)/lib/$(TEC_UNAME)/libiupluagl$(LIBLUASUFX).a
+ SLIB += $(IUP)/lib/$(TEC_UNAME_LIB_DIR)/libiupluagl$(LIBLUASUFX).a
endif
- SLIB += $(IUP)/lib/$(TEC_UNAME)/libiuplua$(LIBLUASUFX).a
+ SLIB += $(IUP)/lib/$(TEC_UNAME_LIB_DIR)/libiuplua$(LIBLUASUFX).a
else
ifdef USE_CD
ifndef USE_OLDNAMES
@@ -625,7 +647,7 @@ ifdef USE_IUPLUA
endif
ifdef USE_LUA
- LUA_LIB ?= $(LUA)/lib/$(TEC_UNAME)
+ LUA_LIB ?= $(LUA)/lib/$(TEC_UNAME_LIB_DIR)
ifdef USE_STATIC
ifndef NO_LUALIB
SLIB += $(LUA_LIB)/liblualib$(LUASUFX).a
@@ -672,13 +694,13 @@ ifdef USE_IUP
ifdef USE_STATIC
ifdef USE_CD
ifndef USE_OLDNAMES
- SLIB += $(IUP)/lib/$(TEC_UNAME)/libiupcd.a
+ SLIB += $(IUP)/lib/$(TEC_UNAME_LIB_DIR)/libiupcd.a
endif
endif
ifdef USE_OPENGL
- SLIB += $(IUP)/lib/$(TEC_UNAME)/libiupgl.a
+ SLIB += $(IUP)/lib/$(TEC_UNAME_LIB_DIR)/libiupgl.a
endif
- SLIB += $(IUP)/lib/$(TEC_UNAME)/libiup$(IUPSUFX).a
+ SLIB += $(IUP)/lib/$(TEC_UNAME_LIB_DIR)/libiup$(IUPSUFX).a
else
ifdef USE_CD
ifndef USE_OLDNAMES
@@ -689,7 +711,7 @@ ifdef USE_IUP
LIBS += iupgl
endif
LIBS += iup$(IUPSUFX)
- LDIR += $(IUP)/lib/$(TEC_UNAME)
+ LDIR += $(IUP)/lib/$(TEC_UNAME_LIB_DIR)
endif
INCLUDES += $(IUP)/include
endif
@@ -699,28 +721,37 @@ ifdef USE_CD
ifdef USE_STATIC
ifdef USE_IUP
ifdef USE_OLDNAMES
- SLIB += $(CD)/lib/$(TEC_UNAME)/libcdiup.a
+ SLIB += $(CD)/lib/$(TEC_UNAME_LIB_DIR)/libcdiup.a
endif
endif
ifdef USE_XRENDER
ifdef USE_OLDNAMES
- SLIB += $(CD)/lib/$(TEC_UNAME)/libcdxrender.a
+ SLIB += $(CD)/lib/$(TEC_UNAME_LIB_DIR)/libcdxrender.a
else
- SLIB += $(CD)/lib/$(TEC_UNAME)/libcdcontextplus.a
+ SLIB += $(CD)/lib/$(TEC_UNAME_LIB_DIR)/libcdcontextplus.a
endif
endif
- SLIB += $(CD)/lib/$(TEC_UNAME)/libcd.a
+ ifdef USE_GDK
+ SLIB += $(CD)/lib/$(TEC_UNAME_LIB_DIR)/libcdgdk.a
+ else
+ SLIB += $(CD)/lib/$(TEC_UNAME_LIB_DIR)/libcd.a
+ endif
ifdef USE_XRENDER
LIBS += Xrender Xft
else
ifndef USE_GTK
ifndef USE_OLDNAMES
# Freetype is included in GTK
- SLIB += $(CD)/lib/$(TEC_UNAME)/libfreetype.a
+ SLIB += $(CD)/lib/$(TEC_UNAME_LIB_DIR)/libfreetype.a
endif
endif
endif
else
+ ifdef USE_IUP
+ ifdef USE_OLDNAMES
+ LIBS += cdiup
+ endif
+ endif
ifdef USE_XRENDER
ifdef USE_OLDNAMES
LIBS += cdxrender
@@ -728,8 +759,12 @@ ifdef USE_CD
LIBS += cdcontextplus
endif
endif
- LIBS += cd
- LDIR += $(CD)/lib/$(TEC_UNAME)
+ ifdef USE_GDK
+ LIBS += cdgdk
+ else
+ LIBS += cd
+ endif
+ LDIR += $(CD)/lib/$(TEC_UNAME_LIB_DIR)
ifdef USE_XRENDER
LIBS += Xrender Xft
else
@@ -746,16 +781,16 @@ endif
ifdef USE_IM
ifdef USE_STATIC
- SLIB += $(IM)/lib/$(TEC_UNAME)/libim.a
+ SLIB += $(IM)/lib/$(TEC_UNAME_LIB_DIR)/libim.a
else
LIBS += im
- LDIR += $(IM)/lib/$(TEC_UNAME)
+ LDIR += $(IM)/lib/$(TEC_UNAME_LIB_DIR)
endif
INCLUDES += $(IM)/include
endif
-# All except gcc in Windows (Cygwin)
-ifeq ($(findstring gcc, $(TEC_UNAME)), )
+# All except gcc in Windows (Cygwin/MingW)
+ifeq ($(findstring Win, $(TEC_SYSNAME)), )
ifdef USE_GLUT
LIBS += glut
@@ -787,35 +822,41 @@ ifdef USE_MOTIF
endif
ifdef USE_GTK
-# ifneq ($(findstring Darwin, $(TEC_UNAME)), )
-# STDINCS += /Library/Frameworks/Gtk.framework/Headers
-# STDINCS += /Library/Frameworks/GLib.framework/Headers
-# STDINCS += /Library/Frameworks/Cairo.framework/Headers
-# LFLAGS += -framework Gtk
-# else
- ifneq ($(findstring Darwin, $(TEC_UNAME)), )
- GTK_BASE := /sw
- LDIR += /sw/lib
- LIBS += freetype
- else
- GTK_BASE := /usr
- endif
+ ifneq ($(findstring Darwin, $(TEC_UNAME)), )
+# Option 1 - old GTK port
+# GTK_BASE := /sw
+# LDIR += /sw/lib
+# Option 2 - old Framework
+# STDINCS += /Library/Frameworks/Gtk.framework/Headers
+# STDINCS += /Library/Frameworks/GLib.framework/Headers
+# STDINCS += /Library/Frameworks/Cairo.framework/Headers
+# LFLAGS += -framework Gtk
+# Option 3 - new Framework
+ GTK_BASE := /Users/cpts/gtk/inst
+ LDIR += $(GTK_BASE)/lib
+ LFLAGS += -framework Carbon
+ LIBS += gtk-quartz-2.0 gdk-quartz-2.0 pangoft2-1.0
+
+ LIBS += freetype
+ else
+ GTK_BASE := /usr
override USE_X11 = Yes
- LIBS += gtk-x11-2.0 gdk-x11-2.0 gdk_pixbuf-2.0 pango-1.0 pangox-1.0 gobject-2.0 gmodule-2.0 glib-2.0
- STDINCS += $(GTK_BASE)/include/atk-1.0 $(GTK_BASE)/include/gtk-2.0 $(GTK_BASE)/include/cairo $(GTK_BASE)/include/pango-1.0 $(GTK_BASE)/include/glib-2.0
- ifeq ($(TEC_SYSARCH), x64)
- STDINCS += $(GTK_BASE)/lib64/glib-2.0/include $(GTK_BASE)/lib64/gtk-2.0/include
- else
- ifeq ($(TEC_SYSARCH), ia64)
- STDINCS += $(GTK_BASE)/lib64/glib-2.0/include $(GTK_BASE)/lib64/gtk-2.0/include
- else
- STDINCS += $(GTK_BASE)/lib/glib-2.0/include $(GTK_BASE)/lib/gtk-2.0/include
- endif
- endif
- ifneq ($(findstring FreeBSD, $(TEC_UNAME)), )
- STDINCS += /lib/X11R6/include/gtk-2.0
- endif
-# endif
+ LIBS += gtk-x11-2.0 gdk-x11-2.0 pangox-1.0
+ endif
+ LIBS += gdk_pixbuf-2.0 pango-1.0 gobject-2.0 gmodule-2.0 glib-2.0
+ STDINCS += $(GTK_BASE)/include/atk-1.0 $(GTK_BASE)/include/gtk-2.0 $(GTK_BASE)/include/cairo $(GTK_BASE)/include/pango-1.0 $(GTK_BASE)/include/glib-2.0
+ ifeq ($(TEC_SYSARCH), x64)
+ STDINCS += $(GTK_BASE)/lib64/glib-2.0/include $(GTK_BASE)/lib64/gtk-2.0/include
+ else
+ ifeq ($(TEC_SYSARCH), ia64)
+ STDINCS += $(GTK_BASE)/lib64/glib-2.0/include $(GTK_BASE)/lib64/gtk-2.0/include
+ else
+ STDINCS += $(GTK_BASE)/lib/glib-2.0/include $(GTK_BASE)/lib/gtk-2.0/include
+ endif
+ endif
+ ifneq ($(findstring FreeBSD, $(TEC_UNAME)), )
+ STDINCS += /lib/X11R6/include/gtk-2.0
+ endif
endif
ifdef USE_QT
@@ -836,8 +877,16 @@ LIBS += m
else
# gcc in Windows
- NO_DYNAMIC ?= Yes
STDDEFS += -DWIN32
+
+ # Alternative MingW support (not currently used)
+ ifneq ($(findstring mingw, $(TEC_UNAME)), )
+ DLIBEXT := dll
+ APPEXT := .exe
+ DLIBPRE :=
+ else
+ NO_DYNAMIC ?= Yes
+ endif
ifdef USE_NOCYGWIN
STDFLAGS += -mno-cygwin
@@ -848,7 +897,7 @@ else
endif
ifdef USE_OPENGL
- LIBS += opengl32 glu32 glaux
+ LIBS += glaux glu32 opengl32
endif
LIBS += gdi32 winspool comdlg32 comctl32 ole32
@@ -899,14 +948,18 @@ CXXFLAGS = $(CPPFLAGS) $(STDFLAGS) $(INCLUDES) $(STDINCS) $(EXTRAINCS) $(DEFINES
# Sources with relative path
SOURCES := $(addprefix $(SRCDIR)/, $(SRC))
+TARGETAPPNAME := $(TARGETNAME)$(APPEXT)
+TARGETSLIBNAME := lib$(TARGETNAME).a
+TARGETDLIBNAME := $(DLIBPRE)$(TARGETNAME).$(DLIBEXT)
+
# Target for applications or libraries
ifeq ($(MAKETYPE), APP)
- TARGET := $(TARGETDIR)/$(TARGETNAME)
+ TARGET := $(TARGETDIR)/$(TARGETAPPNAME)
else
ifeq ($(NO_DYNAMIC), Yes)
- TARGET := $(TARGETDIR)/lib$(TARGETNAME).a
+ TARGET := $(TARGETDIR)/$(TARGETSLIBNAME)
else
- TARGET := $(TARGETDIR)/lib$(TARGETNAME).a $(TARGETDIR)/lib$(TARGETNAME).$(DLIBEXT)
+ TARGET := $(TARGETDIR)/$(TARGETSLIBNAME) $(TARGETDIR)/$(TARGETDLIBNAME)
endif
endif
@@ -961,9 +1014,9 @@ print-start:
# Dynamic Library Build
.PHONY: dynamic-lib
-dynamic-lib: $(TARGETDIR)/lib$(TARGETNAME).$(DLIBEXT)
+dynamic-lib: $(TARGETDIR)/$(TARGETDLIBNAME)
-$(TARGETDIR)/lib$(TARGETNAME).$(DLIBEXT) : $(LOHS) $(OBJS) $(EXTRADEPS)
+$(TARGETDIR)/$(TARGETDLIBNAME) : $(LOHS) $(OBJS) $(EXTRADEPS)
$(LD) $(STDLDFLAGS) -o $@ $(OBJS) $(SLIB) $(LFLAGS)
@echo 'Tecmake - Dynamic Library ($@) Done.'; echo ''
@@ -972,9 +1025,9 @@ $(TARGETDIR)/lib$(TARGETNAME).$(DLIBEXT) : $(LOHS) $(OBJS) $(EXTRADEPS)
# Static Library Build
.PHONY: static-lib
-static-lib: $(TARGETDIR)/lib$(TARGETNAME).a
+static-lib: $(TARGETDIR)/$(TARGETSLIBNAME)
-$(TARGETDIR)/lib$(TARGETNAME).a : $(LOHS) $(OBJS) $(EXTRADEPS)
+$(TARGETDIR)/$(TARGETSLIBNAME) : $(LOHS) $(OBJS) $(EXTRADEPS)
$(AR) $(STDLFLAGS) $@ $(OBJS) $(SLIB) $(LCFLAGS)
-$(RANLIB) $@
@echo 'Tecmake - Static Library ($@) Done.'; echo ''
@@ -984,9 +1037,9 @@ $(TARGETDIR)/lib$(TARGETNAME).a : $(LOHS) $(OBJS) $(EXTRADEPS)
# Application Build
.PHONY: application
-application: $(TARGETDIR)/$(TARGETNAME)
+application: $(TARGETDIR)/$(TARGETAPPNAME)
-$(TARGETDIR)/$(TARGETNAME) : $(LOHS) $(OBJS) $(EXTRADEPS)
+$(TARGETDIR)/$(TARGETAPPNAME) : $(LOHS) $(OBJS) $(EXTRADEPS)
$(LINKER) -o $@ $(OBJS) $(SLIB) $(LFLAGS)
@if [ ! -z "$(STRIP)" ]; then \
echo "Striping debug information" ;\
@@ -1147,11 +1200,11 @@ clean-target:
.PHONY: clean
clean: clean-target clean-obj
-# make rebuild
+# make strip
# Remove symbols from executables
.PHONY: strip
strip:
- test -r $(TARGETDIR)/$(TARGETNAME) && strip $(TARGETDIR)/$(TARGETNAME)
+ test -r $(TARGETDIR)/$(TARGETAPPNAME) && strip $(TARGETDIR)/$(TARGETAPPNAME)
# make rebuild
# Rebuild target and object files
@@ -1163,6 +1216,9 @@ rebuild: clean-extra clean-lohs clean-obj clean-target tecmake
.PHONY: relink
relink: clean-target tecmake
+
+#---------------------------------#
+
.PHONY: version
version:
@echo "Tecmake Compact Version $(VERSION)"