PKGBUILD cleanup
authorDoug Newgard <scimmia22@outlook.com>
Thu, 13 Jun 2013 05:25:49 +0000 (14:25 +0900)
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>
Thu, 13 Jun 2013 05:25:50 +0000 (14:25 +0900)
pkgdesc should not include the name of the package (was misspelled anyway)
Licenses were wrong, LGPL2.1, not LGPL2 and missing CCPL
Doesn't need to provide itself or elementary-svn
Shouldn't override user selected options, if they manually add !strip,
!docs, or !zipman, that should be respected unless there's a specific
reason the option needs to be as specified
Shouldn't override user build flags, if they manaually change -g or
-O2, that should be respected unless there's a specific reason that
exact build flag is required.
Doesn't need to disable-static, there are none anyway
make doc should be run in the build function
Don't need to rm -rf $pkgdir/usr, each package function has it's own
$pkgdir and they are all cleared each time makepkg is run
All paths which include a variable should be quoted
Should not put another copy of LGPL2.1 on the system, it's in common
for a reason

pkgbuild/PKGBUILD.in

index d75a0e4..7618231 100644 (file)
@@ -2,22 +2,22 @@
 pkgname=('elementary' 'elementary_test' 'elementary_doc')
 pkgver=@VERSION@
 pkgrel=1
-pkgdesc="Eklementary GUI toolkit - GIT development snapshot"
+pkgdesc="Enlightenment GUI toolkit - GIT development snapshot"
 arch=('i686' 'x86_64' 'arm')
 url="http://www.enlightenment.org"
-license=('LGPL2')
+license=('LGPL2.1' 'CCPL:cc-by-sa')
 makedepends=('doxygen' 'imagemagick')
+depends=('efl_x11' 'evas_generic_loaders')
 optdepends=('emotion_generic_players')
-depends=('efl' 'evas_generic_loaders')
-provides=("elementary=$pkgver" 'elementary-svn')
-options=('strip' 'docs' 'zipman' '!libtool' 'debug')
-buildflags="-O2 -g -fvisibility=hidden -fomit-frame-pointer"
+options=('!libtool' 'debug')
 build() {
   cd "../.."
+  export CFLAGS="$CFLAGS -fvisibility=hidden -fomit-frame-pointer"
   make clean distclean
   ./configure --prefix=/usr \
   --disable-static
   make
+  make doc
 }
 
 #check() {
@@ -27,56 +27,43 @@ build() {
 
 package_elementary() {
   cd "../.."
-  rm -rf $pkgdir/usr
   make -j1 DESTDIR="$pkgdir/" install
-  install -Dm644 README $pkgdir/usr/share/$pkgname/README
-  install -Dm644 NEWS $pkgdir/usr/share/$pkgname/NEWS
-  install -Dm644 ChangeLog $pkgdir/usr/share/$pkgname/ChangeLog
-  install -Dm644 AUTHORS $pkgdir/usr/share/$pkgname/AUTHORS
-  install -Dm644 COMPLIANCE $pkgdir/usr/share/$pkgname/COMPLIANCE
-  install -Dm644 COPYING $pkgdir/usr/share/licenses/$pkgname/COPYING
-  install -Dm644 COPYING.images $pkgdir/usr/share/licenses/$pkgname/COPYING.images
-  ln -s ../licenses/$pkgname/COPYING $pkgdir/usr/share/$pkgname/COPYING
-  ln -s ../licenses/$pkgname/COPYING.images $pkgdir/usr/share/$pkgname/COPYING.images
-  rm -rf $pkgdir/usr/bin/elementary_test*
-  rm -rf $pkgdir/usr/lib/elementary/modules/test_entry
-  rm -rf $pkgdir/usr/lib/elementary/modules/test_map
-  rm -rf $pkgdir/usr/lib/elementary_testql.so
-  rm -rf $pkgdir/usr/share/applications/elementary_test.desktop
-  rm -rf $pkgdir/usr/share/elementary/examples
-  rm -rf $pkgdir/usr/share/elementary/images
-  rm -rf $pkgdir/usr/share/elementary/objects
+  install -Dm644 README "$pkgdir/usr/share/$pkgname/README"
+  install -Dm644 NEWS "$pkgdir/usr/share/$pkgname/NEWS"
+  install -Dm644 ChangeLog "$pkgdir/usr/share/$pkgname/ChangeLog"
+  install -Dm644 AUTHORS "$pkgdir/usr/share/$pkgname/AUTHORS"
+  install -Dm644 COMPLIANCE "$pkgdir/usr/share/$pkgname/COMPLIANCE"
+  install -Dm644 COPYING.images "$pkgdir/usr/share/licenses/$pkgname/COPYING.images"
+  sed -n '1,/details./p' COPYING > "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+  ln -s "../licenses/$pkgname/COPYING" "$pkgdir/usr/share/$pkgname/COPYING"
+  ln -s "../licenses/$pkgname/COPYING.images" "$pkgdir/usr/share/$pkgname/COPYING.images"
+  rm -rf "$pkgdir/usr/bin/"elementary_test*
+  rm -rf "$pkgdir/usr/lib/elementary/modules/"{test_entry,test_map}
+  rm -rf "$pkgdir/usr/lib/elementary_testql.so"
+  rm -rf "$pkgdir/usr/share/applications/elementary_test.desktop"
+  rm -rf "$pkgdir/usr/share/elementary/"{examples,images,objects}
 }
 
 package_elementary_test() {
+  pkgdesc="Test application for Elementary"
+  depends=('elementary')
+
   cd "../.."
-  rm -rf $pkgdir/usr
   make -j1 DESTDIR="$pkgdir/" install
-  rm -rf $pkgdir/usr/include
-  rm -rf $pkgdir/usr/bin/elementary_codegen
-  rm -rf $pkgdir/usr/bin/elementary_config
-  rm -rf $pkgdir/usr/bin/elementary_quicklaunch
-  rm -rf $pkgdir/usr/bin/elementary_run
-  rm -rf $pkgdir/usr/bin/elm_prefs_cc
-  rm -rf $pkgdir/usr/lib/cmake
-  rm -rf $pkgdir/usr/lib/edje
-  rm -rf $pkgdir/usr/lib/elementary
-  rm -rf $pkgdir/usr/lib/libelementary.so*
-  rm -rf $pkgdir/usr/lib/pkgconfig
-  rm -rf $pkgdir/usr/share/applications/elementary_config.desktop
-  rm -rf $pkgdir/usr/share/elementary/config
-  rm -rf $pkgdir/usr/share/elementary/edje_externals/icons.edj
-  rm -rf $pkgdir/usr/share/elementary/examples
-  rm -rf $pkgdir/usr/share/elementary/themes
-  rm -rf $pkgdir/usr/share/icons/elementary.png
-  rm -rf $pkgdir/usr/share/locale/
+  rm -rf "$pkgdir/usr/include"
+  rm -rf "$pkgdir/usr/bin/"{elementary_codegen,elementary_config,elementary_quicklaunch,elementary_run,elm_prefs_cc}
+  rm -rf "$pkgdir/usr/lib/"{cmake,edje,elementary,libelementary.so*,pkgconfig}
+  rm -rf "$pkgdir/usr/share/applications/elementary_config.desktop"
+  rm -rf "$pkgdir/usr/share/elementary/"{config,examples,themes,edje_externals}
+  rm -rf "$pkgdir/usr/share/"{icons,locale}
 }
 
 package_elementary_doc() {
+  pkgdesc="Documentation for Elementary"
+  depends=()
+
   cd "../.."
-  rm -rf $pkgdir/usr
-  make -j1 doc
-  mkdir -p $pkgdir/usr/share/$pkgname
-  cp -r doc/html $pkgdir/usr/share/$pkgname/html
-  cp -r doc/latex $pkgdir/usr/share/$pkgname/latex
+  mkdir -p "$pkgdir/usr/share/$pkgname"
+  cp -a doc/html "$pkgdir/usr/share/$pkgname/html"
+  cp -a doc/latex "$pkgdir/usr/share/$pkgname/latex"
 }