From: Andrey Paskal Date: Mon, 27 Apr 2009 14:00:55 +0000 (+0400) Subject: Debian/Ubuntu package build scripts X-Git-Url: https://gitweb.ananas.su/?a=commitdiff_plain;h=a3dbc3a5f40160f65bb3d0b3763915e9aecd4897;p=projects%2Fananas-labs-qt4.git Debian/Ubuntu package build scripts --- diff --git a/build/ubuntu/README.Debian b/build/ubuntu/README.Debian new file mode 100644 index 0000000..41a93b6 --- /dev/null +++ b/build/ubuntu/README.Debian @@ -0,0 +1,6 @@ +ananas for Debian +----------------------------- + + + + -- Andrey Paskal , Wed, 24 Oct 2007 12:13:55 +0400 diff --git a/build/ubuntu/README.build b/build/ubuntu/README.build new file mode 100644 index 0000000..30e9659 --- /dev/null +++ b/build/ubuntu/README.build @@ -0,0 +1,90 @@ +Это инструкция по сборке дистрибутива ananas в виде одного deb пакета. + +При сборке используется архив ananas-0.9.5.tar.gz +Сборка в Ubuntu при помощи pbuilder & co. +Подразумевается, что среда сборки pbuilder настроена и готова для сборки пакетов. +Если нет - читай документацию "Ubuntu packaging guide" packagingguide.pdf +и инструкцию в конце этого файла. + +1. Создаем новый пустой каталог в произвольном месте, например +mkdir -p ~/tmp/ananas-build + +2. Копируем в него архив исходников, который +допустим лежит в корне домашней папке +cp ~/ananas-0.9.5.tar.gz ~/tmp/ananas-build/ + +3. Переходим в новую папку и распаковываем архив +cd ~/tmp/ananas-build +tar zxf ananas-0.9.5.tar.gz + +4. Дальше выполняем команды +cd ananas-0.9.5 +dh_make -e ananasproject@googlegroups.com -f ../ananas-0.9.5.tar.gz + +В последней команде email используется для выбора pgp ключа для подписи пакета и dsc файла. +Так что указываете идентификатор ключа, который есть у вас. + +5. Дальше +debuild -S +sudo $HOME/bin/pbuilder-gutsy build ../ananas_0.9.5-1.dsc + +Результат сборки будет положен в каталог, который у вас указан в параметре BUILDRESULT +файла конфигурации pbuilder. Пример -- ниже. + + +Да и еще. Для сборки +потребуется пакет qsa-x11-free...deb, лежащий в доступном для pbuilder репозитарии, +так как по состоянию на 2007-12-22 ни один из общеизвестных и общедоступных репозитариев +Ubuntu не содержит такого пакета. +В инструкции ниже показано как настроить свой репозитарий с таким пакетом. + +===== + +Вспомогательная информация по настройке cреды сборки pbuilde & co. +1. устанавливаем необходимые пакеты +sudo apt-get install build-essential +sudo apt-get install devscripts +sudo apt-get install debhelper +sudo apt-get install dh-make +sudo apt-get install fakeroot +sudo apt-get install lintian +sudo apt-get install linda +sudo apt-get install pbuilder + +2. создаем каталоги, копируем файлы +mkdir -p ~/pbuilder/result +mkdir -p ~/bin +cp /usr/share/doc/pbuilder/examples/pbuilder-distribution.sh ~/bin/pbuilder-gutsy +cp /etc/pbuilderrc ~/.pbuilderrc + +3. подправляем конфиг ~/.pbuilderrc +BUILDPLACE=$HOME/pbuilder/build/ +BUILDRESULT=$HOME/pbuilder/result/ +MIRRORSITE=http://localhost/cdrom0 +OTHERMIRROR="deb http://localhost/result ./" + +4. делаем доступными по http локальные репозитории +sudo ln -s /media/cdrom0 /var/www/ +sudo ln -s $HOME/pbuilder/result /var/www/ + +5. складываем в репозитарий result готовый deb пакет qsa, если его еще нет там +(для сборки qsa OTHERMIRROR нужно отключить и перезапустить pbuilder-gutsy create) +cp ~/qsa-x11-free_1.1.4-1_i386.deb $HOME/pbuilder/result +cd $HOME/pbuilder/result +dpkg-scanpackages . /dev/null |gzip -9 > Packages.gz + +6. проверяем запущен ли apache2 +sudo /etc/init.d/apache2 start + +7. проверяем доступность DVD диска +mount |grep cdrom0 + +8. создаем среду сборки +$HOME/bin/pbuilder-gutsy create + + +Если все прошло успешно должен появиться файл ненулевого размера +$HOME/pbuilder/gutsy-base.tgz + +Можно переходить к действиям, описанным в начале этого файла. + diff --git a/build/ubuntu/changelog b/build/ubuntu/changelog new file mode 100644 index 0000000..339e641 --- /dev/null +++ b/build/ubuntu/changelog @@ -0,0 +1,33 @@ +ananas (0.9.5-1) unstable; urgency=low + + * Initial release of debian package + * Новое расширение для прямой работы с SQL сервером. Предназначено для + подготовки аналитических отчетов и документов, требующих сложных запросов к + базе данных. + * Добавлена поддержка MSOffice2003 xml формата в подсистеме отчетов. + * Доработан установщик с учетом добавления поддержки MSO xml. Ананас для + Windows по-умолчанию, которое можно поменять, для формирования отчетов + использует Microsoft Office. + * Доработано расширение service, позволяющее программисту бизнес-схемы + определять какой офисный пакет используется, т.е. задан в файле конфигурации. + * Добавлены шаблоны отчетов MSO XML. + * В Дизайнере появились новые диалоги редактирования свойств документов и + справочников. + * Изменился диалог выбора бизнес-схемы и редактор rc файла, вызываемый из + него. Появилась возможность тестировать соединение с сервером, получать с + сервера список баз данных и пользователей. + * В скрипт установки rpm файлов ananas и ananas-inventory добавлена команда + запуска mysql сервера. Теперь пользователю не нужно заботиться о том, чтобы + mysql был запущен перед установкой Ананаса на linux. + * При деинсталляции Ананаса с Windows аккуратно вычищаются из реестра все + записи, касающиеся Ананаса. + * Доработано Руководство пользователя бизнес-схемы "Оперативный учет". + Добавлен раздел по настройке справочника Контрагентров. Показан пример добавления + нового реквизита в карточку контрагента. + * В информационном окне "О программе" Ананаса теперь выводятся данные + о бизнес-схеме и ее авторе. + * Обновлены изображения на заставках, отображаемых при запуске Ананаса и + Дизайнера. + + -- Ananas Project Package Key (ananasproject) Wed, 24 Oct 2007 12:13:55 +0400 + diff --git a/build/ubuntu/compat b/build/ubuntu/compat new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/build/ubuntu/compat @@ -0,0 +1 @@ +5 diff --git a/build/ubuntu/control b/build/ubuntu/control new file mode 100644 index 0000000..682c63d --- /dev/null +++ b/build/ubuntu/control @@ -0,0 +1,13 @@ +Source: ananas +Section: Office +Priority: optional +Maintainer: Ananas Project Package Key (ananasproject) +Build-Depends: debhelper (>= 5), qt4-dev-tools, libqt4-dev, libmysqlclient-dev, libqsa1-qt4-dev +Standards-Version: 3.7.2 + +Package: ananas +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, zip, unzip, libqtgui4, mysql-client (>=4.1), mysql-server (>=4.1), libqsa1-qt4 +Description: Runtime and development environment of Finance Applications +Description-ru: Среда разработки и исполнения прикладных решений автоматизации оперативного, бухгалтерского и других видов учета. + Учет товаров и рассчетов на компьютере. diff --git a/build/ubuntu/copyright b/build/ubuntu/copyright new file mode 100644 index 0000000..db4ce1c --- /dev/null +++ b/build/ubuntu/copyright @@ -0,0 +1,302 @@ +This package was debianized by Andrey Paskal on +Wed, 24 Oct 2007 12:13:55 +0400. + +It was downloaded from + +Upstream Author: Проект Ананас + +Copyright: 2007, Проект Ананас + +License: + + + + ОТКРЫТАЯ ЛИЦЕНЗИЯ + +Copyright (C) 1989, 1991 Free Software Foundation, Inc. +59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +(C) Перевод. О.В. Кузина, В.М. Юфа, 1993 +(C) Перевод. О.С. Тихонов, 1998 +(С) Адаптация для законодательства России. +Андрей П. Паскаль, г. Йошкар-Ола, 2000 + + +Всем разрешается воспроизводить и распространять дословные копии этого +лицензионного документа, но изменять его нельзя. + + + + Предисловие + +Данная лицензия предназначена для обеспечения в рамках законодательства +Российской Федерации тех же условий использования программ для ЭВМ, которые +обеспечивает лицензия GPL Фонда Свободного программного обеспечения в США. + +Лицензии на большую часть программ для ЭВМ составлены так, чтобы лишить вас +свободы совместно использовать и изменять их. Напротив, Открытая лицензия +предназначена гарантировать вашу свободу совместно использовать и изменять +свободные программы для ЭВМ, т.е. удостоверить, что программа для ЭВМ +является свободной для всех ее пользователей. Эта Открытая лицензия +аналогична лицензии GPL применяемой к большей части программ для ЭВМ Фонда +Свободного программного обеспечения Вы тоже можете использовать ее для своих +программ. + +Когда мы говорим о свободных программах для ЭВМ, мы имеем в виду свободу, а +не цену. + +Предполагается, что Открытая лицензия гарантирует: что вы вправе +распространять свободные программы для ЭВМ (и получать за это +вознаграждение, если вы того желаете); что вы получаете исходный текст или +можете получить его, если захотите; что вы можете изменять программу или +использовать ее части в новых свободных программах; и что вы знаете, что вы +можете все это делать. + +Чтобы защитить ваши права, нам нужно ввести такие ограничения, которые +запретят кому бы то ни было отказывать вам в этих правах или потребовать от +вас отказаться от этих прав. Эти ограничения переводятся в некоторые +обязательства для вас, если вы распространяете программы для ЭВМ или если вы +модифицируете или адаптируете их. + +Например, если вы распространяете такую программу для ЭВМ бесплатно или за +вознаграждение, вы должны предоставить получателям все права на эту +программу, которыми вы обладаете. Вы должны гарантировать, что они тоже +получат или смогут получить исходный текст. И вы должны показать им эти +условия, чтобы они знали о своих правах. + +Мы защищаем ваши права в два этапа: (1) сохраняем авторские права на +программу для ЭВМ и (2) предлагаем вам эту лицензию, которая дает вам +законное право воспроизводить, распространять и/или модифицировать +программу. + +Также, чтобы защитить нас и каждого автора, мы хотим удостовериться, что все +понимают, что гарантий на эти свободные программы нет. Если программа для +ЭВМ модифицируется и передается кем-то еще, мы хотим, чтобы получатели +программы знали, что то, что у них есть - это не оригинал, чтобы любые +проблемы, созданные другими, не отразились на репутации первоначальных +авторов. + +И наконец, каждой свободной программе для ЭВМ постоянно угрожают патенты на +программы для ЭВМ. Мы хотим избежать опасности, что повторные +распространители свободной программы для ЭВМ самостоятельно получат патенты, +делая программу таким образом частной собственностью. Чтобы предотвратить +это, мы явно заявляем, что любой патент должен быть либо предоставлен всем +для свободного использования, либо не предоставлен никому. + +Ниже следуют точные определения и условия для воспроизведения, +распространения и модификации. + + + + ОТКРЫТАЯ ЛИЦЕНЗИЯ + ОПРЕДЕЛЕНИЯ И УСЛОВИЯ ДЛЯ ВОСПРОИЗВЕДЕНИЯ, РАСПРОСТРАНЕНИЯ И МОДИФИКАЦИИ + + 1. Эта Лицензия применима к любой программе или другому произведению, + содержащему уведомление, помещенное держателем авторских прав и + сообщающее о том, что оно может распространяться при условиях, + оговоренных в данной Открытой лицензии. В последующем термин + "Программа" относится к любой такой программе для ЭВМ или произведению, + а термин "произведение, основанное на Программе" означает Программу или + любое произведение, содержащее Программу или ее часть, дословную или + модифицированную, и/или переведенную на другой язык. (Здесь и далее + перевод включается без ограничений в понятие "модификация".) Каждый + обладатель лицензии адресуется как "вы". Виды деятельности, не + являющиеся воспроизведением, распространением, выпуском в свет, + адаптацией или модификацией не охватываются этой Лицензией; они за + пределами ее влияния. Использование Программы по ее функциональному + назначению не ограничено, и выходные данные Программы охватываются этой + Лицензией, только если их содержание является произведением, основанным + на Программе (вне зависимости от того, были ли они получены в процессе + использования Программы). Являются ли они таковыми, зависит от того, + что именно делает Программа. + 2. Вы можете воспроизводить и распространять экземпляры исходного текста + Программы по его получении в любой материальной форме, при условии что + вы соответствующим образом помещаете на видном месте в каждого + экземпляра соответствующее уведомление об авторских правах и отказ от + гарантий; оставляете нетронутыми все уведомления, относящиеся к данной + Лицензии и к отсутствию каких-либо гарантий; и передаете всем другим + получателям Программы экземпляр данной Лицензии вместе с Программой. Вы + можете назначить плату за физический акт передачи экземпляра и можете + по своему усмотрению предоставлять гарантии за вознаграждение. + 3. Вы можете изменять свой экземпляр или экземпляры Программы или любой ее + части, создавая таким образом произведение, основанное на Программе, и + воспроизводить и распространять эти модификации или произведение в + соответствии с Разделом 2, приведенным выше, при условии, что вы + выполните все нижеследующие условия: + а) Вы обязаны снабдить модифицированные файлы заметными + уведомлениями, содержащими указания на то, что вы изменили файлы, + и дату каждого изменения. + б) Вы обязаны предоставить всем третьим лицам лицензию на + бесплатное использование каждого произведения, которое вы + распространяете или публикуете, целиком, и которое полностью или + частично содержит Программу или какую-либо ее часть, на условиях, + оговоренных в данной Лицензии. + в) Если модифицированная программа обычно читает команды в + интерактивном режиме работы, вы должны сделать так, чтобы при + запуске для работы в таком интерактивном режиме обычным для нее + способом она печатала или выводила на экран объявление, содержащее + соответствующее уведомление об авторских правах и уведомление о + том, что гарантий нет (или, наоборот, сообщающее о том, что вы + обеспечиваете гарантии), и что пользователи могут повторно + распространять программу при этих условиях, и указывающее + пользователю, как просмотреть копию данной Лицензии. (Исключение: + если сама Программа работает в интерактивном режиме, но обычно не + выводит подобное объявление, то ваше произведение, основанное на + Программе, не обязано выводить объявление.) + Эти требования применяются к модифицированному произведению в целом. + Если известные части этого произведения не были основаны на Программе и + могут обоснованно считаться независимыми и самостоятельными + произведениями, то эта Лицензия и ее условия не распространяются на эти + части, если вы распространяете их как отдельные произведения. Но если + вы распространяете эти части как часть целого произведения, основанного + на Программе, то вы обязаны делать это в соответствии с условиями + данной Лицензии, распространяя права получателей лицензии на все + произведение и,таким образом, на каждую часть, вне зависимости от того, + кто ее написал. Такимобразом, содержание этого раздела не имеет цели + претендовать на ваши права напроизведение, написанное полностью вами, + или оспаривать их; цель скорее в том, чтобы развить право управлять + распространением производных или коллективных произведений, основанных + на Программе. Кроме того, простое нахождение другого произведения, не + основанного на этой Программе, совместно с Программой (или с + произведением, основанным на этой Программе) на том же материальном + носителе для постоянного хранения или распространяемом материальном + носителе не распространяет действие этой Лицензии на другое + произведение. + + 4. Вы можете копировать и распространять Программу (или произведение, + основанное на ней) согласно Разделу 3) в объектном коде или в + выполнимом виде в соответствии с Разделами 2 и 3, приведенными выше, + при условии, что вы также выполните одно из следующих требований: + а) Сопроводите ее полным соответствующим машиночитаемым исходным + текстом, который должен распространяться в соответствии с + Разделами 2 и 3, приведенными выше, на носителе, обычно + используемом для обмена ПО; или, + б) Сопроводите ее письменным предложением, действительным, по + крайней мере, в течение трех лет, предоставить любому третьему + лицу за вознаграждение не большее стоимости физического акта + изготовления экземпляра машиночитаемый экземпляр соответствующего + исходного текста, подлежащий распространению в соответствии с + Разделами 2 и 3, приведенными выше; или + в) Сопроводите ее информацией, полученной вами в качестве + предложения распространить соответствующий исходный текст. (Эта + возможность допустима только для некоммерческого распространения, + и только если вы получили программу в объектном коде или в + выполнимом виде с предложением в соответствии с Пунктом б) выше.) + Исходный текст для произведения означает его вид, предпочтительный для + выполнения в нем модификаций. Для исполняемого произведения полный + исходный текст означает все исходные тексты для всех модулей, которые + он содержит, плюс любые связанные с произведением файлы определения + интерфейса, плюс сценарии, используемые для управления компиляцией и + установкой исполняемого произведения. Однако, в виде особого исключения + распространяемый исходный текст не обязан включать то, что обычно + предоставляется с основными компонентами операционной системы, под + управлением которой работает исполняемое произведение, за исключением + случая, когда сам компонент сопровождает исполняемое произведение. Если + распространение исполняемого произведения или объектного кода + происходит путем предоставления доступа для получения с обозначенного + места, то предоставление доступа для получения исходного текста с того + же места считается распространением исходного текста, даже если третьи + лица не принуждаются к копированию исходного текста вместе с объектным + кодом. + + 5. Вы не можете воспроизводить, изменять, повторно лицензировать, или + распространять Программу иначе, чем это явно предусмотрено данной + Лицензией. Любая попытка воспроизводить, изменять, повторно + лицензировать или распространять Программу каким-либо другим способом + неправомерна и автоматически прекращает ваши права данные вам этой + Лицензией. Однако лицензии лиц, получивших от вас копии или права + согласно данной Открытой Лицензии, не прекратят своего действия до тех + пор, пока эти лица полностью соблюдают условия. + 6. Вы не обязаны соглашаться с этой Лицензией, так как вы не подписывали + ее. Однако тогда вы не получаете права модифицировать или + распространять Программу или основанные на Программе произведения. Эти + действия запрещены законом, если вы не принимаете к соблюдению эту + Лицензию. А значит, изменяя или распространяя Программу (или + произведение, основанное на Программе), вы изъявляете свое согласие с + этой Лицензией и всеми ее условиями о воспроизведении, распространении + или модификации Программы или произведений, основанных на ней. + 7. Каждый раз, когда вы повторно распространяете Программу (или любое + произведение, основанное на Программе), получатель этого произведения + автоматически получает лицензию от первоначального держателя лицензии + на воспроизведение, распространение или модификацию Программы, + обсуждаемую в этих определениях и условиях. Вы не можете налагать + каких-либо дополнительных ограничений на осуществление получателем + прав, предоставленных данным документом. Вы не несете ответственности + за соблюдение третьими лицами условий этой Лицензии. + 8. Если в результате судебного разбирательства, или обвинения в нарушении + патента или по любой другой причине (не обязательно связанной с + патентами), вам навязаны условия, противоречащие данной Лицензии (как + по решению суда, так и нет), то это не освобождает вас от соблюдения + Лицензии. Если вы не можете заниматься распространением так, чтобы + одновременно удовлетворить требованиям и этой Лицензии, и всем другим + требованиям, то вы не должны заниматься распространением Программы. + Например, если патент не позволяет безвозмездное повторное + распространение Программы всем, кто получил копии от вас + непосредственно или через посредников, то единственным способом + удовлетворить и патенту, и этой Лицензии будет ваш полный отказ от + распространения Программы. Если какая-либо часть этого раздела не имеет + силы или не может быть применена при любых конкретных обстоятельствах, + то подразумевается, что имеет силу остальная часть раздела, и весь + Раздел имеет силу при других обстоятельствах. Цель этого раздела - не + побудить вас делать заявления о нарушениях прав на патент, или заявлять + о других претензиях на право собственности, или оспаривать правильность + подобных претензий; единственная цель этого раздела - защита + целостности системы распространения свободных программ, которая + реализуется использованием общих лицензий. Многие люди благодаря этой + системе внесли щедрый вклад в широкий спектр распространяемых программ, + полагаясь на согласованное применение этой системы; автору принадлежит + право решать хочет ли он или она распространять программы в этой + системе или в какой-то другой, и получатель лицензии не может влиять на + принятие этого решения. Этот раздел предназначен для того, чтобы + тщательно прояснить, что полагается следствием из остальной части + данной Лицензии. + 9. Если распространение и/или использование Программы ограничено в ряде + стран либо патентами, либо авторскими правами на интерфейсы, + первоначальный обладатель авторских прав, выпускающий Программу с этой + Лицензией, может добавить явное ограничение на географическое + распространение, исключив такие страны, так что распространение + разрешается только в тех странах, которые не были исключены. В этом + случае данная Лицензия включает в себя это ограничение, как если бы оно + было написано в тексте данной Лицензии. + 10. Вы можете по выбору следовать определениям и условиям либо настоящей + лицензии либо любой версии GPL лицензии, когда-либо опубликованной + Фондом Свободного програмного обеспечения. + 11. Если вы хотите встроить части Программы в другие свободные программы с + иными условиями распространения, напишите автору с просьбой о + разрешении. Для программ, которые охраняется авторскими правами Фонда + Свободного ПО, напишите в Фонд Свободного ПО. + + + НИКАКИХ ГАРАНТИЙ + + 12. ПОСКОЛЬКУ ПРОГРАММА ПРЕДОСТАВЛЯЕТСЯ БЕСПЛАТНО, НА ПРОГРАММУ НЕТ + ГАРАНТИЙ В ТОЙ МЕРЕ, КАКАЯ ДОПУСТИМА ПРИМЕНИМЫМ ЗАКОНОМ. ЗА ИСКЛЮЧЕНИЕМ + ТЕХ СЛУЧАЕВ, КОГДА ПРОТИВНОЕ ЗАЯВЛЕНО В ПИСЬМЕННОЙ ФОРМЕ, ДЕРЖАТЕЛИ + АВТОРСКИХ ПРАВ И/ИЛИ ДРУГИЕ СТОРОНЫ ПОСТАВЛЯЮТ ПРОГРАММУ "КАК ОНА ЕСТЬ" + БЕЗ КАКОГО-ЛИБО ВИДА ГАРАНТИЙ, ВЫРАЖЕННЫХ ЯВНО ИЛИ ПОДРАЗУМЕВАЕМЫХ, + ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОДРАЗУМЕВАЕМЫМИ ГАРАНТИЯМИ КОММЕРЧЕСКОЙ + ЦЕННОСТИ И ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ. ВЕСЬ РИСК В ОТНОШЕНИИ + КАЧЕСТВА И ПРОИЗВОДИТЕЛЬНОСТИ ПРОГРАММЫ ОСТАЕТСЯ ПРИ ВАС. ЕСЛИ + ПРОГРАММА ОКАЖЕТСЯ ДЕФЕКТНОЙ, ВЫ ПРИНИМАЕТЕ НА СЕБЯ СТОИМОСТЬ ВСЕГО + НЕОБХОДИМОГО ОБСЛУЖИВАНИЯ, ВОССТАНОВЛЕНИЯ ИЛИ ИСПРАВЛЕНИЯ. + 13. НИ В КОЕМ СЛУЧАЕ, ЕСЛИ НЕ ТРЕБУЕТСЯ ПОДХОДЯЩИМ ЗАКОНОМ ИЛИ НЕ УСЛОВЛЕНО + В ПИСЬМЕННОЙ ФОРМЕ, НИКАКОЙ ДЕРЖАТЕЛЬ АВТОРСКИХ ПРАВ ИЛИ НИКАКОЕ ДРУГОЕ + ЛИЦО, КОТОРОЕ МОЖЕТ ИЗМЕНЯТЬ И/ИЛИ ПОВТОРНО РАСПРОСТРАНЯТЬ ПРОГРАММУ, + КАК БЫЛО РАЗРЕШЕНО ВЫШЕ, НЕ ОТВЕТСТВЕННЫ ПЕРЕД ВАМИ ЗА УБЫТКИ, ВКЛЮЧАЯ + ЛЮБЫЕ ОБЩИЕ, СПЕЦИАЛЬНЫЕ, СЛУЧАЙНЫЕ ИЛИ ПОСЛЕДОВАВШИЕ УБЫТКИ, + ПРОИСТЕКАЮЩИЕ ИЗ ИСПОЛЬЗОВАНИЯ ИЛИ НЕВОЗМОЖНОСТИ ИСПОЛЬЗОВАНИЯ + ПРОГРАММЫ (ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОТЕРЕЙ ДАННЫХ, ИЛИ ДАННЫМИ, + СТАВШИМИ НЕПРАВИЛЬНЫМИ, ИЛИ ПОТЕРЯМИ, ПОНЕСЕННЫМИ ИЗ-ЗА ВАС ИЛИ ТРЕТЬИХ + ЛИЦ, ИЛИ ОТКАЗОМ ПРОГРАММЫ РАБОТАТЬ СОВМЕСТНО С ЛЮБЫМИ ДРУГИМИ + ПРОГРАММАМИ), ДАЖЕ ЕСЛИ ТАКОЙ ДЕРЖАТЕЛЬ ИЛИ ДРУГОЕ ЛИЦО БЫЛИ ИЗВЕЩЕНЫ О + ВОЗМОЖНОСТИ ТАКИХ УБЫТКОВ. + + КОНЕЦ ОПРЕДЕЛЕНИЙ И УСЛОВИЙ + + + +The Debian packaging is (C) 2007, Andrey Paskal . + + +# Please also look if there are files or directories which have a +# different copyright/license attached and list them here. + diff --git a/build/ubuntu/dirs b/build/ubuntu/dirs new file mode 100644 index 0000000..ca882bb --- /dev/null +++ b/build/ubuntu/dirs @@ -0,0 +1,2 @@ +usr/bin +usr/sbin diff --git a/build/ubuntu/docs b/build/ubuntu/docs new file mode 100644 index 0000000..e69de29 diff --git a/build/ubuntu/postinst b/build/ubuntu/postinst new file mode 100644 index 0000000..176a667 --- /dev/null +++ b/build/ubuntu/postinst @@ -0,0 +1,57 @@ +#!/bin/sh +# postinst script for ananas +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package +# + +case "$1" in + configure) + + #starts mysql server + [ -e /etc/init.d/mysql ] && /etc/init.d/mysql status|grep stopped > /dev/null && /etc/init.d/mysql start > /dev/null || : + #creates databases + mysql -u root -e "create database ananas_inventory character set utf8" > /dev/null 2>&1 && mysql -u root \ + ananas_inventory < /usr/share/ananas/inventory/inventory.sql || : + mysql -u root -e "create database ananas_inventory_demo character set utf8" > /dev/null 2>&1 && mysql -u root \ + ananas_inventory_demo < /usr/share/ananas/inventory/inventory-demo.sql || : + + + #creates system base for mysql + mysqlshow -u root| grep ananas_system > /dev/null || mysqladmin -u root create ananas_system || : + + ln -fs /usr/lib/ananas/qt3plugins/designer/libananasplugin.so /usr/lib/libananasplugin.so + chmod 666 /etc/ananas/* || : + chmod 777 /etc/ananas + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + + diff --git a/build/ubuntu/prerm b/build/ubuntu/prerm new file mode 100644 index 0000000..2f242ad --- /dev/null +++ b/build/ubuntu/prerm @@ -0,0 +1,57 @@ +#!/bin/sh +# prerm script for ananas +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `upgrade' +# * `failed-upgrade' +# * `remove' `in-favour' +# * `deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + remove) + rm -f /usr/share/ananas/translations/*.qm + rm -f /usr/share/ananas/templates/*.* + rm -f /usr/share/ananas/inventory/templ_*.odt + rm -f /usr/share/ananas/inventory/templ_*.ods + rm -f /etc/ananas/inventory.* + rm -f /etc/ananas/inventory-demo.* + rm -f /etc/ananas/inventory_grouprc + rm -f /etc/ananas/.* + [ -e /usr/share/ananas/inventory ] && rmdir --ignore-fail-on-non-empty /usr/share/ananas/inventory + [ -e /usr/share/ananas/translations ] && rmdir --ignore-fail-on-non-empty /usr/share/ananas/translations + [ -e /usr/share/ananas/template ] && rmdir --ignore-fail-on-non-empty /usr/share/ananas/templates + [ -e /usr/share/ananas ] && rmdir --ignore-fail-on-non-empty /usr/share/ananas + [ -e /etc/ananas ] && rmdir --ignore-fail-on-non-empty /etc/ananas + + # extentions + rmdir --ignore-fail-on-non-empty /usr/lib/ananas + + ;; + upgrade|deconfigure) + ;; + failed-upgrade) + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + + diff --git a/build/ubuntu/rules b/build/ubuntu/rules new file mode 100755 index 0000000..9988abc --- /dev/null +++ b/build/ubuntu/rules @@ -0,0 +1,158 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +export QTDIR=/usr/share/qt4 + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +configure: configure-stamp +configure-stamp: + dh_testdir + # Add here commands to configure the package. + + # ananas + + # Временная заглушка для откладки процесса сборки пакета + # Используем архив с ранее откомпилированным Ананасом, что бы ускорить процедуру сборки пакета + # Если вы не занимаетесь отладкой сборки пакета, а собираете Ананас, закоментируйте этот блок кода. +# mkdir tmp +# cd tmp && wget http://localhost/tmp/compiled/ananas-0.9.5.tgz && \ +# cd ../.. && tar zxf ananas-0.9.5/tmp/ananas-0.9.5.tgz && \ +# rm -Rf ananas-0.9.5/tmp + + touch configure-stamp + + +build: build-stamp + +build-stamp: configure-stamp + dh_testdir + + # Add here commands to compile the package. + + # Makes ananas + # Закоментированно временно для отладки процесса сборки пакета +# rm -f `find src doc -name Makefile` +# /usr/share/qt4/bin/qmake src/src.pro -o src/Makefile + $(MAKE) + $(MAKE) tr + + touch $@ + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + + # Add here commands to clean up after the build process. +# -$(MAKE) clean + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/ananas. +# rm -f `find src doc -name Makefile` +# qmake src/src.pro -o src/Makefile + + cd src && \ + $(MAKE) install \ + INSTALL_ROOT=$(CURDIR)/debian/ananas LIBDIR=/usr/lib \ + BINDIR=/usr/bin INCLUDEDIR=/usr/include/ananas + #cd ../doc && qmake doc.pro -o Makefile && make install INSTALL_ROOT=$(CURDIR)/debian/ananas \ + #DOCDIR=$(CURDIR)/debian/ananas/usr/share/doc/ananas + mkdir -p $(CURDIR)/debian/ananas/etc/ananas + mkdir -p $(CURDIR)/debian/ananas/usr/share/ananas/translations + mkdir -p $(CURDIR)/debian/ananas/usr/share/ananas/templates + mkdir -p $(CURDIR)/debian/ananas/usr/share/ananas/inventory + mkdir -p $(CURDIR)/debian/ananas/usr/share/applications + mkdir -p $(CURDIR)/debian/ananas/usr/share/pixmaps + mkdir -p $(CURDIR)/debian/ananas/usr/lib/menu + + cp -f ./translations/*.qm $(CURDIR)/debian/ananas/usr/share/ananas/translations + cp -f ./src/designer/templates/*.* $(CURDIR)/debian/ananas/usr/share/ananas/templates + + + # clear debug info +# strip $(CURDIR)/debian/$(package)/usr/bin/ananas +# strip $(CURDIR)/debian/$(package)/usr/bin/ananas-designer +# strip $(CURDIR)/debian/$(package)/usr/lib/libananas.so* +# strip $(CURDIR)/debian/$(package)/usr/lib/ananas/qt4plugins/designer/libananasplugin.so +# strip $(CURDIR)/debian/$(package)/usr/lib/ananas/qt4plugins/sqldrivers/libqsqlmysqlu.so + + + cp -f ./build/menus/kde/ananas.desktop $(CURDIR)/debian/ananas/usr/share/applications/ + cp -f ./build/menus/kde/ananas-designer.desktop $(CURDIR)/debian/ananas/usr/share/applications/ + cp -f ./build/icons/*.png $(CURDIR)/debian/ananas/usr/share/pixmaps/ + + # inventory +# cp -f ./applications/inventory/inventory.cfg $(CURDIR)/debian/ananas/etc/ananas/ +# cp -f ./applications/inventory/inventory.rc $(CURDIR)/debian/ananas/etc/ananas/ +# cp -f ./applications/inventory/inventory_grouprc $(CURDIR)/debian/ananas/etc/ananas/ +# cp -f ./applications/inventory/inventory.sql $(CURDIR)/debian/ananas/usr/share/ananas/inventory/ +# cp -f ./applications/inventory/inventory-demo.cfg $(CURDIR)/debian/ananas/etc/ananas/ +# cp -f ./applications/inventory/inventory-demo.rc $(CURDIR)/debian/ananas/etc/ananas/ +# cp -f ./applications/inventory/inventory-demo.sql $(CURDIR)/debian/ananas/usr/share/ananas/inventory/ +# cp -f ./applications/inventory/templ_*.odt $(CURDIR)/debian/ananas/usr/share/ananas/inventory/ +# cp -f ./applications/inventory/templ_*.ods $(CURDIR)/debian/ananas/usr/share/ananas/inventory/ + + rm -Rf $(CURDIR)/debian/ananas/usr/include/ananas || : + rm -f $(CURDIR)/debian/ananas/usr/share/doc/ananas/*.tex || : + + # QSA +# cp /usr/share/qt4/lib/libqsa* $(CURDIR)/debian/ananas/usr/lib/ +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installexamples +# dh_install +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime +# dh_python +# dh_installinit +# dh_installcron +# dh_installinfo + dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms +# dh_perl +# dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure