diff options
-rw-r--r-- | .travis.yml | 6 | ||||
-rw-r--r-- | debian/changelog | 66 | ||||
-rw-r--r-- | debian/colobot-common-sounds.install | 2 | ||||
-rw-r--r-- | debian/colobot-common-textures.install | 1 | ||||
-rw-r--r-- | debian/colobot-common.install | 5 | ||||
-rw-r--r-- | debian/colobot-dev-doc.doc-base | 10 | ||||
-rw-r--r-- | debian/colobot-dev-doc.install | 1 | ||||
-rw-r--r-- | debian/colobot-dev-doc.links | 1 | ||||
-rw-r--r-- | debian/colobot.install | 11 | ||||
-rw-r--r-- | debian/colobot.links | 7 | ||||
-rw-r--r-- | debian/colobot.menu | 6 | ||||
-rw-r--r-- | debian/compat | 1 | ||||
-rw-r--r-- | debian/control | 121 | ||||
-rw-r--r-- | debian/copyright | 156 | ||||
-rw-r--r-- | debian/gbp.conf | 10 | ||||
-rw-r--r-- | debian/patches/fix-non-linux.patch | 167 | ||||
-rw-r--r-- | debian/patches/i225-hide-black-squares-bug.patch | 30 | ||||
-rw-r--r-- | debian/patches/series | 2 | ||||
-rwxr-xr-x | debian/rules | 22 | ||||
-rw-r--r-- | debian/source/format | 1 | ||||
-rw-r--r-- | debian/source/local-options | 2 |
21 files changed, 626 insertions, 2 deletions
diff --git a/.travis.yml b/.travis.yml index 1abfb51..086a590 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,11 +2,13 @@ language: cpp compiler: - gcc - clang -script: mkdir build; cd build; cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON -DOPENAL_SOUND=1 -DTESTS=1 && make all doc test && DESTDIR=. make install +script: debuild -b -us -uc --lintian-opts "-ivI" before_install: - git submodule update --init --recursive - sudo add-apt-repository ppa:mapnik/boost -y - sudo apt-get update -qq - - sudo apt-get install -qq --no-install-recommends libgl1-mesa-dev libsdl1.2-dev libsdl-image1.2-dev libsdl-ttf2.0-dev libpng12-dev libglew-dev libboost-dev libboost-system-dev libboost-filesystem-dev libboost-regex-dev google-mock libgtest-dev doxygen graphviz po4a librsvg2-bin libsndfile-dev libopenal-dev + - sudo apt-get install -qq --no-install-recommends devscripts dpkg-dev lintian equivs + - mk-build-deps --root-cmd sudo --tool "apt-get -qq --no-install-recommends" --install --remove + - dch -b -v 0.1.2~git$(date +%Y%m%d%H%M)00-1~travis0 -m "Automated test-build." notifications: email: false diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..1c15943 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,66 @@ +colobot (0.1.2-4) unstable; urgency=medium + + * Add menu file and xpm icon, therefore add imagemagick to Build-Depends to + convert the icon from the 32x32 png (Closes: #731838) + * Replace the patch to hide the black squares bug by the upstream fix + * Move the repository from collab-maint to pkg-games; update the VCS-* + fields accordingly + + -- Didier Raboud <odyx@debian.org> Fri, 14 Mar 2014 13:53:55 +0100 + +colobot (0.1.2-3) unstable; urgency=low + + * Try another patch to consider non-Linux GNU variants + + -- Didier Raboud <odyx@debian.org> Fri, 29 Nov 2013 13:15:03 +0100 + +colobot (0.1.2-2) unstable; urgency=low + + * Add patch to let kFreeBSD and Hurd be considered Linuxes and + therefore let the desktop files be installed + + -- Didier Raboud <odyx@debian.org> Tue, 26 Nov 2013 12:32:45 +0100 + +colobot (0.1.2-1) unstable; urgency=low + + * New 0.1.2 upstream release + - Add Russian translation of interface and levels + - Replace x86 assembler "int $3" code with assert(0) + - New levels translation infrastructure in -data + * Add patch to hide the black squares bug + + -- Didier Raboud <odyx@debian.org> Tue, 26 Nov 2013 09:25:48 +0100 + +colobot (0.1.1-2) unstable; urgency=low + + * debian/copyright fixes: + - Add gnulib's localename copy copyright mention + - Add gmock copyright reference + - Add license statement for DejaVu fonts' copy (which is not used in + the binary package) + * Package re-organisation: + - Move fonts links and translations back to colobot main package + - Split colobot-common into -common, -sounds and -textures + + -- Didier Raboud <odyx@debian.org> Thu, 14 Nov 2013 13:41:55 +0100 + +colobot (0.1.1-1) unstable; urgency=low + + * New 0.1.1 upstream release + - Fix non-freeness problems in data: + - Replace CREATIVE-licensed thunder sound by a public-domain + thunder sound + - Drop useless license statement about the photograph of the + NGC3606 nebula, which is in the public-domain + * Drop noisy development-merging machinery in debian/rules + * Add small gbp.conf + * Bump Standards-Version to 3.9.5 without changes needed + * Add Vcs-* fields to debian/control + + -- Didier Raboud <odyx@debian.org> Mon, 04 Nov 2013 09:47:45 +0100 + +colobot (0.1.0-1) unstable; urgency=low + + * Colobot Gold 0.1.0 alpha initial Debian release. (Closes: #695829) + + -- Didier Raboud <odyx@debian.org> Wed, 09 Oct 2013 22:14:50 +0200 diff --git a/debian/colobot-common-sounds.install b/debian/colobot-common-sounds.install new file mode 100644 index 0000000..80af28c --- /dev/null +++ b/debian/colobot-common-sounds.install @@ -0,0 +1,2 @@ +usr/share/games/colobot/music +usr/share/games/colobot/sounds diff --git a/debian/colobot-common-textures.install b/debian/colobot-common-textures.install new file mode 100644 index 0000000..fe8b611 --- /dev/null +++ b/debian/colobot-common-textures.install @@ -0,0 +1 @@ +usr/share/games/colobot/textures diff --git a/debian/colobot-common.install b/debian/colobot-common.install new file mode 100644 index 0000000..0d05865 --- /dev/null +++ b/debian/colobot-common.install @@ -0,0 +1,5 @@ +usr/share/games/colobot/ai +usr/share/games/colobot/help +usr/share/games/colobot/icons +usr/share/games/colobot/levels +usr/share/games/colobot/models diff --git a/debian/colobot-dev-doc.doc-base b/debian/colobot-dev-doc.doc-base new file mode 100644 index 0000000..4f04362 --- /dev/null +++ b/debian/colobot-dev-doc.doc-base @@ -0,0 +1,10 @@ +Document: colobot-source-doc +Title: Colobot source code documentation +Author: Polish Portal of Colobot +Abstract: This is the Doxygen-generated documentation of the Colobot + source code. +Section: Programming + +Format: HTML +Index: /usr/share/doc/colobot/html/index.html +Files: /usr/share/doc/colobot/html/*.html diff --git a/debian/colobot-dev-doc.install b/debian/colobot-dev-doc.install new file mode 100644 index 0000000..4ae8eb0 --- /dev/null +++ b/debian/colobot-dev-doc.install @@ -0,0 +1 @@ +usr/share/doc/colobot/html diff --git a/debian/colobot-dev-doc.links b/debian/colobot-dev-doc.links new file mode 100644 index 0000000..76bf4e0 --- /dev/null +++ b/debian/colobot-dev-doc.links @@ -0,0 +1 @@ +usr/share/javascript/jquery/jquery.js usr/share/doc/colobot/html/jquery.js diff --git a/debian/colobot.install b/debian/colobot.install new file mode 100644 index 0000000..ecd08f8 --- /dev/null +++ b/debian/colobot.install @@ -0,0 +1,11 @@ +usr/lib/colobot/libCBot.so +usr/games/colobot +usr/share/applications/colobot.desktop +usr/share/icons/hicolor/scalable/apps/colobot.svg +usr/share/icons/hicolor/48x48/apps/colobot.png +usr/share/icons/hicolor/32x32/apps/colobot.png +debian/colobot.xpm usr/share/pixmaps/ +usr/share/icons/hicolor/16x16/apps/colobot.png +usr/share/man/man6/colobot.6 +usr/share/man/*/man6/colobot.6 +usr/share/locale/*/LC_MESSAGES/colobot.mo diff --git a/debian/colobot.links b/debian/colobot.links new file mode 100644 index 0000000..7e90afe --- /dev/null +++ b/debian/colobot.links @@ -0,0 +1,7 @@ +# From fonts-dejavu-core +usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf usr/share/games/colobot/fonts/dvu_sans_bold.ttf +usr/share/fonts/truetype/dejavu/DejaVuSansMono-Bold.ttf usr/share/games/colobot/fonts/dvu_sans_mono_bold.ttf +usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf usr/share/games/colobot/fonts/dvu_sans_mono.ttf +usr/share/fonts/truetype/dejavu/DejaVuSans.ttf usr/share/games/colobot/fonts/dvu_sans.ttf +# From fonts-dejavu-extra +usr/share/fonts/truetype/dejavu/DejaVuSans-Oblique.ttf usr/share/games/colobot/fonts/dvu_sans_italic.ttf diff --git a/debian/colobot.menu b/debian/colobot.menu new file mode 100644 index 0000000..6b8e812 --- /dev/null +++ b/debian/colobot.menu @@ -0,0 +1,6 @@ +?package(colobot):needs="X11" \ + section="Games/Adventure" \ + title="Colobot" \ + longtitle="Colobot - Colonize with bots - Game to learn programming" \ + icon="/usr/share/pixmaps/colobot.xpm" \ + command="/usr/games/colobot" diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..ec63514 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..d7fbfd9 --- /dev/null +++ b/debian/control @@ -0,0 +1,121 @@ +Source: colobot +Section: games +Priority: optional +Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org> +Uploaders: Didier Raboud <odyx@debian.org> +Build-Depends: + debhelper (>= 9), + cmake, + libgl1-mesa-dev | libgl-dev, + libglew-dev, + libsdl1.2-dev (>= 1.2.10), + libsdl-image1.2-dev, + libsdl-ttf2.0-dev, + libpng12-dev (>= 1.2), + libboost-dev, + libboost-system-dev, + libboost-filesystem-dev, + libboost-regex-dev, + libopenal-dev, + libsndfile-dev, + librsvg2-bin, + po4a, + perl, + google-mock, + libgtest-dev, + imagemagick +Build-Depends-Indep: doxygen, graphviz +Vcs-Git: https://alioth.debian.org/anonscm/git/pkg-games/colobot.git -b debian +Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-games/colobot.git +Standards-Version: 3.9.5 +Homepage: http://colobot.info + +Package: colobot +Architecture: any +Depends: ${shlibs:Depends}, + ${misc:Depends}, + fonts-dejavu-core, fonts-dejavu-extra, + colobot-common (>= ${source:Version}), + colobot-common-textures (>= ${source:Version}), + colobot-common-sounds (>= ${source:Version}), +Replaces: colobot-common (<< 0.1.1-2) +Breaks: colobot-common (<< 0.1.1-2) +Description: educational programming strategy game + Colobot (Colonize with Bots) is an educational game aiming to teach + programming through entertainment. You are playing as an astronaut on a + journey with robot helpers to find a planet for colonization. It features 3D + real-time graphics and a C++ and Java-like, object-oriented language, CBOT, + which can be used to program the robots available in the game. + +Package: colobot-common +Architecture: all +Depends: ${misc:Depends}, +Recommends: colobot (>= ${source:Version}) +Description: educational programming strategy game - data + Colobot (Colonize with Bots) is an educational game aiming to teach + programming through entertainment. You are playing as an astronaut on a + journey with robot helpers to find a planet for colonization. It features 3D + real-time graphics and a C++ and Java-like, object-oriented language, CBOT, + which can be used to program the robots available in the game. + . + This package contains the architecture-independent game data. + +Package: colobot-common-textures +Architecture: all +Depends: ${misc:Depends}, +Recommends: colobot (>= ${source:Version}) +Replaces: colobot-common (<< 0.1.1-2) +Breaks: colobot-common (<< 0.1.1-2) +Description: educational programming strategy game - textures + Colobot (Colonize with Bots) is an educational game aiming to teach + programming through entertainment. You are playing as an astronaut on a + journey with robot helpers to find a planet for colonization. It features 3D + real-time graphics and a C++ and Java-like, object-oriented language, CBOT, + which can be used to program the robots available in the game. + . + This package contains the textures for the game. + +Package: colobot-common-sounds +Architecture: all +Depends: ${misc:Depends}, +Recommends: colobot (>= ${source:Version}) +Replaces: colobot-common (<< 0.1.1-2) +Breaks: colobot-common (<< 0.1.1-2) +Description: educational programming strategy game - sounds and music + Colobot (Colonize with Bots) is an educational game aiming to teach + programming through entertainment. You are playing as an astronaut on a + journey with robot helpers to find a planet for colonization. It features 3D + real-time graphics and a C++ and Java-like, object-oriented language, CBOT, + which can be used to program the robots available in the game. + . + This package contains the sounds and music for the game. + +Package: colobot-dbg +Architecture: any +Section: debug +Priority: extra +Depends: ${misc:Depends}, ${shlibs:Depends}, + colobot (= ${binary:Version}) +Description: educational programming strategy game - debug symbols + Colobot (Colonize with Bots) is an educational game aiming to teach + programming through entertainment. You are playing as an astronaut on a + journey with robot helpers to find a planet for colonization. It features 3D + real-time graphics and a C++ and Java-like, object-oriented language, CBOT, + which can be used to program the robots available in the game. + . + This package contains the debugging symbols. + +Package: colobot-dev-doc +Architecture: all +Section: doc +Depends: ${misc:Depends}, + libjs-jquery +Recommends: colobot (>= ${source:Version}) +Description: educational programming strategy game - source doc + Colobot (Colonize with Bots) is an educational game aiming to teach + programming through entertainment. You are playing as an astronaut on a + journey with robot helpers to find a planet for colonization. It features 3D + real-time graphics and a C++ and Java-like, object-oriented language, CBOT, + which can be used to program the robots available in the game. + . + This package contains the doxygen documentation for the colobot source code. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..8f71a35 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,156 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Colobot +Source: http://github.com/colobot/colobot + +Files: * +Copyright: 2001-2008, Daniel ROUX & EPSITEC SA, http://www.epsitec.ch + 2012-2013, Polish Portal of Colobot (PPC) + 2006 Angelo "Encelo" Theodorou +License: GPL-3+ + +Files: lib/clipboard/src/* +Copyright: 2008, Freddie Witherden + 2008-2009, Warzone Resurrection Project +License: GPL-2+ + +Files: debian/* +Copyright: Copyright 2013 Didier Raboud <odyx@debian.org> +License: GPL-2+ + +Files: lib/clipboard/* +Copyright: 1992-2007, Trolltech ASA + 1999-2004, Eidos Interactive + 2007, Giel van Schijndel + 2007-2009, Warzone Resurrection Project + 2008, Freddie Witherden +License: GPL-2+ + +Files: lib/gtest/* lib/gmock/* +Copyright: 2003-2009, Google Inc +License: BSD-3-clause + +Files: lib/localename/* +Copyright: 1995-2013, Free Software Foundation, Inc. +License: LGPL-2.1+ + +Files: data/fonts/* +Copyright: Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. + Bitstream Vera is a trademark of Bitstream, Inc. + DejaVu changes are in public domain. +License: + Permission is hereby granted, free of charge, to any person obtaining a copy + of the fonts accompanying this license ("Fonts") and associated + documentation files (the "Font Software"), to reproduce and distribute the + Font Software, including without limitation the rights to use, copy, merge, + publish, distribute, and/or sell copies of the Font Software, and to permit + persons to whom the Font Software is furnished to do so, subject to the + following conditions: + . + The above copyright and trademark notices and this permission notice shall + be included in all copies of one or more of the Font Software typefaces. + . + The Font Software may be modified, altered, or added to, and in particular + the designs of glyphs or characters in the Fonts may be modified and + additional glyphs or characters may be added to the Fonts, only if the fonts + are renamed to names not containing either the words "Bitstream" or the word + "Vera". + . + This License becomes null and void to the extent applicable to Fonts or Font + Software that has been modified and is distributed under the "Bitstream + Vera" names. + . + The Font Software may be sold as part of a larger software package but no + copy of one or more of the Font Software typefaces may be sold by itself. + . + THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, + TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME + FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING + ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF + THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE + FONT SOFTWARE. + . + Except as contained in this notice, the names of Gnome, the Gnome + Foundation, and Bitstream Inc., shall not be used in advertising or + otherwise to promote the sale, use or other dealings in this Font Software + without prior written authorization from the Gnome Foundation or Bitstream + Inc., respectively. For further information, contact: fonts at gnome dot + org. + +License: GPL-3+ + This package 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 of the License, or + (at your option) any later version. + . + On Debian systems, the complete text of the GNU General Public License + version 3 can be found in file "/usr/share/common-licenses/GPL-3". + +License: GPL-2+ + This program 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 2 of the License, or (at your option) any later + version. + . + This program 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 this package; if not, write to the Free + Software Foundation, Inc., 51 Franklin St, Fifth Floor, + Boston, MA 02110-1301 USA + . + On Debian systems, the full text of the GNU General Public + License version 2 can be found in the file + `/usr/share/common-licenses/GPL-2'. + +License: BSD-3-Clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + . + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: LGPL-2.1+ + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or + (at your option) any later version. + . + This program 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 Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + . + On Debian systems, the full text of the GNU Lesser General Public + License version 2.1 can be found in the file + `/usr/share/common-licenses/LGPL-2.1'. diff --git a/debian/gbp.conf b/debian/gbp.conf new file mode 100644 index 0000000..a7e1131 --- /dev/null +++ b/debian/gbp.conf @@ -0,0 +1,10 @@ +[DEFAULT] +# the default branch for upstream sources: +upstream-branch = master +# the default branch for the debian patch: +debian-branch = debian +[git-dch] +# don't include information from meta tags: +meta = true +# include the full commit message in the changelog: +full = True diff --git a/debian/patches/fix-non-linux.patch b/debian/patches/fix-non-linux.patch new file mode 100644 index 0000000..b2c9628 --- /dev/null +++ b/debian/patches/fix-non-linux.patch @@ -0,0 +1,167 @@ +commit 343fa8f0cbad19402a2533651acc53149be1fcf5 +Author: Didier Raboud <odyx@debian.org> +Date: Wed Nov 27 18:53:28 2013 +0100 + + Add a PLATFORM_GNU global variable matching all GNU systems such as Debian's Linux, kFreeBSD and Hurd + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ff30513..c4c3e39 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -42,6 +42,7 @@ message(STATUS "Building Colobot \"${COLOBOT_VERSION_CODENAME}\" (${COLOBOT_VERS + if("${CMAKE_SYSTEM_NAME}" MATCHES "Windows") + message(STATUS "Build for Windows system") + set(PLATFORM_WINDOWS 1) ++ set(PLATFORM_GNU 0) + set(PLATFORM_LINUX 0) + set(PLATFORM_MACOSX 0) + set(PLATFORM_OTHER 0) +@@ -52,15 +53,27 @@ elseif("${CMAKE_SYSTEM_NAME}" MATCHES "Linux") + message(STATUS "Build for Linux system") + set(PLATFORM_WINDOWS 0) + set(PLATFORM_LINUX 1) ++ set(PLATFORM_GNU 1) + set(PLATFORM_MACOSX 0) + set(PLATFORM_OTHER 0) + + # Platform-dependent implementation of system.h + set(SYSTEM_CPP_MODULE "system_linux.cpp") ++elseif("${CMAKE_SYSTEM_NAME}" MATCHES "kFreeBSD" OR "${CMAKE_SYSTEM_NAME}" STREQUAL "GNU") ++ message(STATUS "Build for kFreeBSD system") ++ set(PLATFORM_WINDOWS 0) ++ set(PLATFORM_LINUX 0) ++ set(PLATFORM_GNU 1) ++ set(PLATFORM_MACOSX 0) ++ set(PLATFORM_OTHER 0) ++ ++ # Platform-dependent implementation of system.h ++ set(SYSTEM_CPP_MODULE "system_other.cpp") + elseif("${CMAKE_SYSTEM_NAME}" MATCHES "Darwin") + message(STATUS "Build for Mac OSX system") + set(PLATFORM_WINDOWS 0) + set(PLATFORM_LINUX 0) ++ set(PLATFORM_GNU 0) + set(PLATFORM_MACOSX 1) + set(PLATFORM_OTHER 0) + +@@ -72,6 +85,7 @@ else() + message(STATUS "Build for other system") + set(PLATFORM_WINDOWS 0) + set(PLATFORM_LINUX 0) ++ set(PLATFORM_GNU 0) + set(PLATFORM_MACOSX 0) + set(PLATFORM_OTHER 1) + +@@ -226,7 +240,7 @@ include("${colobot_SOURCE_DIR}/cmake/msys.cmake") + ## + # Clipboard support needs X11 libraries + ## +-if(PLATFORM_LINUX OR PLATFORM_MACOSX) ++if(PLATFORM_GNU OR PLATFORM_MACOSX) + find_package(X11 REQUIRED) + if(PLATFORM_MACOSX) + # Add the includes for X11 +diff --git a/desktop/CMakeLists.txt b/desktop/CMakeLists.txt +index 9fa0c5e..87c8a4b 100644 +--- a/desktop/CMakeLists.txt ++++ b/desktop/CMakeLists.txt +@@ -4,7 +4,7 @@ set(COLOBOT_ICON_FILE colobot.svg) + + # Render SVG icon in various sizes + find_program(RSVG_CONVERT rsvg-convert) +-if(RSVG_CONVERT AND (PLATFORM_LINUX OR PLATFORM_MACOSX)) ++if(RSVG_CONVERT AND (PLATFORM_GNU OR PLATFORM_MACOSX)) + add_custom_target(png-icons ALL) + foreach(PNGSIZE 512 256 128 48 32 16) + add_custom_command( +@@ -15,7 +15,7 @@ if(RSVG_CONVERT AND (PLATFORM_LINUX OR PLATFORM_MACOSX)) + add_custom_target(png-icon-${PNGSIZE} ALL DEPENDS ${PNGSIZE}/colobot.png) + add_dependencies(png-icons png-icon-${PNGSIZE}) + +- if(PLATFORM_LINUX) ++ if(PLATFORM_GNU) + install( + FILES ${CMAKE_CURRENT_BINARY_DIR}/${PNGSIZE}/colobot.png + DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/${PNGSIZE}x${PNGSIZE}/apps/ +@@ -37,7 +37,7 @@ if(RSVG_CONVERT AND (PLATFORM_LINUX OR PLATFORM_MACOSX)) + + endif() + +-if(PLATFORM_LINUX) ++if(PLATFORM_GNU) + # Install Desktop Entry file + set(COLOBOT_DESKTOP_FILE colobot.desktop) + add_custom_command( +@@ -112,7 +112,7 @@ if(PLATFORM_LINUX) + endforeach() + endif() + endif() +-endif(PLATFORM_LINUX) ++endif(PLATFORM_GNU) + + if(PLATFORM_MACOSX) + configure_file(Info.plist.cmake ${CMAKE_CURRENT_BINARY_DIR}/Info.plist) +diff --git a/lib/clipboard/CMakeLists.txt b/lib/clipboard/CMakeLists.txt +index a189ec4..7999cc1 100644 +--- a/lib/clipboard/CMakeLists.txt ++++ b/lib/clipboard/CMakeLists.txt +@@ -7,8 +7,6 @@ add_definitions(-DLIB_COMPILE=1) + + if(PLATFORM_WINDOWS) + set(CLIPBOARD_SRC src/clipboardWin32.c) +-elseif(PLATFORM_LINUX) +- set(CLIPBOARD_SRC src/clipboardX11.c) + else() + set(CLIPBOARD_SRC src/clipboardX11.c) + endif() +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index ef59973..c32f054 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -28,6 +28,8 @@ if(MXE) # MXE requires special treatment + elseif(PLATFORM_WINDOWS) + # because it isn't included in standard linking libraries + set(PLATFORM_LIBS "-lintl") ++elseif(PLATFORM_GNU) ++ set(PLATFORM_LIBS "-lX11") + elseif(PLATFORM_LINUX) + # for clock_gettime + set(PLATFORM_LIBS "-lrt -lX11") +diff --git a/src/common/config.h.cmake b/src/common/config.h.cmake +index 63cd93b..6408b6e 100644 +--- a/src/common/config.h.cmake ++++ b/src/common/config.h.cmake +@@ -3,6 +3,7 @@ + // Macros set by CMake + #cmakedefine PLATFORM_WINDOWS @PLATFORM_WINDOWS@ + #cmakedefine PLATFORM_LINUX @PLATFORM_LINUX@ ++#cmakedefine PLATFORM_GNU @PLATFORM_GNU@ + #cmakedefine PLATFORM_MACOSX @PLATFORM_MACOSX@ + #cmakedefine PLATFORM_OTHER @PLATFORM_OTHER@ + +diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt +index 38bffda..278519f 100644 +--- a/test/unit/CMakeLists.txt ++++ b/test/unit/CMakeLists.txt +@@ -6,6 +6,8 @@ if(MXE) # MXE requires special treatment + elseif(PLATFORM_WINDOWS) + # because it isn't included in standard linking libraries + set(PLATFORM_LIBS "-lintl") ++elseif(PLATFORM_GNU) ++ set(PLATFORM_LIBS "-lX11") + elseif(PLATFORM_LINUX) + # for clock_gettime + set(PLATFORM_LIBS "-lrt -lX11") +diff --git a/test/unit/ui/CMakeLists.txt b/test/unit/ui/CMakeLists.txt +index 8086967..503f84b 100644 +--- a/test/unit/ui/CMakeLists.txt ++++ b/test/unit/ui/CMakeLists.txt +@@ -10,8 +10,6 @@ ${CLIPBOARD_INCLUDE_DIR} + + # Platform-dependent implementation of CSystemUtils + if(PLATFORM_WINDOWS) +-elseif(PLATFORM_LINUX) +- set(ADDITIONAL_LIB "-lX11") + elseif(PLATFORM_MACOSX) + set(ADDITIONAL_LIB "${X11_X11_LIB}") + else() diff --git a/debian/patches/i225-hide-black-squares-bug.patch b/debian/patches/i225-hide-black-squares-bug.patch new file mode 100644 index 0000000..c405688 --- /dev/null +++ b/debian/patches/i225-hide-black-squares-bug.patch @@ -0,0 +1,30 @@ +commit 70b18cc4c05398cd06558f4634937a70c2436546 +Author: Piotr Dziwinski <piotrdz@gmail.com> +Date: Sat Jan 18 21:35:32 2014 +0100 + + Move engine frame update after game state update + + This should finally fix #225 + +--- a/src/app/app.cpp ++++ b/src/app/app.cpp +@@ -962,15 +962,15 @@ + { + LogEvent(event); + +- StartPerformanceCounter(PCNT_UPDATE_ENGINE); +- m_engine->FrameUpdate(); +- StopPerformanceCounter(PCNT_UPDATE_ENGINE); +- + m_sound->FrameMove(m_relTime); + + StartPerformanceCounter(PCNT_UPDATE_GAME); + m_robotMain->ProcessEvent(event); + StopPerformanceCounter(PCNT_UPDATE_GAME); ++ ++ StartPerformanceCounter(PCNT_UPDATE_ENGINE); ++ m_engine->FrameUpdate(); ++ StopPerformanceCounter(PCNT_UPDATE_ENGINE); + } + + StopPerformanceCounter(PCNT_UPDATE_ALL); diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..6aac865 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1,2 @@ +i225-hide-black-squares-bug.patch +fix-non-linux.patch diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..67410d6 --- /dev/null +++ b/debian/rules @@ -0,0 +1,22 @@ +#!/usr/bin/make -f + +%: + dh $@ \ + --buildsystem=cmake \ + --parallel \ + --dbg-package=colobot-dbg + +override_dh_auto_configure: + dh_auto_configure -- -DCMAKE_BUILD_TYPE:STRING="RelWithDebInfo" \ + -DINSTALL_DOCS:BOOL=True \ + -DOPENAL_SOUND:BOOL=True + +override_dh_auto_build: + dh_auto_build -a + dh_auto_build -i -- doc + # obj-* is the default builddirectory in debhelper + convert obj-$(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)/desktop/32/colobot.png debian/colobot.xpm + +override_dh_auto_clean: + dh_auto_clean + rm -f debian/colobot.xpm diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/source/local-options b/debian/source/local-options new file mode 100644 index 0000000..b05270a --- /dev/null +++ b/debian/source/local-options @@ -0,0 +1,2 @@ +# .travis.yml is different in the debian branch on purpose +extend-diff-ignore = "(^|/)(\.travis\.yml)$" |