diff options
280 files changed, 24792 insertions, 7502 deletions
diff --git a/app/admin/hddtemp/hddtemp.SlackBuild b/app/admin/hddtemp/hddtemp.SlackBuild index a9b61f7f..874fb76c 100755 --- a/app/admin/hddtemp/hddtemp.SlackBuild +++ b/app/admin/hddtemp/hddtemp.SlackBuild @@ -84,50 +84,6 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -# Import minimized signing key from -if echo [[SIGNING KEY URL]] | grep -q -v "SIGNING KEY URL"; then - lynx -dump [[SIGNING KEY URL]] | gpg --import || exit $ERROR_GPG -elif echo [[SIGNING KEY ID]] | grep -q -v "SIGNING KEY ID"; then - gpg --recv-keys [[SIGNING KEY ID]] || exit $ERROR_GPG -else - gpg --import << EOKEY || exit $ERROR_GPG -[[SIGNING KEY]] -EOKEY -fi - -# Download source's signature if necessary and check it -if echo http://download.savannah.gnu.org/releases/hddtemp | grep -q -v "SIGNING URL"; then - SIGNATURE="`basename http://download.savannah.gnu.org/releases/hddtemp`" - if [ ! -s "$SRC_DIR/$SIGNATURE" ]; then - wget "http://download.savannah.gnu.org/releases/hddtemp" -O "$SRC_DIR/$SIGNATURE" || exit $ERROR_WGET - fi -else - if [ -s "$SRC_DIR/$SRC.sig" ]; then - SIGNATURE="$SRC.sig" - elif [ -s "$SRC_DIR/$SRC.asc" ]; then - SIGNATURE="$SRC.asc" - else - echo Trying to get signature file from $URL.sig... - if wget "$URL.sig" -O "$SRC_DIR/$SRC.sig"; then - SIGNATURE="$SRC.sig" - else - rm $SRC_DIR/$SRC.sig - echo Trying to get signature file from $URL.asc... - if wget "$URL.asc" -O "$SRC_DIR/$SRC.asc"; then - SIGNATURE="$SRC.asc" - else - rm $SRC_DIR/$SRC.asc - echo "Error getting source's signature file" - exit $ERROR_GPG - fi - fi - fi -fi - -echo Checking $SRC_DIR/$SRC with gpg using $SRC_DIR/$SIGNATURE... -gpg --verify "$SRC_DIR/$SIGNATURE" "$SRC_DIR/$SRC" || exit $ERROR_GPG -echo Success. - # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,7 +104,11 @@ make install DESTDIR="$PKG" || exit $ERROR_INSTALL # Get new hddtemp.db mkdir -p $PKG/usr/share/misc -wget http://download.savannah.gnu.org/releases/hddtemp/hddtemp.db -P $PKG/usr/share/misc/ +if [ ! -e $CWD/hddtemp.db ]; then + wget http://download.savannah.gnu.org/releases/hddtemp/hddtemp.db -P $CWD/ || exit $ERROR_WGET +fi +mkdir -p $PKG/usr/share/misc +cp $CWD/hddtemp.db $PKG/usr/share/misc/ # Strip binaries ( cd "$PKG" diff --git a/app/admin/hddtemp/hddtemp.db b/app/admin/hddtemp/hddtemp.db new file mode 100644 index 00000000..4a061cfc --- /dev/null +++ b/app/admin/hddtemp/hddtemp.db @@ -0,0 +1,523 @@ +# +# Insert a regular expression for support of the model or the serie of your hard drive. +# If you don't know what to put in the second field, put the number +# that appears most often for your brand :o) +# A value of zero meens that we know that the drive doesn't have +# a temperature sensor (you can set the unit to C or F). +# +############################################################################ +# The following list was found at (http://www.almico.com/forumharddisks.php) +# If your drive is in the list send me a mail. +# +# Manufacturer Model Size Notes +# FUJITSU FUJITSU MPF3102AH 10.0GB +# FUJITSU FUJITSU MPG3204AH E 20.0GB +# FUJITSU FUJITSU MPG3307AT 30.0GB +# FUJITSU FUJITSU MPG3409AH 40.0GB +# FUJITSU FUJITSU MPG3409AH EF 40.0GB +# HITACHI HITACHI_DK23CA-10 9.8GB +# HITACHI HITACHI_DK23CA-15 14.7GB +# SAMSUNG SAMSUNG SV3012H 29.4GB +# SEAGATE ST310210A 10.0GB +# SEAGATE ST310211A 9.8GB +# SEAGATE ST310215A 10.0GB +# SEAGATE ST315320A 14.9GB +# SEAGATE ST320410A 19.6GB +# SEAGATE ST320413A 19.6GB +# SEAGATE ST320420A 19.9GB +# SEAGATE ST330610A 29.3GB +# SEAGATE ST330620A 29.3GB +# SEAGATE ST330621A 29.3GB +# SEAGATE ST330630A 29.9GB +# SEAGATE ST340016A 39.1GB +# SEAGATE ST340810ACE 39.1GB +# SEAGATE ST380020ACE 78.2GB +# WESTERN DIGITAL WDC AC210200D 10.0GB +# WESTERN DIGITAL WDC AC29100D 8.9GB +# WESTERN DIGITAL WDC AC420400D 19.9GB +# WESTERN DIGITAL WDC WD102AA 10.0GB +# +################################################# + +######################################## +############# ExcelStor drives +######################################## +# "ExcelStor Technology CT215" ??? ? "ExcelStor CT215" +"ExcelStor Technology J3.0" 194 C "ExcelStor Technology 3xy (xy GB)" +"ExcelStor Technology J6.0" 194 C "ExcelStor Technology 6xy (xy GB)" +"ExcelStor Technology J680" 194 C "ExcelStor Technology J680 (80 GB)" +"ExcelStor Technology J860" 194 C "ExcelStor Technology J860 (60 GB)" +"ExcelStor Technology J880" 194 C "ExcelStor Technology J880 (80 GB)" + + + +######################################## +############# Fujitsu drives +######################################## +"FUJITSU MHM2100AT" 0 C "Fujitsu MHM2100AT" + +"FUJITSU MHN2150AT" 194 C "Fujitsu MHN2150AT" +"FUJITSU MHN2200AT" 194 C "Fujitsu MHN2200AT" +"FUJITSU MHN2300AT" 194 C "Fujitsu MHN2300AT" + +"FUJITSU MHR2020AT" 194 C "Fujitsu MHR2020AT" +"FUJITSU MHR2030AT" 194 C "Fujitsu MHR2030AT" + +"FUJITSU MHS2030AT" 194 C "Fujitsu MHS2030AT" +"FUJITSU MHS2040AT" 194 C "Fujitsu MHS2040AT" +"FUJITSU MHS2060AT" 194 C "Fujitsu MHS2060AT (Apple PowerBook G4)" + +"FUJITSU MHT2030AC" 194 C "Fujitsu Mobile 30GB, 2MB, 4200RPM (automotive)" + +"FUJITSU MHT2030AT" 194 C "Fujitsu MHT2030AT" +"FUJITSU MHT2040AH" 194 C "Fujitsu MHT2040AH" +"FUJITSU MHT2040AT" 194 C "Fujitsu MHT2040AT" +"FUJITSU MHT2060AH" 194 C "Fujitsu MHT2060AH" +"FUJITSU MHT2060AT" 194 C "Fujitsu MHT2060AT" +"FUJITSU MHT2080AH" 194 C "Fujitsu MHT2080AH" + +"FUJITSU MHU2100AT" 194 C "Fujitsu MHU2100AT 100GB, 8MB (4200RPM)" + +"FUJITSU MHV2100AH" 194 C "FUJITSU MHV2100AH" +"FUJITSU MHV2100AT" 194 C "FUJITSU MHV2100AT" +"FUJITSU MHV2080[AB]H" 194 C "FUJITSU MHV2080AH" + +"FUJITSU MPF3204AH" 194 C "Fujitsu MPF3204AH" + +"FUJITSU MPG3204AT.*" 194 C "Fujitsu MPG3204AT" +"FUJITSU MPG3307AT" 194 C "Fujitsu MPG3307AT" +"FUJITSU MPG3409AT.*" 194 C "Fujitsu MPG3409AT E" +"FUJITSU MPG3409AH.*" 194 C "Fujitsu MPG3409AH E" +"FUJITSU MPG3204AH" 194 C "Fujitsu MPG3204AH" +"FUJITSU MPG3102AT E" 194 C "FUJITSU MPG3102AT E" + + + +######################################## +############# Hitachi drives +######################################## +"HITACHI_DK13FA-40B" 194 C "Hitachi DK13FA-40B" +"HITACHI_DK228A-65" 0 C "Hitachi DK228A-65" +"HITACHI_DK23CA-(15|20|30|30B|75)" 194 C "Hitachi DK23CA series" +"HITACHI_DK23DA-[234]0" 194 C "Hitachi DK23DA series" +"HITACHI_DK23EA-[2346]0" 194 C "Hitachi DK23EA series" +"HITACHI_DK23EB-40" 194 C "Hitachi DK23EB series" +"HITACHI_DK23FA-[468]0" 194 C "Hitachi DK23FA series" +"HITACHI_DK23FB-[46]0" 194 C "Hitachi DK23FB series" + +"HDS722516VLAT[28]0" 194 C "Hitachi Deskstar 7K250 160GB 2/8MB cache" +"HDS722525VLAT80" 194 C "Hitachi Deskstar 7K250 200/250GB, 7200RPM, 8MB, Parallel-ATA" +"HDS722512VLAT80" 194 C "Hitachi Deskstar 7K250 80GB" +"HDS722540VLAT20" 194 C "Hitachi Deskstar 7K250, 40GB, 7200RPM, 2MB cache" +"HDS722580VLAT20" 194 C "Deskstar 7K250 60GB" +"HDS724040KLSA80" 194 C "Hitachi Deskstar 7K250 400GB, 7200RPM, 8MB, Serial-ATA" +"HDS728080PLAT20" 194 C "Hitachi Deskstar 7K80 80GB" + +"HDS722525VLSA80" 194 C "Hitachi Deskstar 7K250 250GB, 7200RPM, 8MB, SATA" +"HDS722516VLSA80" 194 C "Hitachi Deskstar 7K250 160GB 8Mo cache SATA" +"HDS722580VLSA80" 194 C "Hitachi Deskstar 7K250 80GB SATA" +"HDS728040PLAT20" 194 C "Hitachi Deskstar 7K80 40GB" + +"HDS724040KLAT80" 194 C "Hitachi Deskstar 7K400 400GB 8Mo cache PATA" + +"HDT7225(16|25)DLAT80" 194 C "Hitachi Deskstar T7K250 series, 7200RPM, 8MB, PATA" +"HDT722516DLA380 V43O" 194 C "Hitachi T7K250 SATA" +"HDT722525DLA380" 194 C "Hitachi Deskstar T7K250 250GB 8Mo cache SATAII" +"HDT725050VLA360" 194 C "Hitachi Deskstar T7K500 500GB, 7200RPM, 16MB, SATA II" + +"HTE721010G9AT00" 194 C "Hitachi Travelstar 100GB (7200RPM)" +"HTE726060M9AT00" 194 C "Hitachi Travelstar 60GB (7200RPM)" +"HTS424030M9AT00" 194 C "Hitachi Travelstar 30GB (4200RPM)" +"HTS424040M9AT00" 194 C "Hitachi Travelstar 4K40 40GB 2MB cache (4200RPM)" +"HTS541010G9SA00" 194 C "Hitachi Travelstar 100GB SATA" +"HTS541040G9AT00" 194 C "Hitachi Travelstar 40GB (5400RPM)" +"HTS541080G9AT00" 194 C "Hitachi Travelstar 80GB (5400RPM)" +"HTS548020M9AT00" 194 C "Hitachi Travelstar 20GB (5400RPM)" +"HTS548030M9AT00" 194 C "Hitachi Travelstar 30GB (5400RPM)" +"HTS548040M9AT00" 194 C "Hitachi Travelstar 40GB (5400RPM)" +"HTS548060M9AT00" 194 C "Hitachi Travelstar 60GB (5400RPM)" +"HTS548080M9AT00" 194 C "Hitachi Travelstar 80GB (5400RPM)" +"HTS721080G9AT00" 194 C "Hitachi Travelstar 7K100 80GB (7200RPM)" +"HTS726060M9AT00" 194 C "Hitachi Travelstar 60GB" + + +######################################## +############# IBM drives +######################################## + +# DJSA serie is using F0h command to report temperature and also have +# SMART capabilties but it was reported not to work. +# "DJSA-2(30|32|10|20|05)" 0 C "IBM Travelstar 20GN, 32GH, 30GT series" + +"IBM-DARA-212000" 0 C "IBM Travelstar 12GN" +"IBM-DTTA-35*" 0 C "IBM Deskstar 16GP serie" + +# according to specifications they do not seems to have sensor +# but I prefer waiting for a report +#"IBM-DTTA-37*" 0 C "IBM Deskstar 14GXP serie" + +"IBM-DJNA-35.*" 231 C "IBM Deskstar 25 GP serie" +"IBM-DJNA-37.*" 231 C "IBM Deskstar 22 GXP serie" +"IBM-DHEA-(34330|36480)" 0 C "IBM Deskstar 5 serie" +"IBM-DHEA-(34331|36481|38451)" 0 C "IBM Deskstar 8 serie" +"IBM-DPTA-37.*" 231 C "IBM Deskstar 34GXP serie" +"IBM-DPTA-35.*" 231 C "IBM Deskstar 37GP serie" +"IBM-DTLA-30[57]0[123467][05]" 194 C "IBM Deskstar 40GV & 75GXP series" +"IC25N0[1234]0ATCS04-0" 194 C "IBM Travelstar 40GN serie" +"IC25N0[24]0ATC[SX]05-0" 194 C "IBM Travelstar 40GNX serie" +"IC25N0(10|15|20|30)ATDA04-0" 194 C "IBM Travelstar 30GN serie" +"IC25N0[23468]0ATMR04*" 194 C "Hitachi Travelstar 80GN" +"IC25T048ATDA05-0" 194 C "IBM Travelstar 48GH serie" +"IC25T060ATC[SX]05-0" 194 C "IBM Travelstar 60GH serie" +"IC35L0[12346]0AVER07" 194 C "IBM Deskstar 60GXP serie" +"IC35L[01][02468]0AVV[AN]07*" 194 C "IBM Deskstar 120GXP serie" +"IC35L[01][23689]0AVV207*" 194 C "IBM Deskstar 180GXP serie" + +######################################## +############# Maxtor drives +######################################## +#"Maxtor 2B0[012][04568]H1" ??? C "Maxtor Fireball 541DX" +"Maxtor 2F0[234]0[LJ]0" 194 C "Maxtor Fireball 3" +# which one must I trust ? +#"Maxtor 4D040H2" 9 C "Maxtor DiamondMax D540X-4D" +#"Maxtor 4D040H2" 0 C "Maxtor 4D040H2" +#"Maxtor 4D080H4" 12 C "Maxtor DiamondMax D540X-4D" +#"Maxtor 4D060H3" 12 C "Maxtor DiamondMax D540X-4D" +#"Maxtor 4D080H4" 9 C "Maxtor DiamondMax D540X-4D" +"MAXTOR 4K0[468]0H[234]" 194 C "Maxtor DiamondMax D540X serie" +"MAXTOR 4K020H1" 194 C "Maxtor 4K020H1" +"Maxtor 4A300J0" 194 C "Maxtor MaxLine II 300GB 5400RPM" +"Maxtor 4[RA](25|16|12|08|06)0[LJ]0" 194 C "Maxtor DiamondMax 16" +"Maxtor 5(1024|1369|2049|2732|3073|4098)U(2|3|4|6|8)" 0 C "Maxtor DiamondMax Plus 40" +"Maxtor 5A250J0" 194 C "Maxtor MaXline II 250GB 5400RPM" +"Maxtor 5A300J0" 194 C "Maxtor 5A300J0" +"Maxtor 5T0[24]0H[24]" 0 C "Maxtor DiamondMax Plus 60" +"Maxtor 6E0[234]0L0" 194 C "Maxtor DiamondMax Plus 8" +"MAXTOR 6L0[2468]0[LJ][1234]" 194 C "Maxtor DiamondMax Plus D740X family" +"Maxtor 6V320F0" 194 C "Maxtor Diamond Max 10 SATA II 320 GB" +"Maxtor 6Y(06|08|12|16|20|25)0[LPM]0" 194 C "Maxtor DiamondMax Plus 9" +"Maxtor 7L300[RS]0" 194 C "Maxtor 7L300R0 MaxLine+III 300GB 7200rpm" +"Maxtor 7Y250[PM]0" 194 C "Maxtor MaXLine Plus II 250GB 7200RPM" +"Maxtor 94098U8" 11 C "Maxtor DiamondMax 40 94098U8" + +#"Maxtor 6(B|L)(08|12|16|20|25|30)0[RSPM]0" 194 C "Maxtor DiamondMax Plus 10" +"Maxtor 6B080M0" 194 C "Maxtor DiamondMax 10 80GB 8MB SATA" +"Maxtor 6B120M0" 194 C "Maxtor DiamondMax 10 120GB 8MB SATA" +"Maxtor 6B160M0" 194 C "Maxtor DiamondMax 10 160GB 8MB SATA" +"Maxtor 6B160P0" 194 C "Maxtor DiamondMax 10 160GB 8MB ATA/133" +"Maxtor 6B200M0" 194 C "Maxtor DiamondMax 10 200GB 8MB SATA" +"Maxtor 6B200P0" 194 C "Maxtor DiamondMax 10 200GB 8MB ATA/133" +"Maxtor 6B250R0" 194 C "Maxtor DiamondMax 10 250GB 16MB ATA/133" +"Maxtor 6B250S0" 194 C "Maxtor DiamondMax 10 250GB 16MB SATA" +"Maxtor 6B300R0" 194 C "Maxtor DiamondMax 10 300GB 16MB ATA/133" +"Maxtor 6B300S0" 194 C "Maxtor DiamondMax 10 300GB 16MB SATA" +"Maxtor 6L080L0" 194 C "Maxtor DiamondMax 10 80GB 2MB ATA/133 RoHS" +"Maxtor 6L080M0" 194 C "Maxtor DiamondMax 10 80GB 8MB SATA RoHS" +"Maxtor 6L080P0" 194 C "Maxtor DiamondMax 10 80GB 8MB ATA/133 RoHS" +"Maxtor 6L120M0" 194 C "Maxtor DiamondMax 10 120GB 8MB SATA RoHS" +"Maxtor 6L120P0" 194 C "Maxtor DiamondMax 10 120GB 8MB ATA/133 RoHS" +"Maxtor 6L160M0" 194 C "Maxtor DiamondMax 10 160GB 8MB SATA RoHS" +"Maxtor 6L160P0" 194 C "Maxtor DiamondMax 10 160GB 8MB ATA/133 RoHS" +"Maxtor 6L200M0" 194 C "Maxtor DiamondMax 10 200GB 8MB SATA RoHS" +"Maxtor 6L200P0" 194 C "Maxtor DiamondMax 10 200GB 8MB ATA/133 RoHS" +"Maxtor 6L250R0" 194 C "Maxtor DiamondMax 10 250GB 16MB ATA/133 RoHS" +"Maxtor 6L250S0" 194 C "Maxtor DiamondMax 10 250GB 16MB SATA RoHS" +"Maxtor 6L300R0" 194 C "Maxtor DiamondMax 10 300GB 16MB ATA/133 RoHS" +"Maxtor 6L300S0" 194 C "Maxtor DiamondMax 10 300GB 16MB SATA RoHS" +"Maxtor 6V080E0" 194 C "Maxtor DiamondMax 10 80GB 8MB SATAII RoHS" +"Maxtor 6V160E0" 194 C "Maxtor DiamondMax 10 160GB 8MB SATAII RoHS" +"Maxtor 6V200E0" 194 C "Maxtor DiamondMax 10 200GB 8MB SATAII RoHS" +"Maxtor 6V250F0" 194 C "Maxtor DiamondMax 10 250GB 16MB SATAII RoHS" +"Maxtor 6V300F0" 194 C "Maxtor DiamondMax 10 300GB 16MB SATAII RoHS" + + + +######################################## +############# Quantum drives +######################################## +"QUANTUM FIREBALLP AS40.0" 0 C "Quantum Fireball AS40" +"QUANTUM FIREBALL CX10.2A" 0 C "Quantum Fireball CX10.2A" +#"QUANTUM FIREBALLlct10 20" 4 C "Quantum Fireball CT10 20GB" +# I suspect the QUANTUM FIREBALL_TM2110A to have a sensor in field 9... +# "QUANTUM FIREBALL_TM2110A" 9 C "Quantum Fireball TM2110A" + + + +######################################## +############# Samsung drives +######################################## +# somenone reported a problem with the SP8004H which reports a temperature +# 10°C below the ambient temperature +"SAMSUNG HA(200|250)JC" 194 C "Samsung SpinPoint V120CE series" +"SAMSUNG HD160JJ" 194 C "Samsung 160GB, 7200RPM, 8MB cache, SATA" +"SAMSUNG HD160JJ/P" 194 C "Samsung SpinPoint P80 SD 160GB (7200RPM, 8MB cache)" +"SAMSUNG HD[30|32|40][01]L[DJ]" 194 C "Samsung SpinPoint T133 series (300-400MB)" +"SAMSUNG HD250KD" 194 C "Samsung SpinPoint T133 series (250 MB PATA)" +"SAMSUNG HD321KJ" 194 C "Samsung Spinpoint T166 (7200RPM, 16MB cache) - SATA" +"SAMSUNG HD501LJ" 194 C "Samsung HD501LJ" +"SAMSUNG MP0(302|402|603|804)H" 194 C "Samsung SpinPoint M40 2.5inch" +"SAMSUNG SW0434A" 0 C "Samsung SW0434A" +"SAMSUNG SP(2001|4002|6003|8004|40A2)H" 194 C "Samsung SpinPoint P40 serie" +"SAMSUNG SP(0612|0802|1203|1604|0812|1213|1614)N" 194 C "Samsung SpinPoint P80 serie" +"SAMSUNG SP(0612|0802|1203|1604|0812|1213|1614)C" 194 C "Samsung SpinPoint P80 series - SATA" +"SAMSUNG SP0411N" 194 C "Samsung SpinPoint PL40 serie" +"SAMSUNG SP0822N" 194 C "Samsung SP0822N" +"SAMSUNG SP(0812|1213|1614)C" 194 C "Samsung Spinpoint 160G SATA" +"SAMSUNG SP2[05]14N" 194 C "Samsung SpinPoint P120 series (7200RPM, 8MB cache)" +"SAMSUNG SP2[05]04C" 194 C "Samsung SpinPoint P120 series - SATA" +"SAMSUNG SV0432A" 0 C "Samsung SV0432A" +"SAMSUNG SV3002H" 0 C "Samsung SpinPoint V30 serie" +"SAMSUNG SV(2001|4002|4012|6003|8004)H" 194 C "Samsung SpinPoint V40 serie" +#"SAMSUNG SV(0221|0602|0813|1204)H" 9 C "Samsung SpinPoint V60 serie" +#"SAMSUNG SV1204H" 194 C "Samsung 120G" +"SAMSUNG SV(0401|0802|1203|1604)N" 194 C "Samsung SpinPoint V80 serie" +"SAMSUNG SV4012H" 194 C "Samsung 40GB, 5400RPM, 2MB cache" + +######################################## +############# Seagate drives +######################################## +"Seagate Technology 1275MB - ST31276A" 0 C "Seagate ST31276A" +"ST3412A" 0 C "Seagate ST3412A" +"ST38641A" 0 C "Seagate ST38641A" +"ST310014A" 194 C "Seagate ST310014A" +"ST310210A" 0 C "Seagate ST310210A" +"ST310211A" 194 C "Seagate ST310211A" +"ST310220A" 0 C "Seagate ST310220A" +# SEAGATE ST313021A 13.0GB +"ST313021A" 0 C "Seagate U8 ST313021A" +"ST310240A" 0 C "Seagate Medalist 10240 Ultra ATA-3" +"ST315320A" 194 C "Seagate ST315320A" +"ST320423A" 0 C "Seagate U10 20423, Ultra ATA/66" +"ST320011A" 194 C "Seagate ST320011A" +"ST320014A" 194 C "Seagate ST320014A (5400 rpm, 20Gb)" +"ST320410A" 194 C "Seagate ST320410A" +"ST320413A" 194 C "Seagate ST320413A" +"ST320414A" 194 C "Seagate ST320414A" +"ST320420A" 194 C "Seagate Barracuda II ST320420A" +"ST330013A" 194 C "Seagate ST330013A Barracuda ATA V 30GB, 7200 rpm" +"ST330620A" 194 C "Seagate ST330620A" +"ST330621A" 194 C "Seagate ST330621A" +"ST330630A" 194 C "Seagate Barracuda ST330630A" +"ST340014A" 194 C "Seagate Barracuda 7200.7 40Gb" +"ST340015A" 194 C "Seagate Barracuda 5400.1 40GB" +"ST340016A" 194 C "Seagate ST340016A" +"ST340810A" 194 C "Seagate U Series 40810 (40Gb, Ultra ATA/100, 5400 rpm)" +"ST340823A" 194 C "Seagate U Series 5 40823" +"ST340824A" 194 C "Seagate Barracuda III" +"ST360015A" 194 C "Seagate Barracuda V ST360015A" +"ST360020A" 194 C "Seagate U Series 60020" +"ST360021A" 194 C "Seagate Barracuda IV ST360021A" +"ST380011A" 194 C "Seagate Barracuda 7200.7 80GB" +"ST380012A" 194 C "Seagate ST380012A 80GB" +"ST380013A" 194 C "Seagate Barracuda 7200.7 80GB" +"ST380013AS" 194 C "Seagate Barracuda 7200.7 80GB (Serial ATA)" +"ST380020A" 194 C "Seagate U Series 80020 (80Gb, Ultra ATA/100, 5400 rpm)" +"ST380021A" 194 C "Seagate Barracuda IV ST380021A" +"ST380022A" 194 C "Seagate Barracuda U7 80022, Ultra ATA/100" +"ST380023A" 194 C "Seagate Barracuda V ST380023A" +"ST380817AS" 194 C "Seagate Barracuda 7200.7 80GB - SATA" +"ST39111A" 194 C "Seagate ST39111A (from Sun Ultra)" +"ST3120020A" 194 C "Seagate ST3120020A" +"ST3120022A" 194 C "Seagate Baraccuda 7200.7 120GB" +"ST3120023A" 194 C "Seagate Barracuda V ST3120023A" +"ST3120024A" 194 C "Seagate Barracuda V ST3120024A" +"ST3120025ACE" 194 C "Seagate Barracuda V ST3120025ACE" +"ST3120026A" 194 C "Seagate Barracuda V ST3120026A" +"ST3160021A" 194 C "Seagate Barracuda 7200.7 - ST3160021A" +"ST3160023(A|AS)" 194 C "Seagate Barracuda V ST3160023A and AS (160Gb, ATA100 or Serial ATA)" +"ST3160827AS" 194 C "Seagate Barracuda 7200.7 160GB (Serial ATA)" +"ST3200021A" 194 C "Seagate Barracuda 7200.7 Plus 200GB" +"ST3200822(A|AS)" 194 C "Seagate Barracuda 7200.7 Plus 200GB (PATA or SATA)" +"ST3200826A" 194 C "Seagate Barracuda 7200.8 200Gb" +"ST3250623A" 194 C "Seagate Barracuda 7200.16 250GB" +"ST3250823A" 194 C "Seagate Barracuda 7200.8 250GB" +"ST3250823A" 194 C "Seagate Barracuda 7200.7 Plus 250GB" +"ST3250823NS" 194 C "Seagate NL35 SATA (RAID-Edition) 7200 250GB" +"ST3300831A" 194 C "Seagate 300GB ST3300831A" +"ST3400832A" 194 C "Seagate Barracuda 7200.8 Plus 400GB" +"ST3400633(A|AS)" 194 C "Seagate Barracuda 7200.7 400 GB" +"ST3500630NS" 194 C "Seagate" +"ST3400632NS" 194 C "Seagate" +"ST3320620AS" 194 C "Seagate Barracuda 7200.7 320 GB" +"ST3500630AS" 194 C "Seagate Barracuda 7200.7 500 GB" +"ST3802110A" 194 C "Seagate Barracuda 7200.9 80 GB" +"ST910021A" 194 C "Seagate Momentus 7200.1 100GB" +"ST910082[35]A" 194 C "Seagate Momentus 5400.2 100GB" +"ST9120821A" 194 C "Seagate Momentus 5400.2 120GB" +"ST94019A" 194 C "Seagate ST94019A" +"ST94813A" 194 C "Seagate Momentus 5400.2 40GB" +"ST94[08]11A" 194 C "Seagate ST94011A" +"ST960821A" 194 C "Seagate ST960821A" +"ST960822A" 194 C "Seagate Momentus 5400.2 60GB" +"ST96812AS" 194 C "Seagate Momentus 5400.2 60GB SATA" +"ST9808211A" 194 C "Seagate Momentus 5400.2 80GB" + +######################################## +############# TOSHIBA Laptops +######################################## +"MK4313MAT" 220 C "Toshiba MK4313MAT" +"TOSHIBA MK1032GAX" 194 C "Toshiba MK1032GAX" +"TOSHIBA MK1517GAP" 0 C "Toshiba MK1517GAP" +"TOSHIBA MK2018GAS" 226 F "Toshiba MK2018GAS" +"TOSHIBA MK2023GAS" 194 C "Toshiba MK2023GAS" + +"TOSHIBA MK3017GAP" 0 C "Toshiba MK3017GAP" +"TOSHIBA MK3021GAS" 194 C "Toshiba MK3021GAS" +"TOSHIBA MK3025GAS" 194 C "Toshiba MK3025GAS" + +#"TOSHIBA MK4019GAX" 222 C "Toshiba MK4019GAX" +"TOSHIBA MK4021GAS" 194 C "Toshiba MK4021GAS" +"TOSHIBA MK4025GAS" 194 C "Toshiba MK4025GAS 40 Go" +"TOSHIBA MK4026GAS" 194 C "Toshiba MK4026GAS 40 Go" +"TOSHIBA MK4032GAX" 194 C "Toshiba MK4032GAX" + +"TOSHIBA MK6021GAS" 194 C "Toshiba MK6021GAS" +"TOSHIBA MK6022GAX" 194 C "Toshiba MK6022GAX" +"TOSHIBA MK6025GAS" 194 C "Toshiba MK6025GAS" +"TOSHIBA MK6026GAX" 194 C "Toshiba MK6026GAX" +"TOSHIBA MK8025GAS" 194 C "Toshiba MK8025GAS" +"TOSHIBA MK8026GAX" 194 C "Toshiba MK8026GAX" + +"MK4025GAS" 194 C "Toshiba MK4025GAS" + + +######################################## +############# Western Digital drives +######################################## +# WDC AC310100B and WDC AC2850F are reported not working +# no more informations were given +"WDC AC22000L" 0 C "Western Digital Caviar AC22000" +"WDC AC420400D" 231 C "Western Digital Caviar AC420400D" +"WDC AC418000D" 231 C "Western Digital AC418000D" +"WDC WD135BA" 231 C "Western Digital WD135BA" + +"WDC WD100EB-00BHF0" 0 C "Western Digital 100EB-00BHF0" +"WDC WD200BB-00AUA1" 0 C "Western Digital Caviar WD200BB" +#"WDC WD200BB-60DGA0" 0 C "Western Digital Caviar WD200BB" +"WDC WD300BB-00CAA0" 0 C "Western Digital WD300BB" +"WDC WD360GD-00FNA0" 194 C "Western Digital SATA Raptor 36.7GB" +"WDC WD400BB-00CAA0" 0 C "Western Digital 400BB-00CAA0" +"WDC WD400BB-00J[KH]A0" 194 C "Western Digital Caviar WD400BB" +"WDC WD400BB-23JHC0" 194 C "Western Digital 23JHC0" +#"WDC WD400BB-00GFA0" 0 C "" +"WDC WD400BB-55HEA0" 194 C "Western Digital Caviar WD400BB" +"WDC WD400BB-(18CA|00DE)A0" 0 C "Western Digital Caviar WD400BB" +"WDC WD400BB-75FJA1" 194 C "Western Digital Caviar WD400BB" +"WDC WD400EB-00CPF0" 0 C "Western Digital 400EB-00CPF0" +"WDC WD400JB-00(JJ|FM|FS)A0" 194 C "Western Digital Caviar 40GB Special Edition 8MB" +"WDC WD400JB-00ETA0" 194 C "Western Digital 400JB-00ETA0" +"WDC WD400JB-00JJC0" 194 C "Western Digital 400JB-00JJC0 40GB" +"WDC WD400LB-00DNA0" 194 C "Western Digital 400LB-00DNA0" +"WDC WD400UE-22HCT0" 194 C "Western Digital 40GB Notebook HDD" +"WDC WD400VE-75HDT1" 194 C "Western Digital Scorpio 40GB" +"WDC WD600BB-32BSA0" 0 C "Western Digital 600BB-32BSA0" +"WDC WD600JB-00ETA0" 194 C "Western Digital 600JB-00ETA0" +"WDC WD600LB-00DNA0" 194 C "Western Digital 60GB" +"WDC WD600VE-75HDT0" 194 C "Western Digital 600VE-75HDT0" +"WDC WD600VE-00HDT0" 194 C "Western Digital 600VE-00HDT0" +"WDC WD740GD-00FL21.0" 194 C "Western Digital SATA Raptor" +"WDC WD740GD-([05]0FL[AC]0|75FLA1)" 194 C "Western Digital SATA Raptor 74GB 8MB" +"WDC WD800BB-00CAA1" 0 C "Western Digital WD800BB-00CAA1" +"WDC WD800BB-(00|22)DKA0" 194 C "Western Digital WD800BB 80 Go" +"WDC WD800BB-32CCB0" 194 C "Western Digital 800BB-32CCB0" +"WDC WD800BB-55HEA0" 194 C "Western Digital 800BB-55HEA0" +"WDC WD800BB-00JHA0" 194 C "Western Digital 800BB-00JHA0" +"WDC WD800BB-00JKA0" 194 C "Western Digital 800BB-00JKA0" +"WDC WD800BB-55JKA0" 194 C "Western Digital 800BB-55JKA0" +"WDC WD800BB-75FRA0" 194 C "Western Digital Caviar WD800BB" +"WDC WD800JB-00CRA1" 0 C "Western Digital Caviar WD800JB" +"WDC WD800JB-00(ET|FM|FS)A0" 194 C "Western Digital Caviar 80GB Special Edition 8MB" +"WDC WD800JB-00JJ[AC]0" 194 C "Western Digital WD800JB" +"WDC WD800JD-(00|55)(HK|JR)A0" 194 C "Western Digital SATA 80GB, 8MB Cache" +"WDC WD800JD-00(HK|JN)A0" 194 C "Western Digital SATA 80GB, 8MB Cache" +"WDC WD800LB-(00|55)DNA0" 194 C "Western Digital Caviar WD800LB 80 Go ATA-100" +"WDC WD800VE-07HDT0" 194 C "Western Digital 800VE-07HDT0" +"WDC WD1200BB-00(FTA|GUA)0" 194 C "Western Digital Caviar EIDE 2MB Cache" +"WDC WD1200JB-00(EV|FU|GV)A0" 194 C "Western Digital Caviar 120GB Special Edition 8MB" +"WDC WD1200JB-22GVA0" 194 C "Western Digital Caviar 120GB" +"WDC WD1200JD-00(GBB|HBC)0" 194 C "Western Digital WD1200JD" +"WDC WD1200LB-55EDA0" 194 C "Western Digital WD1220LB" +"WDC WD1200SB-01KB[AC]0" 194 C "Western Digital Caviar RE (Raid Edition) 120 GB" +"WDC WD1600BB-00DWA0" 194 C "Western Digital Caviar WD1600BB" +"WDC WD1600JB-(00EV|00FU|00GV|22GV|75GV)A0" 194 C "Western Digital Caviar 160GB Special Edition 8MB" +"WDC WD2000BB-00FTA0" 194 C "Western Digital WD2000BB" +"WDC WD2000JB-(00EV|32EV|34EV|00FU|00GV|55GV|98GV|00KF)A0" 194 C "Western Digital Caviar 200GB Special Edition 8MB" +"WDC WD2000JB-00GVC0" 194 C "Western Digital WD2000JB" +"WDC WD2000JS-00MHB1" 194 C "Western Digital SATA 200GB" +"WDC WD2500JB-(00RE|00EV|00FU|32FU|00GV|55GV)A0" 194 C "Western Digital Caviar 250GB Special Edition 8MB" +"WDC WD2500JB-00GVC0" 194 C "Western Digital 250GB" +"WDC WD2500JD-(00G|32H)BB0" 194 C "Western Digital SATA Caviar 250GB Special Edition 8MB" +"WDC WD2500JD-40HBC0" 194 C "Western Digital WD2500JD-40HBC0" +"WDC WD2500PB-98FBA0" 194 C "Western Digital Caviar 250GB Special Edition 8MB" +"WDC WD2500PD-00FZB1" 194 C "Western Digital WD2500PD-00FZB1" +"WDC WD2500SD-01KCB0" 194 C "Western Digital Caviar RE 250GB 8MB" +"WDC WD3000JB-00KFA0" 194 C "Western Digital WD3000JB" +"WDC WD3200JB-00KFA0" 194 C "Western Digital Caviar 320GB 8MB" +"WDC WD4000KD-00NAB0" 194 C "Western Digital Caviar SE16 400GB 16MB" +"WDC WD4000YR-01PLB0" 194 C "Western Digital Caviar RE2 400GB 16MB" +"WD4000YS-01MPB0" 194 C "Western Digital RE2 7200 SATA II 400 GB" + +# not sure for next +# "WDC WD1200JB-00CRA1" 9 C "Western Digital 1200JB-00CRA1" +# "WDC WD273BA" 9 C "Western Digital WD273BA" + + + + +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## +######################################################################################################################## + +"ST3750640AS" 194 C "Seagate Barracuda 7200.10 SATA 750GB" +"ST3750840AS" 194 C "Seagate Barracuda 7200.10 SATA 750GB" +"ST3500630AS" 194 C "Seagate Barracuda 7200.10 SATA 500GB" +"ST3500830AS" 194 C "Seagate Barracuda 7200.10 SATA 500GB" +"ST3400620AS" 194 C "Seagate Barracuda 7200.10 SATA 400GB" +"ST3400620A" 194 C "Seagate Barracuda 7200.10 400GB" +"ST3400820AS" 194 C "Seagate Barracuda 7200.10 SATA 400GB" +"ST3320620AS" 194 C "Seagate Barracuda 7200.10 SATA 320GB" +"ST3320820AS" 194 C "Seagate Barracuda 7200.10 SATA 320GB" +"ST3300620AS" 194 C "Seagate Barracuda 7200.10 SATA 300GB" +"ST3300820AS" 194 C "Seagate Barracuda 7200.10 SATA 300GB" +"ST3250620AS" 194 C "Seagate Barracuda 7200.10 SATA 250GB" +"ST3250820AS" 194 C "Seagate Barracuda 7200.10 SATA 250GB" +"ST3250410AS" 194 C "Seagate Barracuda 7200.10 SATA 250GB" +"ST3250310AS" 194 C "Seagate Barracuda 7200.10 SATA 250GB" +"ST3200820AS" 194 C "Seagate Barracuda 7200.10 SATA 200GB" +"ST3160815AS" 194 C "Seagate Barracuda 7200.10 SATA 160GB" +"ST3160215AS" 194 C "Seagate Barracuda 7200.10 SATA 160GB" +"ST3120815AS" 194 C "Seagate Barracuda 7200.10 SATA 120GB" +"ST3120215AS" 194 C "Seagate Barracuda 7200.10 SATA 120GB" +"ST380815AS" 194 C "Seagate Barracuda 7200.10 SATA 80GB" +"ST380215AS" 194 C "Seagate Barracuda 7200.10 SATA 80GB" +"ST340815AS" 194 C "Seagate Barracuda 7200.10 SATA 40GB" +"ST340215AS" 194 C "Seagate Barracuda 7200.10 SATA 40GB" +"ST3300622AS" 194 C "Seagate Barracuda 7200.9 SATA2.5 300GB" +"ST3300831A" 194 C "Seagate Barracuda 7200.8 PATA 300GB" + +"Maxtor 7(L|V)250(F|R|S)0" 194 C "Maxtor MaXLine III 250GB 7200rpm" +"Maxtor 7(L|V)300(F|R|S)0" 194 C "Maxtor MaXLine III 300GB 7200rpm" +"MAXTOR STM3320620AS" 194 C "" + +"WDC WD1500ADFD-00NLR1" 194 C "Western Digital Raptor 150GB" +"WDC WD1600JS-00NCB1" 194 C "Western Digital Caviar 1600JS 160GB Sata" +"WDC WD1600SD-01KCC0" 194 C "Western Digital Caviar RE Serial ATA series" +"WDC WD2500JD-57HBC0" 194 C "Western Digital Caviar SE (Serial ATA) 250 GB" +"WDC WD2500JS" 194 C "Western Digital WD2500JS" +"WDC WD2500JS-41MVB1" 194 C "Western Digital SATAII Caviar 250GB Special Edition 8MB" +"WDC WD2500JD-00HBB0" 194 C "Western Digital SATA 250GB" +"WDC WD2500KS-00MJB0" 194 C "Western Digital SATA-II Caviar 250GB Special Edition 16MB" +"WDC WD3000JS-00PDB0" 194 C "Western Digital WD3000JS" +"WDC WD3200KS-00PFB0" 194 C "" +"WDC WD3200JD-22KLB0" 194 C "Western Digital Caviar SE 320GB 8MB" diff --git a/app/admin/syslog-ng/logrotate.d/syslog-ng b/app/admin/syslog-ng/logrotate.d/syslog-ng new file mode 100644 index 00000000..b6a7e1d8 --- /dev/null +++ b/app/admin/syslog-ng/logrotate.d/syslog-ng @@ -0,0 +1,6 @@ +/var/log/cron /var/log/debug /var/log/maillog /var/log/messages /var/log/secure /var/log/spooler /var/log/syslog { + sharedscripts + postrotate + /bin/kill -HUP `cat /var/run/syslog-ng.pid`2>/dev/null || true + endscript +} diff --git a/app/admin/syslog-ng/rc.syslog-ng.new b/app/admin/syslog-ng/rc.syslog-ng.new new file mode 100644 index 00000000..513154f7 --- /dev/null +++ b/app/admin/syslog-ng/rc.syslog-ng.new @@ -0,0 +1,37 @@ +#!/bin/sh +# Start/stop/restart the system logging daemons. +# +# Written for Slackware Linux by Patrick J. Volkerding <volkerdi@slackware.com>. +# Modyfied for syslog-ng by Kanedaaa <kaneda@bohater.net> + +syslogng_start() { + if [ -x /usr/sbin/syslog-ng ]; then + echo -n "Starting syslog-ng daemon: " + echo " /usr/sbin/syslog-ng" + /usr/sbin/syslog-ng + fi +} + +syslogng_stop() { + killall syslog-ng 2> /dev/null +} + +syslogng_restart() { + syslogng_stop + sleep 1 + syslogng_start +} + +case "$1" in +'start') + syslogng_start + ;; +'stop') + syslogng_stop + ;; +'restart') + syslogng_restart + ;; +*) + echo "usage $0 start|stop|restart" +esac diff --git a/app/admin/syslog-ng/slack-required b/app/admin/syslog-ng/slack-required new file mode 100644 index 00000000..6ee81c3a --- /dev/null +++ b/app/admin/syslog-ng/slack-required @@ -0,0 +1,4 @@ +# Dependency list to syslog-ng +# +# dependency [condition] [version]] +eventlog diff --git a/app/admin/syslog-ng/syslog-ng-anon-2.0.6.diff b/app/admin/syslog-ng/syslog-ng-anon-2.0.6.diff new file mode 100644 index 00000000..5b0a2309 --- /dev/null +++ b/app/admin/syslog-ng/syslog-ng-anon-2.0.6.diff @@ -0,0 +1,277 @@ +diff -Naur syslog-ng-2.0.5.orig/doc/Makefile.am syslog-ng-2.0.5/doc/Makefile.am +--- syslog-ng-2.0.5.orig/doc/Makefile.am 2007-04-19 21:37:16.000000000 +0200 ++++ syslog-ng-2.0.5/doc/Makefile.am 2007-11-03 00:28:59.000000000 +0100 +@@ -6,6 +6,7 @@ + reference/syslog-ng.xml \ + reference/syslog-ng.txt \ + reference/syslog-ng.xsl \ ++ reference/README.syslog-ng-anon \ + examples/syslog-ng.conf.sample \ + examples/syslog-ng.conf.solaris + +diff -Naur syslog-ng-2.0.5.orig/doc/Makefile.in syslog-ng-2.0.5/doc/Makefile.in +--- syslog-ng-2.0.5.orig/doc/Makefile.in 2007-07-22 15:40:04.000000000 +0200 ++++ syslog-ng-2.0.5/doc/Makefile.in 2007-11-03 00:28:59.000000000 +0100 +@@ -135,6 +135,7 @@ + reference/syslog-ng.xml \ + reference/syslog-ng.txt \ + reference/syslog-ng.xsl \ ++ reference/README/syslog-ng-anon \ + examples/syslog-ng.conf.sample \ + examples/syslog-ng.conf.solaris + +diff -Naur syslog-ng-2.0.5.orig/doc/reference/README.syslog-ng-anon syslog-ng-2.0.5/doc/reference/README.syslog-ng-anon +--- syslog-ng-2.0.5.orig/doc/reference/README.syslog-ng-anon 1970-01-01 01:00:00.000000000 +0100 ++++ syslog-ng-2.0.5/doc/reference/README.syslog-ng-anon 2007-11-03 00:42:04.000000000 +0100 +@@ -0,0 +1,88 @@ ++syslog-ng-anon ++ ++ This patch adds the capability to syslog-ng that allows you to strip ++ out any given regexp or all IP addresses from log messages before ++ they are written to disk. The goal is to give the system administrator ++ the means to implement site logging policies, by allowing them easy ++ control over exactly what data they retain in their logfiles, ++ regardless of what a particular daemon might think is best. ++ ++Background: ++ ++ Data retention has become a hot legal topic for ISPs and other Online ++ Service Providers (OSPs). There are many instances where it is preferable ++ to keep less information on users than is collected by default on many ++ systems. In the United States it is not currently required to retain ++ data on users of a server, but you may be required to provide all data ++ on a user which you have retained. OSPs can protect themselves from legal ++ hassles and added work by choosing what data they wish to retain. ++ ++ From "Best Practices for Online Service Providers" ++ (http://www.eff.org/osp): ++ ++ As an intermediary, the OSP [Online Service Provider] finds itself in ++ a position to collect and store detailed information about its users ++ and their online activities that may be of great interest to third ++ parties. The USA PATRIOT Act also provides the government with ++ expanded powers to request this information. As a result, OSP owners ++ must deal with requests from law enforcement and lawyers to hand over ++ private user information and logs. Yet, compliance with these demands ++ takes away from an OSP's goal of providing users with reliable, ++ secure network services. In this paper, EFF offers some suggestions, ++ both legal and technical, for best practices that balance the needs ++ of OSPs and their users' privacy and civil liberties. ++ ++ Rather than scrubbing the information you don't want in logs, this patch ++ ensures that the information is never written to disk. Also, for those ++ daemons which log through syslog facilities, this patch provides a ++ convenient single configuration to limit what you wish to log. ++ ++ Here are some related links: ++ ++ Best Practices for Online Service Providers ++ http://www.eff.org/osp ++ http://www.eff.org/osp/20040819_OSPBestPractices.pdf ++ ++ EPIC International Data Retention Page ++ http://www.epic.org/privacy/intl/data_retention.html ++ ++ Working Paper on Usage Log Data Management (from Computer, Freedom, and ++ Privacy conference) http://cryptome.org/usage-logs.htm ++ ++ ++Installing syslog-ng-anon ++ ++ Applying the patch ++ ++ This patch has been tested against the following versions of syslog-ng: ++ . Debian package syslog-ng_2.0.5-2 ++ ++ To use this patch, obtain the source for syslog-ng ++ (apt-get source syslog-ng) and the ++ syslog-ng-anon patch (http://dev.riseup.net/patches/syslog-ng/). ++ Apply the patch the patch: ++ ++ % cd syslog-ng-2.0.5 ++ % patch -p1 < ../syslog-ng-anon.diff ++ ++ Then compile and install syslog-ng: ++ ++ % dpkg-buildpackage -rfakeroot -b ++ % dpkg -i ../syslog-ng_2.0.5-2_i386.deb ++ ++ How to use it ++ ++ This patch adds the filter "strip". For example: ++ ++ filter f_strip {strip(<regexp>);}; ++ ++ This will strip out all matches of the regular expression on logs to ++ which the filter is applied and replaces all matches with the fixed length ++ four dashes ("----"). ++ ++ In place of a regular expression, you can put "ips", which will replace all ++ internet addresses with 0.0.0.0. For example: ++ ++ filter f_strip {strip(ips);}; ++ ++ You can alter what the replacement strings are by using replace: +diff -Naur syslog-ng-2.0.5.orig/src/cfg-grammar.y syslog-ng-2.0.5/src/cfg-grammar.y +--- syslog-ng-2.0.5.orig/src/cfg-grammar.y 2007-05-21 19:21:07.000000000 +0200 ++++ syslog-ng-2.0.5/src/cfg-grammar.y 2007-11-03 00:28:59.000000000 +0100 +@@ -107,7 +107,7 @@ + %token KW_USE_TIME_RECVD + + /* filter items*/ +-%token KW_FACILITY KW_LEVEL KW_HOST KW_MATCH KW_NETMASK ++%token KW_FACILITY KW_LEVEL KW_HOST KW_MATCH KW_NETMASK KW_STRIP KW_REPLACE + + /* yes/no switches */ + %token KW_YES KW_NO +@@ -802,6 +802,8 @@ + | KW_PROGRAM '(' string ')' { $$ = filter_prog_new($3); free($3); } + | KW_HOST '(' string ')' { $$ = filter_host_new($3); free($3); } + | KW_MATCH '(' string ')' { $$ = filter_match_new($3); free($3); } ++ | KW_STRIP '(' string ')' { $$ = filter_strip_new($3); free($3); } ++ | KW_REPLACE '(' string string ')' { $$ = filter_replace_new($3, $4); free($3); free($4); } + | KW_FILTER '(' string ')' { $$ = filter_call_new($3, configuration); free($3); } + | KW_NETMASK '(' string ')' { $$ = filter_netmask_new($3); free($3); } + ; +@@ -907,4 +909,4 @@ + last_reader_options = NULL; + last_writer_options = NULL; + last_template = NULL; +-} +\ No newline at end of file ++} +diff -Naur syslog-ng-2.0.5.orig/src/cfg-lex.l syslog-ng-2.0.5/src/cfg-lex.l +--- syslog-ng-2.0.5.orig/src/cfg-lex.l 2007-05-21 19:21:07.000000000 +0200 ++++ syslog-ng-2.0.5/src/cfg-lex.l 2007-11-03 00:28:59.000000000 +0100 +@@ -165,6 +165,8 @@ + { "host", KW_HOST }, + { "match", KW_MATCH }, + { "netmask", KW_NETMASK }, ++ { "strip", KW_STRIP }, ++ { "replace", KW_REPLACE }, + + /* on/off switches */ + { "yes", KW_YES }, +diff -Naur syslog-ng-2.0.5.orig/src/filter.c syslog-ng-2.0.5/src/filter.c +--- syslog-ng-2.0.5.orig/src/filter.c 2007-05-21 19:21:07.000000000 +0200 ++++ syslog-ng-2.0.5/src/filter.c 2007-11-03 00:30:22.000000000 +0100 +@@ -226,6 +226,7 @@ + typedef struct _FilterRE + { + FilterExprNode super; ++ GString *replace; + regex_t regex; + } FilterRE; + +@@ -310,6 +311,9 @@ + filter_re_free(FilterExprNode *s) + { + FilterRE *self = (FilterRE *) s; ++ ++ if (self->replace != NULL) ++ g_string_free(self->replace, TRUE); + + regfree(&self->regex); + g_free(s); +@@ -494,3 +498,89 @@ + self->super.eval = filter_netmask_eval; + return &self->super; + } ++ ++FilterExprNode * ++filter_strip_new(const gchar *re) ++{ ++ if (g_ascii_strcasecmp(re, "ips") == 0) ++ return filter_replace_new(re, "0.0.0.0"); ++ return filter_replace_new(re, "----"); ++} ++ ++#define FMIN(a, b) (a) < (b) ? (a) : (b) ++#define NEW_MSG_SIZE 2048 ++ ++static gboolean ++filter_replace_eval(FilterExprNode *s, LogMessage *log) ++{ ++ FilterRE *self = (FilterRE *) s; ++ gchar *buffer = log->msg.str; ++ gint snippet_size; ++ regmatch_t pmatch; ++ gchar new_msg[NEW_MSG_SIZE]; ++ gchar *new_msg_max = new_msg + NEW_MSG_SIZE; ++ gchar *new_msg_ptr = new_msg; ++ gint replace_length = self->replace->len; ++ gint error; ++ ++ error = regexec(&self->regex, buffer, 1, &pmatch, 0); ++ if (error) ++ return TRUE; ++ while (!error) ++ { ++ /* copy string snippet which preceeds matched text */ ++ snippet_size = FMIN(pmatch.rm_so, new_msg_max - new_msg_ptr); ++ memcpy(new_msg_ptr, buffer, snippet_size); ++ new_msg_ptr += snippet_size; ++ ++ /* copy replacement */ ++ snippet_size = FMIN(replace_length, new_msg_max - new_msg_ptr); ++ memcpy(new_msg_ptr, self->replace->str, snippet_size); ++ new_msg_ptr += snippet_size; ++ ++ /* search for next match */ ++ buffer += pmatch.rm_eo; ++ error = regexec(&self->regex, buffer, 1, &pmatch, REG_NOTBOL); ++ } ++ ++ /* copy the rest of the old message */ ++ snippet_size = log->msg.len - (buffer - log->msg.str) + 1; ++ snippet_size = FMIN(snippet_size, new_msg_max - new_msg_ptr); ++ memcpy(new_msg_ptr, buffer, snippet_size); ++ new_msg[NEW_MSG_SIZE-1] = '\0'; ++ ++ g_string_erase(&(log->msg), 0, -1); ++ g_string_append(&(log->msg), new_msg); ++ ++ return TRUE; ++} ++ ++FilterExprNode * ++filter_replace_new(const gchar *re, const gchar *replacement) ++{ ++ FilterRE *self = g_new0(FilterRE, 1); ++ gint regerr; ++ ++ if (!g_ascii_strcasecmp(re, "ips")) ++ re = "(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])([\\.\\-](25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])){3}"; ++ ++ regerr = regcomp(&self->regex, re, REG_ICASE | REG_EXTENDED); ++ if (regerr) ++ { ++ gchar errorbuf[256]; ++ regerror(regerr, &self->regex, errorbuf, sizeof(errorbuf)); ++ msg_error("Error compiling regular expression:", ++ evt_tag_str("re", re), ++ evt_tag_str("error", errorbuf), ++ NULL); ++ g_free(self); ++ return NULL; ++ } ++ ++ self->replace = g_string_new(replacement); ++ self->super.eval = filter_replace_eval; ++ self->super.free_fn = filter_re_free; ++ ++ return &self->super; ++} ++ +diff -Naur syslog-ng-2.0.5.orig/src/filter.h syslog-ng-2.0.5/src/filter.h +--- syslog-ng-2.0.5.orig/src/filter.h 2007-05-21 19:21:07.000000000 +0200 ++++ syslog-ng-2.0.5/src/filter.h 2007-11-03 00:28:59.000000000 +0100 +@@ -54,6 +54,8 @@ + FilterExprNode *filter_match_new(gchar *re); + FilterExprNode *filter_call_new(gchar *rule, struct _GlobalConfig *cfg); + FilterExprNode *filter_netmask_new(gchar *cidr); ++FilterExprNode *filter_strip_new(const gchar *re); ++FilterExprNode *filter_replace_new(const gchar *re, const gchar *replacement); + + typedef struct _LogFilterRule + { diff --git a/app/admin/syslog-ng/syslog-ng.SlackBuild b/app/admin/syslog-ng/syslog-ng.SlackBuild new file mode 100755 index 00000000..5c2fa073 --- /dev/null +++ b/app/admin/syslog-ng/syslog-ng.SlackBuild @@ -0,0 +1,241 @@ +#!/bin/bash +# +# syslog-ng.SlackBuild 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 any later version. +# +# syslog-ng.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for syslog-ng, by Silvio Rhatto +# requires: eventlog +# tested: syslog-ng-2.0.6 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="syslog-ng" +PKG_NAME="syslog-ng" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.0.6} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --enable-dynamic-linking"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.balabit.com/downloads/files/syslog-ng/sources/stable/src/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches="syslog-ng-anon-2.0.6.diff + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Copy init scripts +mkdir -p $PKG/etc/rc.d +cp $CWD/rc.* $PKG/etc/rc.d/ + +# Copy config files +mkdir -p $PKG/etc +for conf in syslog-ng.conf.new logrotate.d/syslog-ng; do + mkdir -p $PKG/etc/`dirname $conf` + if [ -e "$CWD/conf/$conf" ]; then + cp -a $CWD/conf/$conf $PKG/etc/$conf + elif [ -e "$CWD/$conf" ]; then + cp -a $CWD/$conf $PKG/etc/$conf + elif [ -e "$conf" ]; then + cp -a $conf $PKG/etc/$conf + fi +done + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README VERSION" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------| +syslog-ng: syslog-ng +syslog-ng: +syslog-ng: syslog-ng is a syslogd replacement supporting IPv6 and capable of +syslog-ng: transferring log messages reliably using TCP and filtering the +syslog-ng: content of messages using regular expressions. It has several +syslog-ng: macros that allow users to dynamically create target directories +syslog-ng: and files or reformat messages. +syslog-ng: +syslog-ng: +syslog-ng: +syslog-ng: +EODESC + +# Add a post-installation script (doinst.sh) +cat << EOSCRIPT > "$PKG/install/doinst.sh" +config() { + NEW="\$1" + OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)" + # If there's no config file by that name, mv it over: + if [ ! -r \$OLD ]; then + mv \$NEW \$OLD + elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then + # toss the redundant copy + rm \$NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +mkgroup() { + GROUP="\$1" + if ! grep -qe "^\$GROUP:" etc/group; then + echo Creating group \$GROUP... + chroot . /usr/sbin/groupadd \$GROUP + fi +} + +mkuser() { + USER="\$1" + if [ ! -z "\$2" ]; then + GROUP="\$2" + else + GROUP="\$USER" + fi + if ! grep -qe "^\$USER:" etc/passwd; then + echo Creating user \$USER... + chroot . /usr/sbin/useradd \$USER -g \$GROUP + fi +} + +config etc/rc.d/rc.syslog-ng.new ; config etc/syslog-ng.conf.new +EOSCRIPT + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/app/admin/syslog-ng/syslog-ng.conf.new b/app/admin/syslog-ng/syslog-ng.conf.new new file mode 100644 index 00000000..706a35a6 --- /dev/null +++ b/app/admin/syslog-ng/syslog-ng.conf.new @@ -0,0 +1,270 @@ +# +# Configuration file for syslog-ng under Debian. +# First customized for riseup.net and then to sarava.org. +# +# see http://www.campin.net/syslog-ng/expanded-syslog-ng.conf +# for examples. +# +# levels: emerg alert crit err warning notice info debug +# + +############################################################ +## global options + +options { + chain_hostnames(0); + time_reopen(10); + time_reap(360); + sync(0); + log_fifo_size(2048); + create_dirs(yes); + owner(root); + group(wheel); + perm(0640); + dir_perm(0755); + use_dns(no); +}; + +############################################################ +## universal source + +source s_all { + internal(); + unix-stream("/dev/log"); + file("/proc/kmsg" log_prefix("kernel: ")); +}; + +############################################################ +## generic destinations + +destination df_facility_dot_info { file("/var/log/$FACILITY.info"); }; +destination df_facility_dot_notice { file("/var/log/$FACILITY.notice"); }; +destination df_facility_dot_warn { file("/var/log/$FACILITY.warn"); }; +destination df_facility_dot_err { file("/var/log/$FACILITY.err"); }; +destination df_facility_dot_crit { file("/var/log/$FACILITY.crit"); }; + +############################################################ +## generic filters + +filter f_strip { strip(ips); }; +filter f_at_least_info { level(info..emerg); }; +filter f_at_least_notice { level(notice..emerg); }; +filter f_at_least_warn { level(warn..emerg); }; +filter f_at_least_err { level(err..emerg); }; +filter f_at_least_crit { level(crit..emerg); }; + +############################################################ +## secure + +filter f_auth { facility(auth, authpriv); }; +destination df_auth { file("/var/log/secure"); }; +log { + source(s_all); + filter(f_auth); + # comment the following line if you don't want to strip IPs + filter(f_strip); + destination(df_auth); +}; + +############################################################ +## daemon log +# +#filter f_daemon { facility(daemon); }; +#destination df_daemon { file("/var/log/daemon.log"); }; +#log { +# source(s_all); +# filter(f_daemon); +# destination(df_daemon); +#}; + +############################################################ +## kern log +# +#filter f_kern { facility(kern); }; +#destination df_kern { file("/var/log/kernel"); }; +#log { +# source(s_all); +# filter(f_kern); +# destination(df_kern); +#}; + +############################################################ +## user log + +#filter f_user { facility(user); }; +#destination df_user { file("/var/log/user.log"); }; +#log { +# source(s_all); +# filter(f_user); +# destination(df_user); +#}; + +############################################################ +## sympa log + +filter f_sympa { program("^(sympa|bounced|archived|task_manager)"); }; +destination d_sympa { file("/var/log/sympa"); }; +log { + source(s_all); + filter(f_sympa); + destination(d_sympa); + flags(final); +}; + +############################################################ +## wwsympa log + +filter f_wwsympa { program("^wwsympa"); }; +destination d_wwsympa { file("/var/log/sympa"); }; +log { + source(s_all); + filter(f_wwsympa); + # comment the following line if you don't want to strip IPs + filter(f_strip); + destination(d_wwsympa); + flags(final); +}; + +############################################################ +## ldap log +# +#filter f_ldap { program("slapd"); }; +#destination d_ldap { file("/var/log/ldap"); }; +#log { +# source(s_all); +# filter(f_ldap); +# destination(d_ldap); +# flags(final); +#}; + +############################################################ +## mail log + +filter f_postfix { + program("^postfix/") or + program("courier|imap|pop|dovecot") or + program("^maildrop") or + facility(mail); +}; +destination d_postfix { file("/var/log/maillog"); }; +log { + source(s_all); + filter(f_postfix); + # comment the following line if you don't want to strip IPs + filter(f_strip); + destination(d_postfix); + flags(final); +}; + +############################################################ +## messages log + +filter f_messages { + facility(auth,authpriv,daemon,mail,user,kern,cron,news) or + level(info); +}; +destination df_messages { file("/var/log/messages"); }; +log { + source(s_all); + filter(f_messages); + # comment the following line if you don't want to strip IPs + filter(f_strip); + destination(df_messages); +}; + +############################################################ +## system log + +filter f_system { + facility(auth,authpriv,daemon,mail,user,kern,cron,news) or + level(warn,err,crit,alert,emerg); +}; +destination df_system { file("/var/log/syslog"); }; +log { + source(s_all); + filter(f_system); + # comment the following line if you don't want to strip IPs + filter(f_strip); + destination(df_system); +}; + +############################################################ +## cron log + +filter f_cron { facility(cron); }; +destination df_cron { file("/var/log/cron"); }; +log { + source(s_all); + filter(f_cron); + destination(df_cron); +}; + +############################################################ +## spooler log + +filter f_spooler { facility(uucp) and (facility(news) and level(crit)); }; +destination df_spooler { file("/var/log/spooler"); }; +log { + source(s_all); + filter(f_spooler); + # comment the following line if you don't want to strip IPs + filter(f_strip); + destination(df_spooler); +}; + +############################################################ +## debug log + +filter f_debug { level(debug); }; +destination df_debug { file("/var/log/debug"); }; +log { + source(s_all); + filter(f_debug); + # comment the following line if you don't want to strip IPs + filter(f_strip); + destination(df_debug); +}; + +############################################################ +## errors log +# +#filter f_errors { +# level(warn,err,crit,alert,emerg) +# and not facility(auth,authpriv,daemon,mail,user,kern); +#}; +#destination df_errors { file("/var/log/errors"); }; +#log { +# source(s_all); +# filter(f_errors); +# destination(df_errors); +#}; + +############################################################ +## emergencies + +filter f_emerg { level(emerg); }; +destination du_all { usertty("*"); }; +log { + source(s_all); + filter(f_emerg); + # comment the following line if you don't want to strip IPs + filter(f_strip); + destination(du_all); +}; + +############################################################ +## console messages + +#filter f_xconsole { +# facility(daemon,mail) +# or level(debug,info,notice,warn) +# or (facility(news) +# and level(crit,err,notice)); +#}; +#destination dp_xconsole { pipe("/dev/xconsole"); }; +#log { +# source(s_all); +# filter(f_xconsole); +# destination(dp_xconsole); +#}; + diff --git a/app/arch/unrar-gpl/unrar-gpl.SlackBuild b/app/arch/unrar-gpl/unrar-gpl.SlackBuild new file mode 100644 index 00000000..d1d7feb6 --- /dev/null +++ b/app/arch/unrar-gpl/unrar-gpl.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# unrar-gpl.SlackBuild 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 any later version. +# +# unrar-gpl.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for unrar-gpl, by Alexandre Vieira de Souza +# requires: +# tested: unrar-gpl-0.0.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="unrar" +PKG_NAME="unrar-gpl" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.0.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://download.gna.org/unrar/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------| +unrar: unrar by Slack.Sarava +unrar: +unrar: Uncompress rar files. Free rar unpacker. +unrar: +unrar: +unrar: +unrar: +unrar: +unrar: +unrar: by avs +unrar: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/app/crypt/pgpdump/pgpdump.SlackBuild b/app/crypt/pgpdump/pgpdump.SlackBuild index 0c69dbf2..5da27a42 100755 --- a/app/crypt/pgpdump/pgpdump.SlackBuild +++ b/app/crypt/pgpdump/pgpdump.SlackBuild @@ -1,24 +1,22 @@ #!/bin/bash # # pgpdump.SlackBuild 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 any later version. +# 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 any later version. # -# pgpdump.SlackBuild 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. +# pgpdump.SlackBuild 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 program; if not, write to the Free -# Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, -# MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# SlackBuild for pgpdump -# http://www.mew.org/~kazu/proj/pgpdump/ -# -# Author: Luis ( luis at riseup d0t net ) +# slackbuild for pgpdump, by Alexandre Vieira de Souza +# requires: +# tested: pgpdump-0.26 # # Look for slackbuildrc @@ -35,17 +33,19 @@ PKG_NAME="pgpdump" ARCH=${ARCH:=i486} SRC_VERSION=${VERSION:=0.26} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" -BUILD=${BUILD:=1ls} +BUILD=${BUILD:=1avs} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" -CONF_OPTIONS=${CONF_OPTIONS:=} -NUMJOBS=${NUMJOBS:=-j3} +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" -# Set system optmization flags based on $ARCH if [ "$ARCH" = "i386" ]; then SLKCFLAGS="-O2 -march=i386 -mcpu=i686" elif [ "$ARCH" = "i486" ]; then @@ -55,7 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -75,28 +77,30 @@ mkdir -p "$REPOS" || exit $ERROR_MKDIR mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary -SRC="$SRC_NAME-$SRC_VERSION.tar.gz" +SRC="$SRC_NAME-$VERSION.tar.gz" URL="http://www.mew.org/~kazu/proj/pgpdump/$SRC" -if [ ! -s "$SRC_DIR/$SRC" ] || ! gzip -t "$SRC_DIR/$SRC" 2> /dev/null; then +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC=`ls -l | awk '/^d/ { print $8 }'` +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure -CFLAGS="$SLKCFLAGS" ./configure $CONF_OPTIONS || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF # Compile make $NUMJOBS || exit $ERROR_MAKE # Install -mkdir -p "$PKG/$PREFIX/bin" "$PKG/$PREFIX/man/man1" || exit $ERROR_MKDIR -make install prefix="$PKG/$PREFIX" || exit $ERROR_INSTALL +make install DESTDIR="$PKG" || exit $ERROR_INSTALL # Strip binaries ( cd "$PKG" @@ -106,38 +110,27 @@ make install prefix="$PKG/$PREFIX" || exit $ERROR_INSTALL xargs strip --strip-unneeded 2> /dev/null ) -# Compress and link manpages -if [ -d "$PKG/$PREFIX/man" ]; then - ( cd "$PKG/$PREFIX/man" - for manpagedir in $(find . -type d -name "man*") ; do - ( cd $manpagedir - for eachpage in $( find . -type l -maxdepth 1) ; do - ln -s $( readlink $eachpage ).gz $eachpage.gz - rm $eachpage - done - gzip -9 *.? - ) - done - ) -fi - # Install documentation -DOCS="CHANGES COPYRIGHT README" +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR -cp -a $DOCS "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" 2> /dev/null +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done # Add package description (slack-desc) mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-------------------------------------------------------| -pgpdump: pgpdump + |-----handy-ruler------------------------------------------------------| +pgpdump: pgpdump by Slack.Sarava pgpdump: pgpdump: pgpdump is a PGP packet visualizer which displays the packet format pgpdump: of OpenPGP (RFC 2440 + bis) and PGP version 2 (RFC 1991). @@ -146,7 +139,7 @@ pgpdump: For more information, http://www.mew.org/~kazu/proj/pgpdump/ pgpdump: pgpdump: pgpdump: -pgpdump: +pgpdump: by avs pgpdump: EODESC diff --git a/app/emulation/wine/wine.SlackBuild b/app/emulation/wine/wine.SlackBuild index 9471c066..e1cb2d7d 100755 --- a/app/emulation/wine/wine.SlackBuild +++ b/app/emulation/wine/wine.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for wine, by Rudson R. Alves # requires: -# tested: wine-0.9.59, 0.9.61 +# tested: wine-1.0 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="wine" PKG_NAME="wine" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.9.61} +SRC_VERSION=${VERSION:=1.1.0} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -41,7 +41,7 @@ REPOS=${REPOS:=$TMP} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --localstatedir=/var"} -NUMJOBS=${NUMJOBS:="-j4"} +NUMJOBS=${NUMJOBS:="-j3"} # Set system libraries' path and optmization flags based on $ARCH LIBDIR="$PREFIX/lib" @@ -55,9 +55,10 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" CONF_OPTIONS="$CONF_OPTIONS --enable-win64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -87,7 +88,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -112,7 +113,7 @@ make install DESTDIR="$PKG" || exit $ERROR_INSTALL ) # Install documentation -DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING readme.*" +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR for doc in $DOCS; do if [ -f "$doc" ]; then @@ -124,9 +125,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/app/office/broffice/broffice.SlackBuild b/app/office/broffice/broffice.SlackBuild index 9f73e7f4..01ba0b36 100755 --- a/app/office/broffice/broffice.SlackBuild +++ b/app/office/broffice/broffice.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for broffice, by Rudson R. Alves # requires: -# tested: broffice-2.4.0 +# tested: broffice-2.4.1 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="BrOo" PKG_NAME="broffice" ARCH=${ARCH:=i686} -SRC_VERSION=${VERSION:=2.4.0} +SRC_VERSION=${VERSION:=2.4.1} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -116,9 +116,9 @@ mv $PKG/install/doinst.sh.new $PKG/install/doinst.sh mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/app/text/enchant/enchant.SlackBuild b/app/text/enchant/enchant.SlackBuild new file mode 100644 index 00000000..dca7809b --- /dev/null +++ b/app/text/enchant/enchant.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# enchant.SlackBuild 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 any later version. +# +# enchant.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for enchant, by Rudson R. Alves +# requires: aspell +# tested: enchant-1.4.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="enchant" +PKG_NAME="enchant" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.4.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.abisource.com/downloads/enchant/1.4.2/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS BUGS COPYING.LIB ChangeLog HACKING MAINTAINERS NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +enchant: enchant by Slack.Sarava +enchant: +enchant: The project aims to provide an efficient extensible abstraction +enchant: for spell checking libaries. These include, but are not limited to: +enchant: +enchant: Aspell/Pspell; Ispell; Hspell; Uspell +enchant: +enchant: Enchant is also meant to be used in a cross-platform (XP) environment. +enchant: Part of this means that Enchant wants to limit its number of +enchant: external dependencies to 0, or as close is as humanly possible. +enchant: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/app/text/enchant/slack-required b/app/text/enchant/slack-required new file mode 100644 index 00000000..30c7651c --- /dev/null +++ b/app/text/enchant/slack-required @@ -0,0 +1,4 @@ +# Dependency list to enchant +# +# dependency [condition] [version]] +aspell diff --git a/app/text/gtkspell/gtkspell.SlackBuild b/app/text/gtkspell/gtkspell.SlackBuild new file mode 100644 index 00000000..e2249a32 --- /dev/null +++ b/app/text/gtkspell/gtkspell.SlackBuild @@ -0,0 +1,156 @@ +#!/bin/bash +# +# gtkspell.SlackBuild 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 any later version. +# +# gtkspell.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gtkspell, by Rudson R. Alves +# requires: enchant +# tested: gtkspell-2.0.13 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gtkspell" +PKG_NAME="gtkspell" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.0.13} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--disable-gtk-doc --program-prefix= --program-suffix= --build=$ARCH-slackware-linux"} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://gtkspell.sourceforge.net/download/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Fix aspell errors on compiling +sed -i 's/\-lgtkspell$/\-lgtkspell \-laspell/' $PKG/$LIBDIR/pkgconfig/gtkspell-2.0.pc + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +gtkspell: gtkspell by Slack.Sarava +gtkspell: +gtkspell: GtkSpell provides MSWord/MacOSX-style highlighting of misspelled +gtkspell: words in a GtkTextView widget. Right-clicking a misspelled word +gtkspell: pops up a menu of suggested replacements. +gtkspell: +gtkspell: +gtkspell: +gtkspell: +gtkspell: +gtkspell: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/app/text/gtkspell/slack-required b/app/text/gtkspell/slack-required new file mode 100644 index 00000000..becd778a --- /dev/null +++ b/app/text/gtkspell/slack-required @@ -0,0 +1,4 @@ +# Dependency list to gtkspell +# +# dependency [condition] [version]] +enchant diff --git a/app/text/rarian/rarian.SlackBuild b/app/text/rarian/rarian.SlackBuild index d50ef7b1..61532b55 100644 --- a/app/text/rarian/rarian.SlackBuild +++ b/app/text/rarian/rarian.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for rarian, by Rudson R. Alves # requires: -# tested: rarian-0.6.0 +# tested: rarian-0.8.0 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="rarian" PKG_NAME="rarian" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.6.0} +SRC_VERSION=${VERSION:=0.8.0} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -77,7 +78,7 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary SRC="$SRC_NAME-$VERSION.tar.bz2" -URL="http://ftp.acc.umu.se/pub/gnome/sources/rarian/0.6/$SRC" +URL="http://ftp.acc.umu.se/pub/gnome/sources/rarian/0.8/$SRC" if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/dev/cpp/cairomm/cairomm.SlackBuild b/dev/cpp/cairomm/cairomm.SlackBuild index 70a7664f..fffc56e0 100755 --- a/dev/cpp/cairomm/cairomm.SlackBuild +++ b/dev/cpp/cairomm/cairomm.SlackBuild @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="cairomm" PKG_NAME="cairomm" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=1.6.0} +SRC_VERSION=${VERSION:=1.4.8} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME diff --git a/dev/cpp/glademm/glademm.SlackBuild b/dev/cpp/glademm/glademm.SlackBuild new file mode 100755 index 00000000..6f38a633 --- /dev/null +++ b/dev/cpp/glademm/glademm.SlackBuild @@ -0,0 +1,152 @@ +#!/bin/bash +# +# glademm.SlackBuild 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 any later version. +# +# gtkmm.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple +# Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gtkmm, by Silvio Rhatto +# requires: gtkmm +# tested: glademm-2.6.6 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="libglademm" +PKG_NAME="glademm" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.6.6} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ftp.acc.umu.se/pub/GNOME/sources/libglademm/2.6/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS TODO COPYING ChangeLog NEWS README INSTALL" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------------| +glademm: glademm (The C++ interface to LibGlade) +glademm: +glademm: Glademm is the official C++ interface for LibGlade, using the Gtkmm +glademm: C++ interface of GTK. +glademm: +glademm: +glademm: +glademm: +glademm: +glademm: +glademm: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/cpp/glademm/slack-required b/dev/cpp/glademm/slack-required new file mode 100644 index 00000000..32021618 --- /dev/null +++ b/dev/cpp/glademm/slack-required @@ -0,0 +1,6 @@ +# Dependency list to gtkmm +# +# dependency [condition] [version]] +cairomm +glibmm +gtkmm diff --git a/dev/cpp/glibmm/glibmm.SlackBuild b/dev/cpp/glibmm/glibmm.SlackBuild index fc59ab5f..893547ca 100644 --- a/dev/cpp/glibmm/glibmm.SlackBuild +++ b/dev/cpp/glibmm/glibmm.SlackBuild @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="glibmm" PKG_NAME="glibmm" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.12.10} +SRC_VERSION=${VERSION:=2.14.2} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -77,14 +77,14 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary SRC="$SRC_NAME-$VERSION.tar.bz2" -URL="http://ftp.acc.umu.se/pub/GNOME/sources/glibmm/2.12/$SRC" +URL="http://ftp.acc.umu.se/pub/GNOME/sources/glibmm/2.14/$SRC" if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi MD5SUM_SRC="$(md5sum "$SRC_DIR/$SRC" | cut -d " " -f 1)" -MD5SUM_URL="85830693d669f0d86d6e64db3b57f581" +MD5SUM_URL=58b4fdc97738795a19b1f5ad37f186b4 [ "$MD5SUM_SRC" == "$MD5SUM_URL" ] || exit $ERROR_MD5 diff --git a/dev/cpp/gtkmm/gtkmm.SlackBuild b/dev/cpp/gtkmm/gtkmm.SlackBuild index d7472904..0e4cd5ab 100755 --- a/dev/cpp/gtkmm/gtkmm.SlackBuild +++ b/dev/cpp/gtkmm/gtkmm.SlackBuild @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="gtkmm" PKG_NAME="gtkmm" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.8.12} +SRC_VERSION=${VERSION:=2.12.7} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -77,7 +77,7 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary SRC="$SRC_NAME-$VERSION.tar.bz2" -URL="http://ftp.gnome.org/pub/GNOME/sources/gtkmm/2.8/$SRC" +URL="http://ftp.gnome.org/pub/GNOME/sources/gtkmm/2.12/$SRC" if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET diff --git a/dev/cpp/gtkmm/slack-required b/dev/cpp/gtkmm/slack-required index 8a259a14..5d33ddc9 100644 --- a/dev/cpp/gtkmm/slack-required +++ b/dev/cpp/gtkmm/slack-required @@ -1,4 +1,5 @@ # Dependency list to gtkmm # # dependency [condition] [version]] -cairomm glibmm +cairomm +glibmm diff --git a/dev/db/sqlite/sqlite.SlackBuild b/dev/db/sqlite/sqlite.SlackBuild index dc5c008f..85ac829f 100755 --- a/dev/db/sqlite/sqlite.SlackBuild +++ b/dev/db/sqlite/sqlite.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for sqlite, by Rudson R. Alves # requires: -# tested: sqlite-3.5.8 +# tested: sqlite-3.5.9 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="sqlite" PKG_NAME="sqlite" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=3.5.8} +SRC_VERSION=${VERSION:=3.5.9} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -57,6 +57,7 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/dev/lang/yasm/yasm.SlackBuild b/dev/lang/yasm/yasm.SlackBuild index ed8066d1..e92ab6c5 100755 --- a/dev/lang/yasm/yasm.SlackBuild +++ b/dev/lang/yasm/yasm.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for yasm, by Silvio Rhatto # requires: -# tested: yasm-0.7.0 +# tested: yasm-0.7.1 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="yasm" PKG_NAME="yasm" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.7.0} +SRC_VERSION=${VERSION:=0.7.1} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -57,6 +57,7 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/dev/libs/boost/boost.SlackBuild b/dev/libs/boost/boost.SlackBuild index 8d6adb5e..c1ac5164 100755 --- a/dev/libs/boost/boost.SlackBuild +++ b/dev/libs/boost/boost.SlackBuild @@ -1,74 +1,263 @@ #!/bin/bash # -# boost.SlackBuild 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 any later version. +# boost.SlackBuild 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 any later version. # -# boost.SlackBuild 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. +# boost.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for boost -# by rafael at riseup.net +# slackbuild for boost, by Silvio Rhatto +# requires: +# tested: boost-1.35.0 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building boost are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap - else - echo Sleeping 3 seconds... - sleep 3 - fi +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc fi -CWD="`pwd`" +# Set variables +CWD="$(pwd)" +SRC_NAME="boost" +PKG_NAME="boost" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.35.0} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--with-libraries=all"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" -if [ -f "/etc/slackbuildrc" ]; then - source /etc/slackbuildrc +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -if [ -f "~/.slackbuildrc" ]; then - source ~/.slackbuildrc +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME"_"1_35_0.tar.bz2" +URL="http://downloads.sourceforge.net/boost/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -# default settings -PACKAGE="boost" -ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.35.0} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} -TMP=${TMP:=/tmp} -REPOS=${REPOS:=$TMP} +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure + +# That's the old way we did +#CFLAGS="$SLKCFLAGS" \ +# CXXFLAGS="$SLKCFLAGS" \ +# ./configure \ +# --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF +# +# Add DESTDIR support into Makefile +#sed -i -e 's/\$(PREFIX)/\$(DESTDIR)\/\$(PREFIX)/' \ +# -e 's/\$(EPREFIX)/\$(DESTDIR)\/\$(EPREFIX)/' \ +# -e 's/\$(LIBDIR)/\$(DESTDIR)\/\$(LIBDIR)/' \ +# -e 's/\$(INCLUDEDIR)/\$(DESTDIR)\/\$(INCLUDEDIR)/' Makefile + +# New way, using stuff from http://slackbuilds.org/repository/12.1/development/boost/, +# wich has the following copyright note: + +# Copyright 2007-2008 Eric Hameleers <alien@slackware.com> +# Copyright 2007-2008 Heinz Wiesinger <HMWiesinger@gmx.at> +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED ''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 AUTHOR 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. + +# bjam-build system mostly taken from SlackBuild by Eric Hameleers -rm -rf $TMP/$PACKAGE -mkdir -p $SRC_DIR/$PACKAGE $TMP/$PACKAGE +# Script modified by Robby Workman <rworkman@slackbuilds.org> +# -- no additional license terms and no copyright -export PACKAGE VERSION ARCH BUILD SRC_DIR TMP REPOS +# Small changes from Rhatto <rhatto at riseup.net> -if which simpletrack &> /dev/null; then - simpletrack $PACKAGE.build +if [ "$ICU" = "YES" ]; then + do_icu="-sICU_PATH=/usr" else - slacktrack -b $REPOS -x $TMP,$SRC_DIR,/dev -jefkzp "$PACKAGE-$VERSION-$ARCH-$BUILD.tgz" "./$PACKAGE.build" + do_icu="" fi -# doinst fix -if [ -f "$CWD/$PACKAGE-$VERSION-doinst.diff" ]; then - rm -rf $TMP/package-$PACKAGE - mkdir $TMP/package-$PACKAGE - cd $TMP/package-$PACKAGE - explodepkg $TMP/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz - patch -p0 < $CWD/$PACKAGE-$VERSION-doinst.diff - makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz -fi +# This is the python we build against: +PYTHON_VERSION=$(python -c 'import sys; print sys.version[:3]') +PYTHON_FLAGS="-sPYTHON_ROOT=/usr -sPYTHON_VERSION=$PYTHON_VERSION" + +# First build bjam, the boost build system: +cd tools/jam/src + CFLAGS="$SLKCFLAGS -fno-strict-aliasing" CC=gcc ./build.sh cc || exit $ERROR_CONF +cd - + +BJAM=$(find tools/jam/src/ -name bjam -a -type f) + +# Patch Jamroot to include our custom build rule +patch -p1 -i $CWD/boost_custom_jam_rule.diff || exit $ERROR_PATCH + +# Build procedure also thanks to slackbuilds.org and with the same copyright +# note from the configure section above + +# Create build subdirectory +mkdir obj + +# Next, we build boost using bjam + $BJAM \ + release \ + "-sNO_COMPRESSION=0" \ + "-sZLIB_INCLUDE=/usr/include" \ + "-sZLIB_LIBPATH=$LIBDIR" \ + "-sBZIP2_INCLUDE=/usr/include" \ + "-sBZIP2_LIBPATH=$LIBDIR" \ + "-sEXPAT_INCLUDE=/usr/include" \ + "-sEXPAT_LIBPATH=$LIBDIR" \ + --toolset=gcc \ + --layout=system \ + --builddir=obj \ + --prefix=/usr \ + --build-type=custom \ + $PYTHON_FLAGS \ + $do_icu \ + ${NUMJOBS} || exit ERROR_MAKE + +# Install + +# That's the old way we did +#make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# New way, thanks to slackbuilds.org and with the same copyright +# note from the configure section above +# And then install boost.. +mkdir -p $PKG/usr/{lib,include} + +$BJAM \ + release \ + "-sEXPAT_INCLUDE=/usr/include" \ + "-sEXPAT_LIBPATH=$LIBDIR" \ + --toolset=gcc \ + --layout=system \ + --builddir=obj \ + --prefix=$PKG/usr \ + --build-type=custom \ + $PYTHON_FLAGS \ + $do_icu \ + install || exit $ERROR_INSTALL + +# This is old stuff also +# Version with underline +#VERSION_UNDERLINE="`echo $SRC_VERSION | sed -e 's/\./_/g'`" +# +# Underline version without minor version if minor version is 0 (workaround) +#VERSION_UNDERLINE="`echo $VERSION_UNDERLINE | sed -e 's/\([0-9]\+\)_\([0-9]\+\)_0/\1_\2/'`" +#cd /usr/include && ln -s boost-$VERSION_UNDERLINE/ boost + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="LICENSE_1_0.tx" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------------| +boost: boost +boost: +boost: Boost provides free peer-reviewed portable C++ source libraries. +boost: +boost: We emphasize libraries that work well with the C++ Standard Library. +boost: Boost libraries are intended to be widely useful, and usable across +boost: a broad spectrum of applications. +boost: +boost: +boost: http://www.boost.org/ +boost: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP/$PACKAGE + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/dev/libs/boost/boost_custom_jam_rule.diff b/dev/libs/boost/boost_custom_jam_rule.diff new file mode 100644 index 00000000..49cd5195 --- /dev/null +++ b/dev/libs/boost/boost_custom_jam_rule.diff @@ -0,0 +1,25 @@ +--- Jamroot 2008-03-25 21:47:24.000000000 +0100 ++++ boost_1_35_0/Jamroot 2008-04-02 18:13:48.000000000 +0200 +@@ -127,7 +127,7 @@ + # which builds only the "release <threading>multi <link>shared" variant. + local build-type = [ MATCH "^--build-type=(.*)" : [ modules.peek : ARGV ] ] ; + build-type ?= minimal ; +-if ! ( $(build-type) in minimal complete ) ++if ! ( $(build-type) in minimal complete custom ) + { + build-type = minimal ; + } +@@ -145,6 +145,13 @@ + <link>shared <link>static + <runtime-link>shared <runtime-link>static + ; ++local default-build,custom = ++ release ++ <optimization>speed <inlining>full ++ <threading>single <threading>multi ++ <link>shared ++ <runtime-link>shared ++ ; + + # Set the default build. + local default-build = $(default-build,$(build-type)) ; diff --git a/dev/libs/check/check.SlackBuild b/dev/libs/check/check.SlackBuild new file mode 100755 index 00000000..f7cb267b --- /dev/null +++ b/dev/libs/check/check.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# check.SlackBuild 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 any later version. +# +# check.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for check, by Rafael Diniz +# requires: +# tested: check-0.9.5 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="check" +PKG_NAME="check" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.9.5} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://ufpr.dl.sourceforge.net/sourceforge/check/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog FAQ INSTALL NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------------| +check: check by Slack.Sarava +check: +check: Check is a unit testing framework for C. It features a simple +check: interface for defining unit tests, putting little in the way +check: of the developer. Tests are run in a separate address space, +check: so Check can catch both assertion failures and code errors +check: that cause segmentation faults or other signals. The output +check: from unit tests can be used within source code editors and IDEs. +check: +check: +check: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/libs/directfb-extra/DirectFB-extra.SlackBuild b/dev/libs/directfb-extra/DirectFB-extra.SlackBuild new file mode 100644 index 00000000..10549c2b --- /dev/null +++ b/dev/libs/directfb-extra/DirectFB-extra.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# DirectFB-extra.SlackBuild 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 any later version. +# +# DirectFB-extra.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for DirectFB-extra, by Rafael Diniz +# requires: swfdec +# tested: DirectFB-extra-1.0.0 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="DirectFB-extra" +PKG_NAME="DirectFB-extra" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.0.0} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=" --disable-ffmpeg --enable-flash "} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.directfb.org/downloads/Extras/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------| +DirectFB-extra: DirectFB-extra (software for DirectFB) +DirectFB-extra: +DirectFB-extra: DirectFB-extra provides images and video providers +DirectFB-extra: and also other examples for DirectFB. +DirectFB-extra: +DirectFB-extra: +DirectFB-extra: +DirectFB-extra: +DirectFB-extra: +DirectFB-extra: http://www.directfb.org/ +DirectFB-extra: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/libs/directfb-extra/slack-required b/dev/libs/directfb-extra/slack-required new file mode 100644 index 00000000..30a0994f --- /dev/null +++ b/dev/libs/directfb-extra/slack-required @@ -0,0 +1,5 @@ +# Dependency list to DirectFB-extra +# +# dependency [condition] [version]] +DirectFB +swfdec diff --git a/dev/libs/directfb/DirectFB.SlackBuild b/dev/libs/directfb/DirectFB.SlackBuild new file mode 100755 index 00000000..c906d8a7 --- /dev/null +++ b/dev/libs/directfb/DirectFB.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# DirectFB.SlackBuild 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 any later version. +# +# DirectFB.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for DirectFB, by Rafael Diniz +# requires: +# tested: DirectFB-1.0.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="DirectFB" +PKG_NAME="DirectFB" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.0.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.directfb.org/downloads/Core/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +DirectFB: DirectFB by Slack.Sarava +DirectFB: +DirectFB: DirectFB is a thin library that provides hardware graphics +DirectFB: acceleration, input device handling and abstraction, integrated +DirectFB: windowing system with support for translucent windows and multiple +DirectFB: display layers, not only on top of the Linux Framebuffer Device. +DirectFB: It is a complete hardware abstraction layer with software fallbacks +DirectFB: for every graphics operation that is not supported by the +DirectFB: underlying hardware. DirectFB adds graphical power to embedded +DirectFB: systems and sets a new standard for graphics under Linux. +DirectFB: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/libs/eet/eet.SlackBuild b/dev/libs/eet/eet.SlackBuild index 24ffcfc8..6507faec 100755 --- a/dev/libs/eet/eet.SlackBuild +++ b/dev/libs/eet/eet.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# eet.SlackBuild 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 any later version. +# eet.SlackBuild 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 any later version. # -# eet.SlackBuild 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. +# eet.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for eet -# by rhatto at riseup.net +# slackbuild for eet, by Silvio Rhatto +# requires: +# tested: eet-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building eet are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="eet" +# Set variables +CWD="$(pwd)" +SRC_NAME="eet" +PKG_NAME="eet" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/eet" ]; then - cd $SRC_DIR/e17/libs/eet - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/eet || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/eet +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/eet`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/eet $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler----------------------------------------------------------| eet: eet eet: eet: Eet is a tiny library designed to write an arbitary set of chunks of @@ -111,22 +148,13 @@ eet: eet: eet: eet: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/dev/libs/eventlog/eventlog.SlackBuild b/dev/libs/eventlog/eventlog.SlackBuild new file mode 100755 index 00000000..8830087d --- /dev/null +++ b/dev/libs/eventlog/eventlog.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# eventlog.SlackBuild 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 any later version. +# +# eventlog.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for eventlog, by Silvio Rhatto +# requires: +# tested: eventlog-0.2.7 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="eventlog" +PKG_NAME="eventlog" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.2.7} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.balabit.com/downloads/files/syslog-ng/sources/stable/src/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING CREDITS ChangeLog NEWS README VERSION" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +eventlog: eventlog +eventlog: +eventlog: The EventLog library aims to be a replacement of the simple syslog() +eventlog: API provided on UNIX systems. The major difference between EventLog +eventlog: and syslog is that EventLog tries to add structure to messages. +eventlog: +eventlog: +eventlog: +eventlog: +eventlog: +eventlog: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/libs/exml/exml.SlackBuild b/dev/libs/exml/exml.SlackBuild index 8af21b47..94d2f4df 100755 --- a/dev/libs/exml/exml.SlackBuild +++ b/dev/libs/exml/exml.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# exml.SlackBuild 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 any later version. +# exml.SlackBuild 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 any later version. # -# exml.SlackBuild 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. +# exml.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for exml -# by rhatto at riseup.net +# slackbuild for exml, by Silvio Rhatto +# requires: eet evas ecore embryo edje imlib2 epsilon +# tested: exml-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building exml are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="exml" +# Set variables +CWD="$(pwd)" +SRC_NAME="exml" +PKG_NAME="exml" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/exml" ]; then - cd $SRC_DIR/e17/libs/exml - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/exml || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/exml +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/exml`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/exml $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------------| exml: exml exml: exml: EXML is an abstracted, generalized interface to an xml parser/writer, @@ -111,22 +148,13 @@ exml: exml: exml: exml: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/dev/libs/exml/slack-required b/dev/libs/exml/slack-required index 2b3955f5..cec8a8b9 100644 --- a/dev/libs/exml/slack-required +++ b/dev/libs/exml/slack-required @@ -1,7 +1,10 @@ -eet -evas -ecore -embryo -edje -imlib2 -epsilon +# Dependency list to exml +# +# dependency [condition] [version]] +eet +evas +ecore +embryo +edje +imlib2 +epsilon diff --git a/dev/libs/libgweather/libgweather.SlackBuild b/dev/libs/libgweather/libgweather.SlackBuild new file mode 100644 index 00000000..2bc002a3 --- /dev/null +++ b/dev/libs/libgweather/libgweather.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# libgweather.SlackBuild 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 any later version. +# +# libgweather.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for libgweather, by Alexandre Vieira de Souza +# requires: gnome-vfs +# tested: libgweather-2.22.3 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="libgweather" +PKG_NAME="libgweather" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.22.3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ftp.gnome.org/pub/GNOME/sources/libgweather/2.22/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------| +libgweather: libgweather by Slack.Sarava +libgweather: +libgweather: The package contains the GNOME panel which the area on your desktop +libgweather: from which you can run applications and applets, and perform other +libgweather: tasks. +libgweather: +libgweather: +libgweather: +libgweather: +libgweather: by avs +libgweather: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/libs/libgweather/slack-required b/dev/libs/libgweather/slack-required new file mode 100644 index 00000000..9deaa05c --- /dev/null +++ b/dev/libs/libgweather/slack-required @@ -0,0 +1,4 @@ +# Dependency list to libgweather +# +# dependency [condition] [version]] +gnome-vfs >= 2.22.0 diff --git a/dev/libs/libtasn1/libtasn1.SlackBuild b/dev/libs/libtasn1/libtasn1.SlackBuild new file mode 100644 index 00000000..32da0584 --- /dev/null +++ b/dev/libs/libtasn1/libtasn1.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# libtasn1.SlackBuild 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 any later version. +# +# libtasn1.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for libtasn1, by Alexandre Vieira de Souza +# requires: +# tested: libtasn1-1.4 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="libtasn1" +PKG_NAME="libtasn1" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.4} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="ftp://ftp.gnutls.org/pub/gnutls/libtasn1/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +libtasn1: libtasn1 by Slack.Sarava +libtasn1: +libtasn1: This is the ASN.1 library used in GNUTLS +libtasn1: +libtasn1: +libtasn1: +libtasn1: +libtasn1: +libtasn1: +libtasn1: by avs +libtasn1: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/python/configobj/configobj.SlackBuild b/dev/python/configobj/configobj.SlackBuild new file mode 100755 index 00000000..405354ba --- /dev/null +++ b/dev/python/configobj/configobj.SlackBuild @@ -0,0 +1,144 @@ +#!/bin/bash +# +# configobj.SlackBuild 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 any later version. +# +# configobj.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for configobj, by Silvio Rhatto +# requires: +# tested: configobj-4.5.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="configobj" +PKG_NAME="configobj" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=4.5.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.zip" +URL="http://downloads.sourceforge.net/configobj/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! unzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +unzip "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Build and install package +python setup.py build install --root=$PKG + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="PKG-INFO docs/*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------| +configobj: configobj +configobj: +configobj: A python module for ultra simple handling of configuration files. +configobj: Also useful for human readable data persistence. +configobj: Flexible and simple. +configobj: +configobj: +configobj: +configobj: +configobj: +configobj: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/python/db3/db3.SlackBuild b/dev/python/db3/db3.SlackBuild new file mode 100644 index 00000000..f4e22c20 --- /dev/null +++ b/dev/python/db3/db3.SlackBuild @@ -0,0 +1,183 @@ +#!/bin/bash +# +# db3.SlackBuild 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 any later version. +# +# db3.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for db3, by Rudson R. Alves +# requires: +# tested: db3-3.3.11 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="db" +PKG_NAME="db3" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=3.3.11} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--enable-compat185 --disable-shared --enable-rpc"} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://download.oracle.com/berkeley-db/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np0 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np0 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np0 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np0 || exit $ERROR_PATCH + fi +done + +if echo http://slackware.cs.utah.edu/pub/slackware/slackware-12.1/pasture/source/db3/patch.3.3.11.1.gz | grep -q -v "PATCH URLS"; then + for patch_url in http://slackware.cs.utah.edu/pub/slackware/slackware-12.1/pasture/source/db3/patch.3.3.11.1.gz; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np0 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np0 || exit $ERROR_PATCH + else + patch -Np0 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi + +# Configure +cd dist +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------------| +db3: db3 (Berkeley database library version 3) +db3: +db3: The Berkeley Database (Berkeley DB) library provides embedded database +db3: support for both traditional and client/server applications. +db3: +db3: This package should be installed if compatibility is needed with +db3: databases created with the Berkeley DB version 3. +db3: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/python/epsilon/epsilon.SlackBuild b/dev/python/epsilon/epsilon.SlackBuild index b03be75d..2ff23a48 100755 --- a/dev/python/epsilon/epsilon.SlackBuild +++ b/dev/python/epsilon/epsilon.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# epsilon.SlackBuild 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 any later version. +# epsilon.SlackBuild 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 any later version. # -# epsilon.SlackBuild 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. +# epsilon.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for epsilon -# by rhatto at riseup.net +# slackbuild for epsilon, by Silvio Rhatto +# requires: eet evas ecore embryo edje imlib2 +# tested: epsilon-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building epsilon are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="epsilon" +# Set variables +CWD="$(pwd)" +SRC_NAME="epsilon" +PKG_NAME="epsilon" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/epsilon" ]; then - cd $SRC_DIR/e17/libs/epsilon - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/epsilon || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/epsilon +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/epsilon`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/epsilon $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------------| epsilon: epsilon epsilon: epsilon: Epsilon is a small, display independent, and quick thumbnailing @@ -111,22 +148,13 @@ epsilon: epsilon: epsilon: epsilon: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/dev/python/epsilon/slack-required b/dev/python/epsilon/slack-required index 7722b8eb..1d137eb6 100644 --- a/dev/python/epsilon/slack-required +++ b/dev/python/epsilon/slack-required @@ -1,6 +1,9 @@ -eet -evas -ecore -embryo -edje -imlib2 +# Dependency list to epsilon +# +# dependency [condition] [version]] +eet +evas +ecore +embryo +edje +imlib2 diff --git a/dev/python/genshi/Genshi.SlackBuild b/dev/python/genshi/Genshi.SlackBuild new file mode 100755 index 00000000..c6b8fbb2 --- /dev/null +++ b/dev/python/genshi/Genshi.SlackBuild @@ -0,0 +1,144 @@ +#!/bin/bash +# +# Genshi.SlackBuild 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 any later version. +# +# Genshi.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for Genshi, by Silvio Rhatto +# requires: setuptools +# tested: Genshi-0.5 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="Genshi" +PKG_NAME="Genshi" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.5} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ftp.edgewall.com/pub/genshi/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Build and install package +python setup.py build install --root=$PKG + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="COPYING ChangeLog README.txt UPGRADE.txt" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------------| +Genshi: Genshi +Genshi: +Genshi: Genshi is a Python library that provides an integrated set of +Genshi: components for parsing, generating, and processing HTML, XML +Genshi: or other textual content for output generation on the web. +Genshi: +Genshi: +Genshi: +Genshi: +Genshi: +Genshi: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/python/genshi/slack-required b/dev/python/genshi/slack-required new file mode 100644 index 00000000..3d6804cb --- /dev/null +++ b/dev/python/genshi/slack-required @@ -0,0 +1,4 @@ +# Dependency list to Genshi +# +# dependency [condition] [version]] +setuptools diff --git a/dev/python/mysql-python/MySQL-python.SlackBuild b/dev/python/mysql-python/MySQL-python.SlackBuild new file mode 100644 index 00000000..a844a867 --- /dev/null +++ b/dev/python/mysql-python/MySQL-python.SlackBuild @@ -0,0 +1,144 @@ +#!/bin/bash +# +# MySQL-python.SlackBuild 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 any later version. +# +# MySQL-python.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for MySQL-python, by Rudson R. Alves +# requires: python setuptools +# tested: MySQL-python-1.2.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="MySQL-python" +PKG_NAME="MySQL-python" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.2.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/MySQL-python/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Compile +python setup.py build install --root=$PKG || exit $ERROR_MAKE + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ChangeLog GPL HISTORY MANIFEST MANIFEST.in PKG-INFO README " +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------| +MySQL-python: MySQL-python by Slack.Sarava +MySQL-python: +MySQL-python: MySQLdb is an interface to the popular MySQL database server +MySQL-python: for Python. The design goals are: +MySQL-python: * Compliance with Python database API version 2.0 [PEP-0249] +MySQL-python: * Thread-safety +MySQL-python: * Thread-friendliness (threads will not block each other) +MySQL-python: +MySQL-python: MySQL-3.23 through 5.0 and Python-2.3 through 2.5 are currently +MySQL-python: supported. +MySQL-python: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/python/mysql-python/slack-required b/dev/python/mysql-python/slack-required new file mode 100644 index 00000000..1011a0c8 --- /dev/null +++ b/dev/python/mysql-python/slack-required @@ -0,0 +1,6 @@ +# Dependency list to MySQL-python +# +# dependency [condition] [version]] +python +Pyrex +setuptools diff --git a/dev/python/numpy/numpy.SlackBuild b/dev/python/numpy/numpy.SlackBuild index 8bbdcdeb..2ff9a012 100755 --- a/dev/python/numpy/numpy.SlackBuild +++ b/dev/python/numpy/numpy.SlackBuild @@ -10,12 +10,12 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild for numpy, by Silvio Rhatto -# requires: python +# slackbuild for numpy, by Rudson R. Alves +# requires: python lapack # tested: numpy-1.0.4 # @@ -33,7 +33,7 @@ PKG_NAME="numpy" ARCH=${ARCH:=i486} SRC_VERSION=${VERSION:=1.0.4} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" -BUILD=${BUILD:=1rha} +BUILD=${BUILD:=1srv} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} @@ -41,7 +41,7 @@ REPOS=${REPOS:=$TMP} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} -NUMJOBS=${NUMJOBS:=""} +NUMJOBS=${NUMJOBS:="-j4"} # Set system libraries' path and optmization flags based on $ARCH LIBDIR="$PREFIX/lib" @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -83,15 +84,17 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi - # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC=`ls -l | awk '/^d/ { print $8 }'` +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" -# Build and install package -python setup.py build install --root=$PKG +# Compile +python setup.py build || exit $ERROR_MAKE + +# Install +python setup.py install --prefix=$PKG/usr || exit $ERROR_INSTALL # Strip binaries ( cd "$PKG" @@ -114,22 +117,22 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. |-----handy-ruler--------------------------------------------------------| -numpy: NumPy: array processing for numbers, strings, records, and objects. +numpy: numpy by Slack.Sarava +numpy: +numpy: NumPy is a replacement of Numeric Python that adds the features +numpy: of numarray. +numpy: +numpy: +numpy: +numpy: numpy: -numpy: NumPy is a general-purpose array-processing package designed to efficiently -numpy: manipulate large multi-dimensional arrays of arbitrary records without -numpy: sacrificing too much speed for small multi-dimensional arrays. NumPy is -numpy: built on the Numeric code base and adds features introduced by numarray as -numpy: well as an extended C-API and the ability to create arrays of arbitrary -numpy: type which also makes NumPy suitable for interfacing with general-purpose -numpy: data-base applications. numpy: numpy: EODESC diff --git a/dev/python/numpy/slack-required b/dev/python/numpy/slack-required index b53d6a78..a8ce98af 100644 --- a/dev/python/numpy/slack-required +++ b/dev/python/numpy/slack-required @@ -2,3 +2,4 @@ # # dependency [condition] [version]] python +lapack diff --git a/dev/python/pygments/Pygments.SlackBuild b/dev/python/pygments/Pygments.SlackBuild new file mode 100755 index 00000000..290570a5 --- /dev/null +++ b/dev/python/pygments/Pygments.SlackBuild @@ -0,0 +1,144 @@ +#!/bin/bash +# +# Pygments.SlackBuild 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 any later version. +# +# Pygments.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for Pygments, by Silvio Rhatto +# requires: +# tested: Pygments-0.10 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="Pygments" +PKG_NAME="Pygments" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.10} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://pypi.python.org/packages/source/P/Pygments/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Build and install package +python setup.py build install --root=$PKG + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS CHANGES LICENSE TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +Pygments: Pygments +Pygments: +Pygments: Pygments is a syntax highlighting package written in Python. +Pygments: +Pygments: +Pygments: +Pygments: +Pygments: +Pygments: +Pygments: +Pygments: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/python/pyrex/Pyrex.SlackBuild b/dev/python/pyrex/Pyrex.SlackBuild index ade78172..f570f0d5 100755 --- a/dev/python/pyrex/Pyrex.SlackBuild +++ b/dev/python/pyrex/Pyrex.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild for Pyrex, by Silvio Rhatto -# requires: -# tested: Pyrex-0.9.6.4 +# slackbuild for Pyrex, by Rudson R. Alves +# requires: python +# tested: Pyrex-0.9.8.4 # # Look for slackbuildrc @@ -31,9 +31,9 @@ CWD="$(pwd)" SRC_NAME="Pyrex" PKG_NAME="Pyrex" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.9.6.4} +SRC_VERSION=${VERSION:=0.9.8.4} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" -BUILD=${BUILD:=1rha} +BUILD=${BUILD:=1srv} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} @@ -41,7 +41,7 @@ REPOS=${REPOS:=$TMP} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} -NUMJOBS=${NUMJOBS:=""} +NUMJOBS=${NUMJOBS:="-j4"} # Set system libraries' path and optmization flags based on $ARCH LIBDIR="$PREFIX/lib" @@ -57,6 +57,7 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -79,18 +80,19 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR SRC="$SRC_NAME-$VERSION.tar.gz" URL="http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/$SRC" -if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then +#if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then +if [ ! -s "$SRC_DIR/$SRC" ]; then # gunzip test faill wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" -# Build and install package -python setup.py build install --root=$PKG +# Install +python setup.py build install --root=$PKG || exit $ERROR_INSTALL # Strip binaries ( cd "$PKG" @@ -101,7 +103,7 @@ python setup.py build install --root=$PKG ) # Install documentation -DOCS="CHANGES.txt CHECKLIST.txt Doc/* README.txt ToDo.txt USAGE.txt" +DOCS="CHANGES.txt CHECKLIST.txt INSTALL.txt MANIFEST.in README.txt ToDo.txt USAGE.txt" mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR for doc in $DOCS; do if [ -f "$doc" ]; then @@ -113,24 +115,24 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. |-----handy-ruler--------------------------------------------------------| -Pyrex: Pyrex (Language for Writing Python Extension Modules) -Pyrex: -Pyrex: Pyrex lets you write code that mixes Python and C data types any -Pyrex: way you want, and compiles it into a C extension for Python. -Pyrex: -Pyrex: -Pyrex: -Pyrex: -Pyrex: -Pyrex: -Pyrex: +pyrex: Pyrex by Slack.Sarava +pyrex: +pyrex: Pyrex lets you write code that mixes Python and C data types any way +pyrex: you want, and compiles it into a C extension for Python. +pyrex: +pyrex: +pyrex: +pyrex: +pyrex: +pyrex: +pyrex: EODESC # Build the package diff --git a/dev/python/pyrex/slack-required b/dev/python/pyrex/slack-required new file mode 100644 index 00000000..86cd5f64 --- /dev/null +++ b/dev/python/pyrex/slack-required @@ -0,0 +1,4 @@ +# Dependency list to Pyrex +# +# dependency [condition] [version]] +python diff --git a/dev/python/pythondialog/pythondialog.SlackBuild b/dev/python/pythondialog/pythondialog.SlackBuild new file mode 100644 index 00000000..f70b1bf0 --- /dev/null +++ b/dev/python/pythondialog/pythondialog.SlackBuild @@ -0,0 +1,149 @@ +#!/bin/bash +# +# pythondialog.SlackBuild 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 any later version. +# +# pythondialog.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for pythondialog, by Rudson R. Alves +# requires: +# tested: pythondialog-2.7 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="pythondialog" +PKG_NAME="pythondialog" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.7} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/pythondialog/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Compile +python ./setup.py build || exit $ERROR_MAKE + +# Install +python ./setup.py install --record $PREFIX --root=$PKG +mv $PKG/usr/local/* $PKG/usr +rm -rf $PKG/usr/local + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS DEBUGGING MANIFEST.in README COPYING INSTALL PKG-INFO TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------| +pythondialog: pythondialog by Slack.Sarava +pythondialog: +pythondialog: This is a Python module for making simple Text/Console-mode +pythondialog: user interfaces on Unix/Linux systems. +pythondialog: +pythondialog: +pythondialog: +pythondialog: +pythondialog: +pythondialog: +pythondialog: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/python/setuptools/setuptools.SlackBuild b/dev/python/setuptools/setuptools.SlackBuild index c4861864..83631965 100755 --- a/dev/python/setuptools/setuptools.SlackBuild +++ b/dev/python/setuptools/setuptools.SlackBuild @@ -1,48 +1,144 @@ #!/bin/bash # -# setuptools.SlackBuild 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 any later version. +# setuptools.SlackBuild 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 any later version. # -# setuptools.SlackBuild 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. +# setuptools.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# SlackBuild script to call setuptools.build with correct settings +# slackbuild for setuptools, by Silvio Rhatto +# requires: +# tested: setuptools-0.6c8 # -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="setuptools" -VERSION=${VERSION:=0.6c6} +# Set variables +CWD="$(pwd)" +SRC_NAME="setuptools" +PKG_NAME="setuptools" ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.6c8} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi -rm -rf $TMP/$PACKAGE -mkdir -p $SRC_DIR/$PACKAGE $TMP/$PACKAGE $REPOS +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -export PACKAGE VERSION ARCH BUILD SRC_DIR TMP REPOS +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if which simpletrack &> /dev/null; then - simpletrack $PACKAGE.build -else - slacktrack -b $REPOS -x $TMP,$SRC_DIR,/dev -jefkzp "$PACKAGE-$VERSION-$ARCH-$BUILD.tgz" "./$PACKAGE.build" +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://pypi.python.org/packages/source/s/setuptools/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Build and install package +python setup.py build install --root=$PKG + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="PKG-INFO README.txt" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------------| +setuptools: setuptools +setuptools: +setuptools: setuptools is a collection of enhancements to the Python distutils. +setuptools: +setuptools: +setuptools: +setuptools: +setuptools: +setuptools: +setuptools: +setuptools: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP/$PACKAGE + rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/python/visual/slack-required b/dev/python/visual/slack-required new file mode 100644 index 00000000..4fa8a230 --- /dev/null +++ b/dev/python/visual/slack-required @@ -0,0 +1,22 @@ +# Dependency list to visual +# +# dependency [condition] [version]] +python +numpy +gtk +atk +atkmm +sigc++ +gtkmm +gdkmm +glib +glibmm +pango +pangomm +freetype2 +gtkglext +gtkglextmm +cairo +cairomm +libglade +libglademm diff --git a/dev/python/visual/visual.SlackBuild b/dev/python/visual/visual.SlackBuild new file mode 100644 index 00000000..8d38ade6 --- /dev/null +++ b/dev/python/visual/visual.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# visual.SlackBuild 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 any later version. +# +# visual.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for visual, by Rudson R. Alves +# requires: python numpy gtk atk atkmm sigc++ gtkmm gdkmm glib glibmm pango pangomm freetype2 gtkglext gtkglextmm cairo cairomm libglade libglademm +# tested: visual-4 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="visual" +PKG_NAME="visual" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=4} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.beta26.tar.bz2" +URL="http://downloads.sourceforge.net/visual/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="HACKING.txt INSTALL.txt NEWS.txt README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------------| +visual: visual by Slack.Sarava +visual: +visual: VPython is a package that includes: +visual: * the Python programming language +visual: * the IDLE interactive development environment +visual: * "Visual", a Python module that offers real-time 3D output, and is +visual: easily usable by novice programmers +visual: * "Numeric", a Python module for fast processing of arrays +visual: +visual: +visual: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/tcltk/tls/tls.SlackBuild b/dev/tcltk/tls/tls.SlackBuild new file mode 100644 index 00000000..f7d11673 --- /dev/null +++ b/dev/tcltk/tls/tls.SlackBuild @@ -0,0 +1,154 @@ +#!/bin/bash +# +# tls.SlackBuild 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 any later version. +# +# tls.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for tls, by Rudson R. Alves +# requires: +# tested: tls-1.6 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="tls" +PKG_NAME="tls" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.6} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=3srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=" --sysconfdir=/etc --localstatedir=/var --with-ssl-dir=/usr --enable-threads --enable-shared --program-prefix= --program-suffix= "} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" + CONF_OPTIONS="$CONF_OPTIONS --enable-64bit" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="${SRC_NAME}${VERSION}-src.tar.gz" +URL="http://downloads.sourceforge.net/tls/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------------| +tls: tls by Slack.Sarava +tls: +tls: TLS is an OpenSSL / RSA-bsafe Tcl extension that provides secure +tls: connections on top of the Tcl socket mechanism. Within a few lines of +tls: code, users can query https servers (see the tclhttpd project for an +tls: https server using TLS). +tls: +tls: +tls: +tls: +tls: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/util/eclipse/eclipse.SlackBuild b/dev/util/eclipse/eclipse.SlackBuild index 1c3da421..cc16d62e 100755 --- a/dev/util/eclipse/eclipse.SlackBuild +++ b/dev/util/eclipse/eclipse.SlackBuild @@ -33,7 +33,7 @@ CWD="$(pwd)" SRC_NAME="eclipse" PKG_NAME="eclipse" ARCH=${ARCH:=i386} -SRC_VERSION=${VERSION:=R-3.3.2-200802211800} +SRC_VERSION=${VERSION:=R-3.4-200806172000} PKG_VERSION="$(echo "$SRC_VERSION" | cut -d "-" -f 2)" BUILD=${BUILD:=1ls} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME diff --git a/dev/util/gazpacho/gazpacho.SlackBuild b/dev/util/gazpacho/gazpacho.SlackBuild new file mode 100644 index 00000000..06548446 --- /dev/null +++ b/dev/util/gazpacho/gazpacho.SlackBuild @@ -0,0 +1,145 @@ +#!/bin/bash +# +# gazpacho.SlackBuild 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 any later version. +# +# gazpacho.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gazpacho, by Rudson R. Alves +# requires: python gtk+ pygtk kiwi +# tested: gazpacho-0.7.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gazpacho" +PKG_NAME="gazpacho" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.7.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://ftp.gnome.org/pub/GNOME/sources/gazpacho/0.7/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Install +sed -i 's/lib/lib64/g' bin/gazpacho +python setup.py install --prefix=/usr --root=$PKG || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS CONTRIBUTORS COPYING ChangeLog INSTALL MANIFEST.in NEWS PKG-INFO README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +gazpacho: gazpacho by Slack.Sarava +gazpacho: +gazpacho: Gazpacho is a fresh new GUI builder for the GTK+ toolkit designed to +gazpacho: be ultra easy to use +gazpacho: +gazpacho: It is strongly inspired by the Glade project but it is written from +gazpacho: scratch using the Python language. As a result there are few lines +gazpacho: of code to read, understand and to maintain! +gazpacho: +gazpacho: +gazpacho: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/dev/util/gazpacho/slack-required b/dev/util/gazpacho/slack-required new file mode 100644 index 00000000..00f38a65 --- /dev/null +++ b/dev/util/gazpacho/slack-required @@ -0,0 +1,7 @@ +# Dependency list to gazpacho +# +# dependency [condition] [version]] +python +gtk+ +pygtk +kiwi diff --git a/dev/util/glade/glade.SlackBuild b/dev/util/glade/glade.SlackBuild index c2356b95..f598dc9f 100644 --- a/dev/util/glade/glade.SlackBuild +++ b/dev/util/glade/glade.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for glade, by Rudson R. Alves -# requires: scrollkeeper gtk+2 libxml2 -# tested: glade-2.12.2 +# requires: gtk+2 libxml2 +# tested: glade-3.1.5 # # Look for slackbuildrc @@ -28,10 +28,10 @@ fi # Set variables CWD="$(pwd)" -SRC_NAME="glade" +SRC_NAME="glade3" PKG_NAME="glade" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.12.2} +SRC_VERSION=${VERSION:=3.4.5} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -77,7 +78,7 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary SRC="$SRC_NAME-$VERSION.tar.bz2" -URL="http://ftp.acc.umu.se/pub/gnome/sources/glade/${VERSION:0:4}/$SRC" +URL="http://ftp.gnome.org/pub/GNOME/sources/glade3/3.4/$SRC" if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/dev/util/glade/slack-required b/dev/util/glade/slack-required index e0d8bb46..2c9cbddc 100644 --- a/dev/util/glade/slack-required +++ b/dev/util/glade/slack-required @@ -1,6 +1,5 @@ -# Dependency list to glade +# Dependency list to glade3 # # dependency [condition] [version]] -scrollkeeper -gtk+2 -libxml2 +gtk+2 >= 2.10.0 +libxml2 >= 2.4.1 diff --git a/dev/util/scons/scons.SlackBuild b/dev/util/scons/scons.SlackBuild index 18e3a2ce..5adbaa6f 100755 --- a/dev/util/scons/scons.SlackBuild +++ b/dev/util/scons/scons.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for scons, by Silvio Rhatto # requires: -# tested: scons-0.98.2 +# tested: scons-0.98.5 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="scons" PKG_NAME="scons" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.98.2} +SRC_VERSION=${VERSION:=0.98.5} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -57,6 +57,7 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Build and install package @@ -113,9 +114,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/gnome/base/eel/eel.SlackBuild b/gnome/base/eel/eel.SlackBuild new file mode 100644 index 00000000..fe512edc --- /dev/null +++ b/gnome/base/eel/eel.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# eel.SlackBuild 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 any later version. +# +# eel.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for eel, by Alexandre Vieira de Souza +# requires: gnome-desktop +# tested: eel-2.22.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="eel" +PKG_NAME="eel" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.22.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ftp.gnome.org/pub/gnome/sources/eel/2.22/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------------| +eel: eel by Slack.Sarava +eel: +eel: The Eazel Extensions Library is a collection of widgets and +eel: extensions to many modules of the GNOME platform that were +eel: developed by hackers working on Nautilus. +eel: +eel: +eel: +eel: +eel: by avs +eel: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/gnome/base/eel/slack-required b/gnome/base/eel/slack-required new file mode 100644 index 00000000..efd0ae1c --- /dev/null +++ b/gnome/base/eel/slack-required @@ -0,0 +1,4 @@ +# Dependency list to eel +# +# dependency [condition] [version]] +gnome-desktop >= 2.22.0 diff --git a/gnome/base/gnome-keyring/gnome-keyring.SlackBuild b/gnome/base/gnome-keyring/gnome-keyring.SlackBuild new file mode 100644 index 00000000..3a0e7fcd --- /dev/null +++ b/gnome/base/gnome-keyring/gnome-keyring.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gnome-keyring.SlackBuild 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 any later version. +# +# gnome-keyring.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gnome-keyring, by Alexandre Vieira de Souza +# requires: libtasn1 +# tested: gnome-keyring-2.22.3 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gnome-keyring" +PKG_NAME="gnome-keyring" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.22.3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ftp.gnome.org/pub/GNOME/sources/gnome-keyring/2.22/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------| +gnome-keyring: gnome-keyring by Slack.Sarava +gnome-keyring: +gnome-keyring: gnome-keyring keeps session passwords and other secrets, and provides +gnome-keyring: a library for applications to integrate with the gnome keyring system. +gnome-keyring: +gnome-keyring: +gnome-keyring: +gnome-keyring: +gnome-keyring: +gnome-keyring: by avs +gnome-keyring: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/gnome/base/gnome-keyring/slack-required b/gnome/base/gnome-keyring/slack-required new file mode 100644 index 00000000..e723dd21 --- /dev/null +++ b/gnome/base/gnome-keyring/slack-required @@ -0,0 +1,5 @@ +# Dependency list to gnome-keyring +# +# dependency [condition] [version]] +GConf >= 2.20.1 +libtasn1 >= 1.4 diff --git a/gnome/base/gnome-menus/gnome-menus.SlackBuild b/gnome/base/gnome-menus/gnome-menus.SlackBuild new file mode 100644 index 00000000..c6f13f88 --- /dev/null +++ b/gnome/base/gnome-menus/gnome-menus.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gnome-menus.SlackBuild 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 any later version. +# +# gnome-menus.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gnome-menus, by Alexandre Vieira de Souza +# requires: glib2 +# tested: gnome-menus-2.22.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gnome-menus" +PKG_NAME="gnome-menus" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.22.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ftp.gnome.org/pub/GNOME/sources/gnome-menus/2.22/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------| +gnome-menus: gnome-menus by Slack.Sarava +gnome-menus: +gnome-menus: This package provides an implementation of the Desktop Menu Specification +gnome-menus: for the GNOME Desktop. +gnome-menus: +gnome-menus: +gnome-menus: +gnome-menus: +gnome-menus: +gnome-menus: by avs +gnome-menus: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/gnome/base/gnome-menus/slack-required b/gnome/base/gnome-menus/slack-required new file mode 100644 index 00000000..0ab9b0eb --- /dev/null +++ b/gnome/base/gnome-menus/slack-required @@ -0,0 +1,4 @@ +# Dependency list to gnome-menus +# +# dependency [condition] [version]] +glib2 >= 2.16.3 diff --git a/gnome/base/libbonobo/libbonobo.SlackBuild b/gnome/base/libbonobo/libbonobo.SlackBuild index 9afae59d..c5984626 100644 --- a/gnome/base/libbonobo/libbonobo.SlackBuild +++ b/gnome/base/libbonobo/libbonobo.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for libbonobo, by Rudson R. Alves # requires: -# tested: libbonobo-2.20.1 +# tested: libbonobo-2.22.0 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="libbonobo" PKG_NAME="libbonobo" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.20.1} +SRC_VERSION=${VERSION:=2.22.0} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -77,7 +78,7 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary SRC="$SRC_NAME-$VERSION.tar.bz2" -URL="http://ftp.acc.umu.se/pub/gnome/sources/libbonobo/2.20/$SRC" +URL="http://ftp.acc.umu.se/pub/gnome/sources/libbonobo/2.22/$SRC" if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/gnome/base/orbit/ORBit2.SlackBuild b/gnome/base/orbit/ORBit2.SlackBuild index 216a41e2..20ff0a12 100644 --- a/gnome/base/orbit/ORBit2.SlackBuild +++ b/gnome/base/orbit/ORBit2.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for ORBit2, by Rudson R. Alves # requires: -# tested: ORBit2-2.14.10 +# tested: ORBit2-2.14.13 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="ORBit2" PKG_NAME="ORBit2" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.14.10} +SRC_VERSION=${VERSION:=2.14.13} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -57,6 +57,7 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -77,7 +78,7 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary SRC="$SRC_NAME-$VERSION.tar.bz2" -URL="http://ftp.acc.umu.se/pub/gnome/sources/ORBit2/2.14/$SRC" +URL="http://ftp.gnome.org/pub/GNOME/sources/ORBit2/2.14/$SRC" if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/mail/client/sylpheed/slack-required b/mail/client/sylpheed/slack-required index f7b1c6cc..aa19d012 100644 --- a/mail/client/sylpheed/slack-required +++ b/mail/client/sylpheed/slack-required @@ -15,7 +15,6 @@ glib2 >= 2.12.12 glibc-solibs >= 2.5 gpgme >= 1.1.4 gtk+2 >= 2.10.13 -gtkspell >= 2.0.11 libX11 >= 1.1.1 libXau >= 1.0.3 libXcursor >= 1.1.8 @@ -32,5 +31,6 @@ libxcb >= 1.0 openldap-client >= 2.3.32 openssl >= 0.9.8 openssl-solibs >= 0.9.8 -pango >= 1.16.4 zlib >= 1.2.3 +bogofilter +gtkspell diff --git a/mail/client/sylpheed/sylpheed.SlackBuild b/mail/client/sylpheed/sylpheed.SlackBuild index d2638b8a..49a5a7fd 100755 --- a/mail/client/sylpheed/sylpheed.SlackBuild +++ b/mail/client/sylpheed/sylpheed.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for sylpheed, by Alexandre Vieira de Souza -# requires: aspell atk cairo cxxlibs gcc-g++ cyrus-sasl expat fontconfig freetype gcc glib2 glibc-solibs gpgme gtk+2 gtkspell libX11 libXau libXcursor libXdmcp libXext libXfixes libXi libXinerama libXrandr libXrender libgpg-error libpng libxcb openldap-client openssl openssl-solibs pango zlib -# tested: sylpheed-2.4.8 +# requires: aspell atk cairo cxxlibs gcc-g++ cyrus-sasl expat fontconfig freetype gcc glib2 glibc-solibs gpgme gtk+2 libX11 libXau libXcursor libXdmcp libXext libXfixes libXi libXinerama libXrandr libXrender libgpg-error libpng libxcb openldap-client openssl openssl-solibs zlib bogofilter gtkspell +# tested: sylpheed-2.5.0 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="sylpheed" PKG_NAME="sylpheed" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.4.8} +SRC_VERSION=${VERSION:=2.5.0} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1avs} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -77,7 +78,7 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary SRC="$SRC_NAME-$VERSION.tar.bz2" -URL="http://sylpheed.sraoss.jp/sylpheed/v2.4/$SRC" +URL="http://sylpheed.sraoss.jp/sylpheed/v2.5/$SRC" if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/mail/mta/msmtp/msmtp.SlackBuild b/mail/mta/msmtp/msmtp.SlackBuild index b6ce5942..426eba7a 100755 --- a/mail/mta/msmtp/msmtp.SlackBuild +++ b/mail/mta/msmtp/msmtp.SlackBuild @@ -1,108 +1,135 @@ #!/bin/bash # -# msmtp.SlackBuild 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 any later version. +# msmtp.SlackBuild 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 any later version. # -# msmtp.SlackBuild 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. +# msmtp.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for msmtp -# by rhatto at riseup.net +# slackbuild for msmtp, by Silvio Rhatto +# requires: +# tested: msmtp-1.4.15 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building msmtp are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="msmtp" +# Set variables +CWD="$(pwd)" +SRC_NAME="msmtp" +PKG_NAME="msmtp" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.4.7} +SRC_VERSION=${VERSION:=1.4.15} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="bz2" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/msmtp/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR - -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/msmtp/$SRC" -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README THANKS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------------| msmtp: msmtp (small smtp client) msmtp: msmtp: msmtp is an SMTP client that can be used with Mutt and other mail @@ -114,18 +141,13 @@ msmtp: msmtp: msmtp: msmtp: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README THANKS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/gfx/exiv2/exiv2.SlackBuild b/media/gfx/exiv2/exiv2.SlackBuild index 639ea92c..1f14f3d3 100755 --- a/media/gfx/exiv2/exiv2.SlackBuild +++ b/media/gfx/exiv2/exiv2.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for exiv2, by Rudson R. Alves # requires: -# tested: exiv2-0.15 +# tested: exiv2-0.17.1 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="exiv2" PKG_NAME="exiv2" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.15} +SRC_VERSION=${VERSION:=0.17.1} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -83,15 +84,10 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -MD5SUM_SRC="$(md5sum "$SRC_DIR/$SRC" | cut -d " " -f 1)" -MD5SUM_URL="bb18d19e1d6fb255dadda456cadec00e" - -[ "$MD5SUM_SRC" == "$MD5SUM_URL" ] || exit $ERROR_MD5 - # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -127,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/media/gfx/gphoto2/gphoto2.SlackBuild b/media/gfx/gphoto2/gphoto2.SlackBuild index 763095c4..568de181 100755 --- a/media/gfx/gphoto2/gphoto2.SlackBuild +++ b/media/gfx/gphoto2/gphoto2.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for gphoto2, by Rudson R. Alves # requires: libgphoto2 -# tested: gphoto2-2.4.0 +# tested: gphoto2-2.4.2 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="gphoto2" PKG_NAME="gphoto2" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.4.0} +SRC_VERSION=${VERSION:=2.4.2} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/media/gfx/gqview/gqview.SlackBuild b/media/gfx/gqview/gqview.SlackBuild index 67dc568f..6c751b39 100755 --- a/media/gfx/gqview/gqview.SlackBuild +++ b/media/gfx/gqview/gqview.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# gqview.SlackBuild 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 any later version. +# gqview.SlackBuild 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 any later version. # -# gqview.SlackBuild 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. +# gqview.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for gqview -# by rhatto at riseup.net +# slackbuild for gqview, by Silvio Rhatto +# requires: +# tested: gqview-2.0.4 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building gqview are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="gqview" +# Set variables +CWD="$(pwd)" +SRC_NAME="gqview" +PKG_NAME="gqview" ARCH=${ARCH:=i486} -VERSION=${VERSION:=2.0.3} +SRC_VERSION=${VERSION:=2.0.4} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/$PACKAGE/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/gqview/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| gqview: gqview (image browser and viewer) gqview: gqview: GQview is an image browser that features single click access to view @@ -114,20 +173,13 @@ gqview: gqview: gqview: gqview: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/gfx/gtkam/gtkam.SlackBuild b/media/gfx/gtkam/gtkam.SlackBuild index 89840d7f..0f7e5c59 100755 --- a/media/gfx/gtkam/gtkam.SlackBuild +++ b/media/gfx/gtkam/gtkam.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# gtkam.SlackBuild 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 any later version. +# gtkam.SlackBuild 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 any later version. # -# gtkam.SlackBuild 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. +# gtkam.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for gtkam -# by rhatto at riseup.net +# slackbuild for gtkam, by Silvio Rhatto +# requires: libgphoto2 libexif-gtk +# tested: gtkam-0.1.15 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building gtkam are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="gtkam" +# Set variables +CWD="$(pwd)" +SRC_NAME="gtkam" +PKG_NAME="gtkam" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.1.14} +SRC_VERSION=${VERSION:=0.1.15} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/gphoto/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/gphoto/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------------| gtkam: gtkam (a GTK frontend for gphoto) gtkam: gtkam: gtkam is a GNOME front-end for gphoto, which allows you to retrieve @@ -114,20 +173,13 @@ gtkam: gtkam: gtkam: gtkam: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/gfx/gtkam/slack-required b/media/gfx/gtkam/slack-required index 424736d8..32579b18 100644 --- a/media/gfx/gtkam/slack-required +++ b/media/gfx/gtkam/slack-required @@ -1,2 +1,5 @@ -libgphoto2 -libexif-gtk +# Dependency list to gtkam +# +# dependency [condition] [version]] +libgphoto2 +libexif-gtk diff --git a/media/gfx/gwenview/gwenview.SlackBuild b/media/gfx/gwenview/gwenview.SlackBuild new file mode 100644 index 00000000..53888a70 --- /dev/null +++ b/media/gfx/gwenview/gwenview.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gwenview.SlackBuild 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 any later version. +# +# gwenview.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gwenview, by Rudson R. Alves +# requires: +# tested: gwenview-1.4.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gwenview" +PKG_NAME="gwenview" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.4.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://prdownloads.sourceforge.net/gwenview/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING COPYING-DOCS INSTALL NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +gwenview: gwenview by Slack.Sarava +gwenview: +gwenview: Gwenview is an image viewer for KDE. It can load and save all image +gwenview: formats supported by KDE, but Gwenview can also browse GIMP files +gwenview: (*.xcf) thanks to the included QXCFI component developed by Lignum +gwenview: Computing. +gwenview: +gwenview: +gwenview: +gwenview: +gwenview: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/aubio/aubio.SlackBuild b/media/libs/aubio/aubio.SlackBuild new file mode 100755 index 00000000..8c7107d8 --- /dev/null +++ b/media/libs/aubio/aubio.SlackBuild @@ -0,0 +1,185 @@ +#!/bin/bash +# +# aubio.SlackBuild 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 any later version. +# +# aubio.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for aubio, by Silvio Rhatto +# requires: fftw jack swig libsamplerate +# tested: aubio-0.3.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="aubio" +PKG_NAME="aubio" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.3.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://aubio.org/pub/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------------| +aubio: aubio (library for audio labelling) +aubio: +aubio: aubio is a library for audio labelling. Its features include +aubio: segmenting a sound file before each of its attacks, performing pitch +aubio: detection, tapping the beat and producing midi streams from live audio. +aubio: The name aubio comes from 'audio' with a typo: several transcription +aubio: errors are likely to be found in the results too. +aubio: +aubio: +aubio: +aubio: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/aubio/slack-required b/media/libs/aubio/slack-required new file mode 100644 index 00000000..098e794b --- /dev/null +++ b/media/libs/aubio/slack-required @@ -0,0 +1,7 @@ +# Dependency list to aubio +# +# dependency [condition] [version]] +fftw +jack +swig +libsamplerate diff --git a/media/libs/edje/edje.SlackBuild b/media/libs/edje/edje.SlackBuild index 139f6623..47a8bc70 100755 --- a/media/libs/edje/edje.SlackBuild +++ b/media/libs/edje/edje.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# edje.SlackBuild 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 any later version. +# edje.SlackBuild 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 any later version. # -# edje.SlackBuild 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. +# edje.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for edje -# by rhatto at riseup.net +# slackbuild for edje, by Silvio Rhatto +# requires: eet evas ecore efreet embryo +# tested: edje-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building edje are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="edje" +# Set variables +CWD="$(pwd)" +SRC_NAME="edje" +PKG_NAME="edje" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/edje" ]; then - cd $SRC_DIR/e17/libs/edje - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/edje || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/edje +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/edje`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/edje $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------------| edje: edje edje: edje: A graphical layout and animation library for animated resizable, @@ -111,22 +148,13 @@ edje: edje: edje: edje: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/edje/slack-required b/media/libs/edje/slack-required index 4680dcfc..562a7203 100644 --- a/media/libs/edje/slack-required +++ b/media/libs/edje/slack-required @@ -1,5 +1,8 @@ -eet -evas -ecore -efreet -embryo +# Dependency list to edje +# +# dependency [condition] [version]] +eet +evas +ecore +efreet +embryo diff --git a/media/libs/efreet/efreet.SlackBuild b/media/libs/efreet/efreet.SlackBuild index 30d1adb6..6f60b111 100755 --- a/media/libs/efreet/efreet.SlackBuild +++ b/media/libs/efreet/efreet.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# efreet.SlackBuild 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 any later version. +# efreet.SlackBuild 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 any later version. # -# efreet.SlackBuild 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. +# efreet.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for efreet -# by rhatto at riseup.net +# slackbuild for efreet, by Silvio Rhatto +# requires: eet evas ecore +# tested: efreet-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building efreet are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="efreet" +# Set variables +CWD="$(pwd)" +SRC_NAME="efreet" +PKG_NAME="efreet" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/efreet" ]; then - cd $SRC_DIR/e17/libs/efreet - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/efreet || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/efreet +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/efreet`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/efreet $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| efreet: efreet efreet: efreet: library for handling of freedesktop.org specs. @@ -111,22 +148,13 @@ efreet: efreet: efreet: efreet: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/efreet/slack-required b/media/libs/efreet/slack-required index 5081839e..f68a198a 100644 --- a/media/libs/efreet/slack-required +++ b/media/libs/efreet/slack-required @@ -1,3 +1,6 @@ -eet -evas -ecore +# Dependency list to efreet +# +# dependency [condition] [version]] +eet +evas +ecore diff --git a/media/libs/embryo/embryo.SlackBuild b/media/libs/embryo/embryo.SlackBuild index dff4c50e..9b612c3d 100755 --- a/media/libs/embryo/embryo.SlackBuild +++ b/media/libs/embryo/embryo.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# embryo.SlackBuild 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 any later version. +# embryo.SlackBuild 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 any later version. # -# embryo.SlackBuild 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. +# embryo.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for embryo -# by rhatto at riseup.net +# slackbuild for embryo, by Silvio Rhatto +# requires: eet evas ecore efreet +# tested: embryo-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building embryo are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="embryo" +# Set variables +CWD="$(pwd)" +SRC_NAME="embryo" +PKG_NAME="embryo" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/embryo" ]; then - cd $SRC_DIR/e17/libs/embryo - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/embryo || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/embryo +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/embryo`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/embryo $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| embryo: embryo embryo: embryo: Embryo is primarily a shared library that gives you an API to load and control @@ -111,22 +148,13 @@ embryo: embryo: embryo: embryo: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/embryo/slack-required b/media/libs/embryo/slack-required index 4daa9c56..85e8274e 100644 --- a/media/libs/embryo/slack-required +++ b/media/libs/embryo/slack-required @@ -1,4 +1,7 @@ -eet -evas -ecore -efreet +# Dependency list to embryo +# +# dependency [condition] [version]] +eet +evas +ecore +efreet diff --git a/media/libs/emotion/emotion.SlackBuild b/media/libs/emotion/emotion.SlackBuild index cd11cde7..11df454c 100755 --- a/media/libs/emotion/emotion.SlackBuild +++ b/media/libs/emotion/emotion.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# emotion.SlackBuild 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 any later version. +# emotion.SlackBuild 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 any later version. # -# emotion.SlackBuild 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. +# emotion.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for emotion -# by rhatto at riseup.net +# slackbuild for emotion, by Silvio Rhatto +# requires: ecore +# tested: emotion-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building emotion are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="emotion" +# Set variables +CWD="$(pwd)" +SRC_NAME="emotion" +PKG_NAME="emotion" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/emotion" ]; then - cd $SRC_DIR/e17/libs/emotion - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/emotion || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/emotion +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/emotion`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/emotion $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------------| emotion: emotion emotion: emotion: A media object library for Evas and Ecore @@ -111,22 +148,13 @@ emotion: emotion: emotion: emotion: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/emotion/slack-required b/media/libs/emotion/slack-required new file mode 100644 index 00000000..ded74d7a --- /dev/null +++ b/media/libs/emotion/slack-required @@ -0,0 +1,4 @@ +# Dependency list to emotion +# +# dependency [condition] [version]] +ecore diff --git a/media/libs/faad2/faad2-2.6.1.diff b/media/libs/faad2/faad2-2.6.1.diff new file mode 100644 index 00000000..bb246163 --- /dev/null +++ b/media/libs/faad2/faad2-2.6.1.diff @@ -0,0 +1,1040 @@ +diff -urNad faad2-svn~/include/neaacdec.h faad2-svn/include/neaacdec.h +--- faad2-svn~/include/neaacdec.h 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/include/neaacdec.h 2007-11-28 23:29:27.000000000 +0000 +@@ -35,6 +35,7 @@ + extern "C" { + #endif /* __cplusplus */ + ++#include <stdint.h> + + #if 1 + /* MACROS FOR BACKWARDS COMPATIBILITY */ +@@ -197,51 +198,51 @@ + unsigned char ps; + } NeAACDecFrameInfo; + +-char* NEAACDECAPI NeAACDecGetErrorMessage(unsigned char errcode); ++int8_t* NEAACDECAPI NeAACDecGetErrorMessage(uint8_t errcode); + +-unsigned long NEAACDECAPI NeAACDecGetCapabilities(void); ++uint32_t NEAACDECAPI NeAACDecGetCapabilities(void); + + NeAACDecHandle NEAACDECAPI NeAACDecOpen(void); + + NeAACDecConfigurationPtr NEAACDECAPI NeAACDecGetCurrentConfiguration(NeAACDecHandle hDecoder); + +-unsigned char NEAACDECAPI NeAACDecSetConfiguration(NeAACDecHandle hDecoder, ++uint8_t NEAACDECAPI NeAACDecSetConfiguration(NeAACDecHandle hDecoder, + NeAACDecConfigurationPtr config); + + /* Init the library based on info from the AAC file (ADTS/ADIF) */ +-long NEAACDECAPI NeAACDecInit(NeAACDecHandle hDecoder, +- unsigned char *buffer, +- unsigned long buffer_size, +- unsigned long *samplerate, +- unsigned char *channels); ++int32_t NEAACDECAPI NeAACDecInit(NeAACDecHandle hDecoder, ++ uint8_t *buffer, ++ uint32_t buffer_size, ++ uint32_t *samplerate, ++ uint8_t *channels); + + /* Init the library using a DecoderSpecificInfo */ +-char NEAACDECAPI NeAACDecInit2(NeAACDecHandle hDecoder, unsigned char *pBuffer, +- unsigned long SizeOfDecoderSpecificInfo, +- unsigned long *samplerate, unsigned char *channels); ++int8_t NEAACDECAPI NeAACDecInit2(NeAACDecHandle hDecoder, unsigned char *pBuffer, ++ uint32_t SizeOfDecoderSpecificInfo, ++ uint32_t *samplerate, uint8_t *channels); + + /* Init the library for DRM */ +-char NEAACDECAPI NeAACDecInitDRM(NeAACDecHandle *hDecoder, unsigned long samplerate, +- unsigned char channels); ++int8_t NEAACDECAPI NeAACDecInitDRM(NeAACDecHandle *hDecoder, uint32_t samplerate, ++ uint8_t channels); + +-void NEAACDECAPI NeAACDecPostSeekReset(NeAACDecHandle hDecoder, long frame); ++void NEAACDECAPI NeAACDecPostSeekReset(NeAACDecHandle hDecoder, int32_t frame); + + void NEAACDECAPI NeAACDecClose(NeAACDecHandle hDecoder); + + void* NEAACDECAPI NeAACDecDecode(NeAACDecHandle hDecoder, + NeAACDecFrameInfo *hInfo, +- unsigned char *buffer, +- unsigned long buffer_size); ++ uint8_t *buffer, ++ uint32_t buffer_size); + + void* NEAACDECAPI NeAACDecDecode2(NeAACDecHandle hDecoder, + NeAACDecFrameInfo *hInfo, +- unsigned char *buffer, +- unsigned long buffer_size, ++ uint8_t *buffer, ++ uint32_t buffer_size, + void **sample_buffer, +- unsigned long sample_buffer_size); ++ uint32_t sample_buffer_size); + +-char NEAACDECAPI NeAACDecAudioSpecificConfig(unsigned char *pBuffer, +- unsigned long buffer_size, ++int8_t NEAACDECAPI NeAACDecAudioSpecificConfig(uint8_t *pBuffer, ++ uint32_t buffer_size, + mp4AudioSpecificConfig *mp4ASC); + + #ifdef _WIN32 +diff -urNad faad2-svn~/libfaad/Makefile.am faad2-svn/libfaad/Makefile.am +--- faad2-svn~/libfaad/Makefile.am 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/Makefile.am 2007-11-28 23:31:03.000000000 +0000 +@@ -1,28 +1,29 @@ + lib_LTLIBRARIES = libfaad.la + ++AM_CFLAGS = -iquote $(top_srcdir)/include + include_HEADERS = $(top_srcdir)/include/faad.h \ +- $(top_srcdir)/include/neaacdec.h ++ $(top_srcdir)/include/neaacdec.h + + libfaad_la_LDFLAGS = -lm + + libfaad_la_SOURCES = bits.c cfft.c decoder.c drc.c \ +-drm_dec.c error.c filtbank.c \ +-ic_predict.c is.c lt_predict.c mdct.c mp4.c ms.c output.c pns.c \ +-ps_dec.c ps_syntax.c \ +-pulse.c specrec.c syntax.c tns.c hcr.c huffman.c \ +-rvlc.c ssr.c ssr_fb.c ssr_ipqf.c common.c \ +-sbr_dct.c sbr_e_nf.c sbr_fbt.c sbr_hfadj.c sbr_hfgen.c \ +-sbr_huff.c sbr_qmf.c sbr_syntax.c sbr_tf_grid.c sbr_dec.c \ +-analysis.h bits.h cfft.h cfft_tab.h common.h \ +-decoder.h drc.h drm_dec.h error.h fixed.h filtbank.h \ +-huffman.h ic_predict.h iq_table.h is.h kbd_win.h lt_predict.h \ +-mdct.h mdct_tab.h mp4.h ms.h output.h pns.h ps_dec.h ps_tables.h \ +-pulse.h rvlc.h \ +-sbr_dct.h sbr_dec.h sbr_e_nf.h sbr_fbt.h sbr_hfadj.h sbr_hfgen.h \ +-sbr_huff.h sbr_noise.h sbr_qmf.h sbr_syntax.h sbr_tf_grid.h \ +-sine_win.h specrec.h ssr.h ssr_fb.h ssr_ipqf.h \ +-ssr_win.h syntax.h structs.h tns.h \ +-sbr_qmf_c.h codebook/hcb.h \ +-codebook/hcb_1.h codebook/hcb_2.h codebook/hcb_3.h codebook/hcb_4.h \ +-codebook/hcb_5.h codebook/hcb_6.h codebook/hcb_7.h codebook/hcb_8.h \ +-codebook/hcb_9.h codebook/hcb_10.h codebook/hcb_11.h codebook/hcb_sf.h +\ No newline at end of file ++ drm_dec.c error.c filtbank.c \ ++ ic_predict.c is.c lt_predict.c mdct.c mp4.c ms.c output.c pns.c \ ++ ps_dec.c ps_syntax.c \ ++ pulse.c specrec.c syntax.c tns.c hcr.c huffman.c \ ++ rvlc.c ssr.c ssr_fb.c ssr_ipqf.c common.c \ ++ sbr_dct.c sbr_e_nf.c sbr_fbt.c sbr_hfadj.c sbr_hfgen.c \ ++ sbr_huff.c sbr_qmf.c sbr_syntax.c sbr_tf_grid.c sbr_dec.c \ ++ analysis.h bits.h cfft.h cfft_tab.h common.h \ ++ decoder.h drc.h drm_dec.h error.h fixed.h filtbank.h \ ++ huffman.h ic_predict.h iq_table.h is.h kbd_win.h lt_predict.h \ ++ mdct.h mdct_tab.h mp4.h ms.h output.h pns.h ps_dec.h ps_tables.h \ ++ pulse.h rvlc.h \ ++ sbr_dct.h sbr_dec.h sbr_e_nf.h sbr_fbt.h sbr_hfadj.h sbr_hfgen.h \ ++ sbr_huff.h sbr_noise.h sbr_qmf.h sbr_syntax.h sbr_tf_grid.h \ ++ sine_win.h specrec.h ssr.h ssr_fb.h ssr_ipqf.h \ ++ ssr_win.h syntax.h structs.h tns.h \ ++ sbr_qmf_c.h codebook/hcb.h \ ++ codebook/hcb_1.h codebook/hcb_2.h codebook/hcb_3.h codebook/hcb_4.h \ ++ codebook/hcb_5.h codebook/hcb_6.h codebook/hcb_7.h codebook/hcb_8.h \ ++ codebook/hcb_9.h codebook/hcb_10.h codebook/hcb_11.h codebook/hcb_sf.h +diff -urNad faad2-svn~/libfaad/common.h faad2-svn/libfaad/common.h +--- faad2-svn~/libfaad/common.h 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/common.h 2007-11-28 23:29:27.000000000 +0000 +@@ -39,6 +39,8 @@ + # include "../config.h" + #endif + ++#include "neaacdec.h" ++ + #if 1 + #define INLINE __inline + #else +@@ -210,7 +212,7 @@ + #else + # if HAVE_STDINT_H + # include <stdint.h> +-# else ++# else /* !HAVE_STDINT_H */ + /* we need these... */ + #ifndef __TCS__ + typedef unsigned long long uint64_t; +@@ -225,7 +227,7 @@ + typedef long int32_t; + typedef short int16_t; + typedef char int8_t; +-# endif ++# endif /* !HAVE_STDINT_H */ + #endif + #if HAVE_UNISTD_H + //# include <unistd.h> +diff -urNad faad2-svn~/libfaad/decoder.c faad2-svn/libfaad/decoder.c +--- faad2-svn~/libfaad/decoder.c 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/decoder.c 2007-11-28 23:29:27.000000000 +0000 +@@ -34,7 +34,6 @@ + #include <stdlib.h> + #include <string.h> + +-#include "decoder.h" + #include "mp4.h" + #include "syntax.h" + #include "error.h" +@@ -54,13 +53,13 @@ + #endif + + /* static function declarations */ +-static void* aac_frame_decode(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo, ++static void* aac_frame_decode(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo, + uint8_t *buffer, uint32_t buffer_size, + void **sample_buffer, uint32_t sample_buffer_size); +-static void create_channel_config(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo); ++static void create_channel_config(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo); + + +-char* NEAACDECAPI NeAACDecGetErrorMessage(uint8_t errcode) ++int8_t* NEAACDECAPI NeAACDecGetErrorMessage(uint8_t errcode) + { + if (errcode >= NUM_ERROR_MESSAGES) + return NULL; +@@ -97,9 +96,9 @@ + NeAACDecHandle NEAACDECAPI NeAACDecOpen(void) + { + uint8_t i; +- NeAACDecHandle hDecoder = NULL; ++ NeAACDecStruct* hDecoder = NULL; + +- if ((hDecoder = (NeAACDecHandle)faad_malloc(sizeof(NeAACDecStruct))) == NULL) ++ if ((hDecoder = (NeAACDecStruct*)faad_malloc(sizeof(NeAACDecStruct))) == NULL) + return NULL; + + memset(hDecoder, 0, sizeof(NeAACDecStruct)); +@@ -154,8 +153,9 @@ + return hDecoder; + } + +-NeAACDecConfigurationPtr NEAACDECAPI NeAACDecGetCurrentConfiguration(NeAACDecHandle hDecoder) ++NeAACDecConfigurationPtr NEAACDECAPI NeAACDecGetCurrentConfiguration(NeAACDecHandle hpDecoder) + { ++ NeAACDecStruct* hDecoder = (NeAACDecStruct*)hpDecoder; + if (hDecoder) + { + NeAACDecConfigurationPtr config = &(hDecoder->config); +@@ -166,9 +166,10 @@ + return NULL; + } + +-uint8_t NEAACDECAPI NeAACDecSetConfiguration(NeAACDecHandle hDecoder, ++uint8_t NEAACDECAPI NeAACDecSetConfiguration(NeAACDecHandle hpDecoder, + NeAACDecConfigurationPtr config) + { ++ NeAACDecStruct* hDecoder = (NeAACDecStruct*)hpDecoder; + if (hDecoder && config) + { + /* check if we can decode this object type */ +@@ -203,7 +204,7 @@ + } + + +-int32_t NEAACDECAPI NeAACDecInit(NeAACDecHandle hDecoder, uint8_t *buffer, ++int32_t NEAACDECAPI NeAACDecInit(NeAACDecHandle hpDecoder, uint8_t *buffer, + uint32_t buffer_size, + uint32_t *samplerate, uint8_t *channels) + { +@@ -211,7 +212,7 @@ + bitfile ld; + adif_header adif; + adts_header adts; +- ++ NeAACDecStruct* hDecoder = (NeAACDecStruct*)hpDecoder; + + if ((hDecoder == NULL) || (samplerate == NULL) || (channels == NULL)) + return -1; +@@ -310,12 +311,13 @@ + } + + /* Init the library using a DecoderSpecificInfo */ +-int8_t NEAACDECAPI NeAACDecInit2(NeAACDecHandle hDecoder, uint8_t *pBuffer, ++int8_t NEAACDECAPI NeAACDecInit2(NeAACDecHandle hpDecoder, uint8_t *pBuffer, + uint32_t SizeOfDecoderSpecificInfo, + uint32_t *samplerate, uint8_t *channels) + { + int8_t rc; + mp4AudioSpecificConfig mp4ASC; ++ NeAACDecStruct* hDecoder = (NeAACDecStruct*)hpDecoder; + + if((hDecoder == NULL) + || (pBuffer == NULL) +@@ -401,9 +403,11 @@ + } + + #ifdef DRM +-int8_t NEAACDECAPI NeAACDecInitDRM(NeAACDecHandle *hDecoder, uint32_t samplerate, ++int8_t NEAACDECAPI NeAACDecInitDRM(NeAACDecHandle *hpDecoder, uint32_t samplerate, + uint8_t channels) + { ++ NeAACDecStruct* hDecoder = (NeAACDecStruct*)hpDecoder; ++ + if (hDecoder == NULL) + return 1; /* error */ + +@@ -442,9 +446,10 @@ + } + #endif + +-void NEAACDECAPI NeAACDecClose(NeAACDecHandle hDecoder) ++void NEAACDECAPI NeAACDecClose(NeAACDecHandle hpDecoder) + { + uint8_t i; ++ NeAACDecStruct* hDecoder = (NeAACDecStruct*)hpDecoder; + + if (hDecoder == NULL) + return; +@@ -495,8 +500,10 @@ + if (hDecoder) faad_free(hDecoder); + } + +-void NEAACDECAPI NeAACDecPostSeekReset(NeAACDecHandle hDecoder, int32_t frame) ++void NEAACDECAPI NeAACDecPostSeekReset(NeAACDecHandle hpDecoder, int32_t frame) + { ++ NeAACDecStruct* hDecoder = (NeAACDecStruct*)hpDecoder; ++ + if (hDecoder) + { + hDecoder->postSeekResetFlag = 1; +@@ -506,7 +513,7 @@ + } + } + +-static void create_channel_config(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo) ++static void create_channel_config(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo) + { + hInfo->num_front_channels = 0; + hInfo->num_side_channels = 0; +@@ -724,18 +731,22 @@ + } + } + +-void* NEAACDECAPI NeAACDecDecode(NeAACDecHandle hDecoder, ++void* NEAACDECAPI NeAACDecDecode(NeAACDecHandle hpDecoder, + NeAACDecFrameInfo *hInfo, + uint8_t *buffer, uint32_t buffer_size) + { ++ NeAACDecStruct* hDecoder = (NeAACDecStruct*)hpDecoder; ++ + return aac_frame_decode(hDecoder, hInfo, buffer, buffer_size, NULL, 0); + } + +-void* NEAACDECAPI NeAACDecDecode2(NeAACDecHandle hDecoder, ++void* NEAACDECAPI NeAACDecDecode2(NeAACDecHandle hpDecoder, + NeAACDecFrameInfo *hInfo, + uint8_t *buffer, uint32_t buffer_size, + void **sample_buffer, uint32_t sample_buffer_size) + { ++ NeAACDecStruct* hDecoder = (NeAACDecStruct*)hpDecoder; ++ + if ((sample_buffer == NULL) || (sample_buffer_size == 0)) + { + hInfo->error = 27; +@@ -750,14 +761,14 @@ + + #define ERROR_STATE_INIT 6 + +-static void conceal_output(NeAACDecHandle hDecoder, uint16_t frame_len, ++static void conceal_output(NeAACDecStruct* hDecoder, uint16_t frame_len, + uint8_t out_ch, void *sample_buffer) + { + return; + } + #endif + +-static void* aac_frame_decode(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo, ++static void* aac_frame_decode(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo, + uint8_t *buffer, uint32_t buffer_size, + void **sample_buffer2, uint32_t sample_buffer_size) + { +diff -urNad faad2-svn~/libfaad/decoder.h faad2-svn/libfaad/decoder.h +--- faad2-svn~/libfaad/decoder.h 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/decoder.h 1970-01-01 01:00:00.000000000 +0100 +@@ -1,124 +0,0 @@ +-/* +-** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding +-** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com +-** +-** 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 program; if not, write to the Free Software +-** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +-** +-** Any non-GPL usage of this software or parts of this software is strictly +-** forbidden. +-** +-** The "appropriate copyright message" mentioned in section 2c of the GPLv2 +-** must read: "Code from FAAD2 is copyright (c) Nero AG, www.nero.com" +-** +-** Commercial non-GPL licensing of this software is possible. +-** For more info contact Nero AG through Mpeg4AAClicense@nero.com. +-** +-** $Id: decoder.h,v 1.48 2007/11/01 12:33:30 menno Exp $ +-**/ +- +-#ifndef __DECODER_H__ +-#define __DECODER_H__ +- +-#ifdef __cplusplus +-extern "C" { +-#endif +- +-#ifdef _WIN32 +- #pragma pack(push, 8) +- #ifndef NEAACDECAPI +- #define NEAACDECAPI __cdecl +- #endif +-#else +- #ifndef NEAACDECAPI +- #define NEAACDECAPI +- #endif +-#endif +- +- +-/* library output formats */ +-#define FAAD_FMT_16BIT 1 +-#define FAAD_FMT_24BIT 2 +-#define FAAD_FMT_32BIT 3 +-#define FAAD_FMT_FLOAT 4 +-#define FAAD_FMT_FIXED FAAD_FMT_FLOAT +-#define FAAD_FMT_DOUBLE 5 +- +-#define LC_DEC_CAP (1<<0) +-#define MAIN_DEC_CAP (1<<1) +-#define LTP_DEC_CAP (1<<2) +-#define LD_DEC_CAP (1<<3) +-#define ERROR_RESILIENCE_CAP (1<<4) +-#define FIXED_POINT_CAP (1<<5) +- +-#define FRONT_CHANNEL_CENTER (1) +-#define FRONT_CHANNEL_LEFT (2) +-#define FRONT_CHANNEL_RIGHT (3) +-#define SIDE_CHANNEL_LEFT (4) +-#define SIDE_CHANNEL_RIGHT (5) +-#define BACK_CHANNEL_LEFT (6) +-#define BACK_CHANNEL_RIGHT (7) +-#define BACK_CHANNEL_CENTER (8) +-#define LFE_CHANNEL (9) +-#define UNKNOWN_CHANNEL (0) +- +-char* NEAACDECAPI NeAACDecGetErrorMessage(uint8_t errcode); +- +-uint32_t NEAACDECAPI NeAACDecGetCapabilities(void); +- +-NeAACDecHandle NEAACDECAPI NeAACDecOpen(void); +- +-NeAACDecConfigurationPtr NEAACDECAPI NeAACDecGetCurrentConfiguration(NeAACDecHandle hDecoder); +- +-uint8_t NEAACDECAPI NeAACDecSetConfiguration(NeAACDecHandle hDecoder, +- NeAACDecConfigurationPtr config); +- +-/* Init the library based on info from the AAC file (ADTS/ADIF) */ +-int32_t NEAACDECAPI NeAACDecInit(NeAACDecHandle hDecoder, +- uint8_t *buffer, +- uint32_t buffer_size, +- uint32_t *samplerate, +- uint8_t *channels); +- +-/* Init the library using a DecoderSpecificInfo */ +-int8_t NEAACDECAPI NeAACDecInit2(NeAACDecHandle hDecoder, uint8_t *pBuffer, +- uint32_t SizeOfDecoderSpecificInfo, +- uint32_t *samplerate, uint8_t *channels); +- +-/* Init the library for DRM */ +-int8_t NEAACDECAPI NeAACDecInitDRM(NeAACDecHandle *hDecoder, uint32_t samplerate, +- uint8_t channels); +- +-void NEAACDECAPI NeAACDecClose(NeAACDecHandle hDecoder); +- +-void NEAACDECAPI NeAACDecPostSeekReset(NeAACDecHandle hDecoder, int32_t frame); +- +-void* NEAACDECAPI NeAACDecDecode(NeAACDecHandle hDecoder, +- NeAACDecFrameInfo *hInfo, +- uint8_t *buffer, +- uint32_t buffer_size); +- +-void* NEAACDECAPI NeAACDecDecode2(NeAACDecHandle hDecoder, +- NeAACDecFrameInfo *hInfo, +- uint8_t *buffer, uint32_t buffer_size, +- void **sample_buffer, uint32_t sample_buffer_size); +- +-#ifdef _WIN32 +- #pragma pack(pop) +-#endif +- +-#ifdef __cplusplus +-} +-#endif +-#endif +diff -urNad faad2-svn~/libfaad/filtbank.c faad2-svn/libfaad/filtbank.c +--- faad2-svn~/libfaad/filtbank.c 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/filtbank.c 2007-11-28 23:29:27.000000000 +0000 +@@ -40,7 +40,6 @@ + #endif + + #include "filtbank.h" +-#include "decoder.h" + #include "syntax.h" + #include "kbd_win.h" + #include "sine_win.h" +diff -urNad faad2-svn~/libfaad/hcr.c faad2-svn/libfaad/hcr.c +--- faad2-svn~/libfaad/hcr.c 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/hcr.c 2007-11-28 23:29:27.000000000 +0000 +@@ -214,7 +214,7 @@ + codeword[index].bits.len = 0; + } + +-uint8_t reordered_spectral_data(NeAACDecHandle hDecoder, ic_stream *ics, ++uint8_t reordered_spectral_data(NeAACDecStruct* hDecoder, ic_stream *ics, + bitfile *ld, int16_t *spectral_data) + { + uint16_t PCWs_done; +diff -urNad faad2-svn~/libfaad/mp4.h faad2-svn/libfaad/mp4.h +--- faad2-svn~/libfaad/mp4.h 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/mp4.h 2007-11-28 23:29:27.000000000 +0000 +@@ -35,11 +35,7 @@ + extern "C" { + #endif + +-#include "decoder.h" +- +-int8_t NEAACDECAPI NeAACDecAudioSpecificConfig(uint8_t *pBuffer, +- uint32_t buffer_size, +- mp4AudioSpecificConfig *mp4ASC); ++#include "neaacdec.h" + + int8_t AudioSpecificConfig2(uint8_t *pBuffer, + uint32_t buffer_size, +diff -urNad faad2-svn~/libfaad/output.c faad2-svn/libfaad/output.c +--- faad2-svn~/libfaad/output.c 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/output.c 2007-11-28 23:29:27.000000000 +0000 +@@ -32,7 +32,6 @@ + #include "structs.h" + + #include "output.h" +-#include "decoder.h" + + #ifndef FIXED_POINT + +@@ -87,7 +86,7 @@ + + #define CONV(a,b) ((a<<1)|(b&0x1)) + +-static void to_PCM_16bit(NeAACDecHandle hDecoder, real_t **input, ++static void to_PCM_16bit(NeAACDecStruct* hDecoder, real_t **input, + uint8_t channels, uint16_t frame_len, + int16_t **sample_buffer) + { +@@ -152,7 +151,7 @@ + } + } + +-static void to_PCM_24bit(NeAACDecHandle hDecoder, real_t **input, ++static void to_PCM_24bit(NeAACDecStruct* hDecoder, real_t **input, + uint8_t channels, uint16_t frame_len, + int32_t **sample_buffer) + { +@@ -222,7 +221,7 @@ + } + } + +-static void to_PCM_32bit(NeAACDecHandle hDecoder, real_t **input, ++static void to_PCM_32bit(NeAACDecStruct* hDecoder, real_t **input, + uint8_t channels, uint16_t frame_len, + int32_t **sample_buffer) + { +@@ -292,7 +291,7 @@ + } + } + +-static void to_PCM_float(NeAACDecHandle hDecoder, real_t **input, ++static void to_PCM_float(NeAACDecStruct* hDecoder, real_t **input, + uint8_t channels, uint16_t frame_len, + float32_t **sample_buffer) + { +@@ -344,7 +343,7 @@ + } + } + +-static void to_PCM_double(NeAACDecHandle hDecoder, real_t **input, ++static void to_PCM_double(NeAACDecStruct* hDecoder, real_t **input, + uint8_t channels, uint16_t frame_len, + double **sample_buffer) + { +@@ -396,7 +395,7 @@ + } + } + +-void *output_to_PCM(NeAACDecHandle hDecoder, ++void *output_to_PCM(NeAACDecStruct* hDecoder, + real_t **input, void *sample_buffer, uint8_t channels, + uint16_t frame_len, uint8_t format) + { +@@ -466,7 +465,7 @@ + } + } + +-void* output_to_PCM(NeAACDecHandle hDecoder, ++void* output_to_PCM(NeAACDecStruct* hDecoder, + real_t **input, void *sample_buffer, uint8_t channels, + uint16_t frame_len, uint8_t format) + { +diff -urNad faad2-svn~/libfaad/output.h faad2-svn/libfaad/output.h +--- faad2-svn~/libfaad/output.h 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/output.h 2007-11-28 23:29:27.000000000 +0000 +@@ -35,7 +35,7 @@ + extern "C" { + #endif + +-void* output_to_PCM(NeAACDecHandle hDecoder, ++void* output_to_PCM(NeAACDecStruct* hDecoder, + real_t **input, + void *samplebuffer, + uint8_t channels, +diff -urNad faad2-svn~/libfaad/specrec.c faad2-svn/libfaad/specrec.c +--- faad2-svn~/libfaad/specrec.c 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/specrec.c 2007-11-28 23:29:27.000000000 +0000 +@@ -58,7 +58,7 @@ + + + /* static function declarations */ +-static uint8_t quant_to_spec(NeAACDecHandle hDecoder, ++static uint8_t quant_to_spec(NeAACDecStruct* hDecoder, + ic_stream *ics, int16_t *quant_data, + real_t *spec_data, uint16_t frame_len); + +@@ -300,10 +300,9 @@ + in section named section. This offset depends on window_sequence and + scale_factor_grouping and is needed to decode the spectral_data(). + */ +-uint8_t window_grouping_info(NeAACDecHandle hDecoder, ic_stream *ics) ++uint8_t window_grouping_info(NeAACDecStruct* hDecoder, ic_stream *ics) + { + uint8_t i, g; +- + uint8_t sf_index = hDecoder->sf_index; + + switch (ics->window_sequence) { +@@ -546,7 +545,7 @@ + - Within a scalefactor window band, the coefficients are in ascending + spectral order. + */ +-static uint8_t quant_to_spec(NeAACDecHandle hDecoder, ++static uint8_t quant_to_spec(NeAACDecStruct* hDecoder, + ic_stream *ics, int16_t *quant_data, + real_t *spec_data, uint16_t frame_len) + { +@@ -680,7 +679,7 @@ + return error; + } + +-static uint8_t allocate_single_channel(NeAACDecHandle hDecoder, uint8_t channel, ++static uint8_t allocate_single_channel(NeAACDecStruct* hDecoder, uint8_t channel, + uint8_t output_channels) + { + int mul = 1; +@@ -781,7 +780,7 @@ + return 0; + } + +-static uint8_t allocate_channel_pair(NeAACDecHandle hDecoder, ++static uint8_t allocate_channel_pair(NeAACDecStruct* hDecoder, + uint8_t channel, uint8_t paired_channel) + { + int mul = 1; +@@ -886,7 +885,7 @@ + return 0; + } + +-uint8_t reconstruct_single_channel(NeAACDecHandle hDecoder, ic_stream *ics, ++uint8_t reconstruct_single_channel(NeAACDecStruct* hDecoder, ic_stream *ics, + element *sce, int16_t *spec_data) + { + uint8_t retval; +@@ -1096,7 +1095,7 @@ + return 0; + } + +-uint8_t reconstruct_channel_pair(NeAACDecHandle hDecoder, ic_stream *ics1, ic_stream *ics2, ++uint8_t reconstruct_channel_pair(NeAACDecStruct* hDecoder, ic_stream *ics1, ic_stream *ics2, + element *cpe, int16_t *spec_data1, int16_t *spec_data2) + { + uint8_t retval; +@@ -1106,6 +1105,7 @@ + #ifdef PROFILE + int64_t count = faad_get_ts(); + #endif ++ + if (hDecoder->element_alloced[hDecoder->fr_ch_ele] == 0) + { + retval = allocate_channel_pair(hDecoder, cpe->channel, (uint8_t)cpe->paired_channel); +diff -urNad faad2-svn~/libfaad/specrec.h faad2-svn/libfaad/specrec.h +--- faad2-svn~/libfaad/specrec.h 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/specrec.h 2007-11-28 23:29:27.000000000 +0000 +@@ -37,10 +37,10 @@ + + #include "syntax.h" + +-uint8_t window_grouping_info(NeAACDecHandle hDecoder, ic_stream *ics); +-uint8_t reconstruct_channel_pair(NeAACDecHandle hDecoder, ic_stream *ics1, ic_stream *ics2, ++uint8_t window_grouping_info(NeAACDecStruct* hDecoder, ic_stream *ics); ++uint8_t reconstruct_channel_pair(NeAACDecStruct* hDecoder, ic_stream *ics1, ic_stream *ics2, + element *cpe, int16_t *spec_data1, int16_t *spec_data2); +-uint8_t reconstruct_single_channel(NeAACDecHandle hDecoder, ic_stream *ics, element *sce, ++uint8_t reconstruct_single_channel(NeAACDecStruct* hDecoder, ic_stream *ics, element *sce, + int16_t *spec_data); + + #ifdef __cplusplus +diff -urNad faad2-svn~/libfaad/structs.h faad2-svn/libfaad/structs.h +--- faad2-svn~/libfaad/structs.h 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/structs.h 2007-11-28 23:29:27.000000000 +0000 +@@ -312,67 +312,6 @@ + ic_stream ics2; + } element; /* syntax element (SCE, CPE, LFE) */ + +-typedef struct mp4AudioSpecificConfig +-{ +- /* Audio Specific Info */ +- /*uint8_t*/ unsigned char objectTypeIndex; +- /*uint8_t*/ unsigned char samplingFrequencyIndex; +- /*uint32_t*/ unsigned long samplingFrequency; +- /*uint8_t*/ unsigned char channelsConfiguration; +- +- /* GA Specific Info */ +- /*uint8_t*/ unsigned char frameLengthFlag; +- /*uint8_t*/ unsigned char dependsOnCoreCoder; +- /*uint16_t*/ unsigned short coreCoderDelay; +- /*uint8_t*/ unsigned char extensionFlag; +- /*uint8_t*/ unsigned char aacSectionDataResilienceFlag; +- /*uint8_t*/ unsigned char aacScalefactorDataResilienceFlag; +- /*uint8_t*/ unsigned char aacSpectralDataResilienceFlag; +- /*uint8_t*/ unsigned char epConfig; +- +- /*uint8_t*/ char sbr_present_flag; +- /*uint8_t*/ char forceUpSampling; +- /*uint8_t*/ char downSampledSBR; +-} mp4AudioSpecificConfig; +- +-typedef struct NeAACDecConfiguration +-{ +- /*uint8_t*/ unsigned char defObjectType; +- /*uint32_t*/ unsigned long defSampleRate; +- /*uint8_t*/ unsigned char outputFormat; +- /*uint8_t*/ unsigned char downMatrix; +- /*uint8_t*/ unsigned char useOldADTSFormat; +- /*uint8_t*/ unsigned char dontUpSampleImplicitSBR; +-} NeAACDecConfiguration, *NeAACDecConfigurationPtr; +- +-typedef struct NeAACDecFrameInfo +-{ +- /*uint32_t*/ unsigned long bytesconsumed; +- /*uint32_t*/ unsigned long samples; +- /*uint8_t*/ unsigned char channels; +- /*uint8_t*/ unsigned char error; +- /*uint32_t*/ unsigned long samplerate; +- +- /* SBR: 0: off, 1: on; normal, 2: on; downsampled */ +- /*uint8_t*/ unsigned char sbr; +- +- /* MPEG-4 ObjectType */ +- /*uint8_t*/ unsigned char object_type; +- +- /* AAC header type; MP4 will be signalled as RAW also */ +- /*uint8_t*/ unsigned char header_type; +- +- /* multichannel configuration */ +- /*uint8_t*/ unsigned char num_front_channels; +- /*uint8_t*/ unsigned char num_side_channels; +- /*uint8_t*/ unsigned char num_back_channels; +- /*uint8_t*/ unsigned char num_lfe_channels; +- /*uint8_t*/ unsigned char channel_position[MAX_CHANNELS]; +- +- /* PS: 0: off, 1: on */ +- /*uint8_t*/ unsigned char ps; +-} NeAACDecFrameInfo; +- + typedef struct + { + uint8_t adts_header_present; +@@ -477,9 +416,7 @@ + int64_t requant_cycles; + #endif + const unsigned char *cmes; +-} NeAACDecStruct, *NeAACDecHandle; +- +- ++} NeAACDecStruct; + + #ifdef __cplusplus + } +diff -urNad faad2-svn~/libfaad/syntax.c faad2-svn/libfaad/syntax.c +--- faad2-svn~/libfaad/syntax.c 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/syntax.c 2007-11-28 23:29:27.000000000 +0000 +@@ -38,7 +38,6 @@ + #include <stdlib.h> + #include <string.h> + +-#include "decoder.h" + #include "syntax.h" + #include "specrec.h" + #include "huffman.h" +@@ -55,51 +54,51 @@ + + + /* static function declarations */ +-static void decode_sce_lfe(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo, bitfile *ld, ++static void decode_sce_lfe(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo, bitfile *ld, + uint8_t id_syn_ele); +-static void decode_cpe(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo, bitfile *ld, ++static void decode_cpe(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo, bitfile *ld, + uint8_t id_syn_ele); +-static uint8_t single_lfe_channel_element(NeAACDecHandle hDecoder, bitfile *ld, ++static uint8_t single_lfe_channel_element(NeAACDecStruct* hDecoder, bitfile *ld, + uint8_t channel, uint8_t *tag); +-static uint8_t channel_pair_element(NeAACDecHandle hDecoder, bitfile *ld, ++static uint8_t channel_pair_element(NeAACDecStruct* hDecoder, bitfile *ld, + uint8_t channel, uint8_t *tag); + #ifdef COUPLING_DEC +-static uint8_t coupling_channel_element(NeAACDecHandle hDecoder, bitfile *ld); ++static uint8_t coupling_channel_element(NeAACDecStruct* hDecoder, bitfile *ld); + #endif +-static uint16_t data_stream_element(NeAACDecHandle hDecoder, bitfile *ld); ++static uint16_t data_stream_element(NeAACDecStruct* hDecoder, bitfile *ld); + static uint8_t program_config_element(program_config *pce, bitfile *ld); +-static uint8_t fill_element(NeAACDecHandle hDecoder, bitfile *ld, drc_info *drc ++static uint8_t fill_element(NeAACDecStruct* hDecoder, bitfile *ld, drc_info *drc + #ifdef SBR_DEC + ,uint8_t sbr_ele + #endif + ); +-static uint8_t individual_channel_stream(NeAACDecHandle hDecoder, element *ele, ++static uint8_t individual_channel_stream(NeAACDecStruct* hDecoder, element *ele, + bitfile *ld, ic_stream *ics, uint8_t scal_flag, + int16_t *spec_data); +-static uint8_t ics_info(NeAACDecHandle hDecoder, ic_stream *ics, bitfile *ld, ++static uint8_t ics_info(NeAACDecStruct* hDecoder, ic_stream *ics, bitfile *ld, + uint8_t common_window); +-static uint8_t section_data(NeAACDecHandle hDecoder, ic_stream *ics, bitfile *ld); +-static uint8_t scale_factor_data(NeAACDecHandle hDecoder, ic_stream *ics, bitfile *ld); ++static uint8_t section_data(NeAACDecStruct* hDecoder, ic_stream *ics, bitfile *ld); ++static uint8_t scale_factor_data(NeAACDecStruct* hDecoder, ic_stream *ics, bitfile *ld); + #ifdef SSR_DEC + static void gain_control_data(bitfile *ld, ic_stream *ics); + #endif +-static uint8_t spectral_data(NeAACDecHandle hDecoder, ic_stream *ics, bitfile *ld, ++static uint8_t spectral_data(NeAACDecStruct* hDecoder, ic_stream *ics, bitfile *ld, + int16_t *spectral_data); + static uint16_t extension_payload(bitfile *ld, drc_info *drc, uint16_t count); + static uint8_t pulse_data(ic_stream *ics, pulse_info *pul, bitfile *ld); + static void tns_data(ic_stream *ics, tns_info *tns, bitfile *ld); + #ifdef LTP_DEC +-static uint8_t ltp_data(NeAACDecHandle hDecoder, ic_stream *ics, ltp_info *ltp, bitfile *ld); ++static uint8_t ltp_data(NeAACDecStruct* hDecoder, ic_stream *ics, ltp_info *ltp, bitfile *ld); + #endif + static uint8_t adts_fixed_header(adts_header *adts, bitfile *ld); + static void adts_variable_header(adts_header *adts, bitfile *ld); + static void adts_error_check(adts_header *adts, bitfile *ld); + static uint8_t dynamic_range_info(bitfile *ld, drc_info *drc); + static uint8_t excluded_channels(bitfile *ld, drc_info *drc); +-static uint8_t side_info(NeAACDecHandle hDecoder, element *ele, ++static uint8_t side_info(NeAACDecStruct* hDecoder, element *ele, + bitfile *ld, ic_stream *ics, uint8_t scal_flag); + #ifdef DRM +-static int8_t DRM_aac_scalable_main_header(NeAACDecHandle hDecoder, ic_stream *ics1, ic_stream *ics2, ++static int8_t DRM_aac_scalable_main_header(NeAACDecStruct* hDecoder, ic_stream *ics1, ic_stream *ics2, + bitfile *ld, uint8_t this_layer_stereo); + #endif + +@@ -321,7 +320,7 @@ + return 0; + } + +-static void decode_sce_lfe(NeAACDecHandle hDecoder, ++static void decode_sce_lfe(NeAACDecStruct* hDecoder, + NeAACDecFrameInfo *hInfo, bitfile *ld, + uint8_t id_syn_ele) + { +@@ -366,7 +365,7 @@ + hDecoder->fr_ch_ele++; + } + +-static void decode_cpe(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo, bitfile *ld, ++static void decode_cpe(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo, bitfile *ld, + uint8_t id_syn_ele) + { + uint8_t channels = hDecoder->fr_channels; +@@ -414,7 +413,7 @@ + hDecoder->fr_ch_ele++; + } + +-void raw_data_block(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo, ++void raw_data_block(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo, + bitfile *ld, program_config *pce, drc_info *drc) + { + uint8_t id_syn_ele; +@@ -584,7 +583,7 @@ + + /* Table 4.4.4 and */ + /* Table 4.4.9 */ +-static uint8_t single_lfe_channel_element(NeAACDecHandle hDecoder, bitfile *ld, ++static uint8_t single_lfe_channel_element(NeAACDecStruct* hDecoder, bitfile *ld, + uint8_t channel, uint8_t *tag) + { + uint8_t retval = 0; +@@ -631,7 +630,7 @@ + } + + /* Table 4.4.5 */ +-static uint8_t channel_pair_element(NeAACDecHandle hDecoder, bitfile *ld, ++static uint8_t channel_pair_element(NeAACDecStruct* hDecoder, bitfile *ld, + uint8_t channels, uint8_t *tag) + { + ALIGN int16_t spec_data1[1024] = {0}; +@@ -761,7 +760,7 @@ + } + + /* Table 4.4.6 */ +-static uint8_t ics_info(NeAACDecHandle hDecoder, ic_stream *ics, bitfile *ld, ++static uint8_t ics_info(NeAACDecStruct* hDecoder, ic_stream *ics, bitfile *ld, + uint8_t common_window) + { + uint8_t retval = 0; +@@ -912,7 +911,7 @@ + + #ifdef COUPLING_DEC + /* Table 4.4.8: Currently just for skipping the bits... */ +-static uint8_t coupling_channel_element(NeAACDecHandle hDecoder, bitfile *ld) ++static uint8_t coupling_channel_element(NeAACDecStruct* hDecoder, bitfile *ld) + { + uint8_t c, result = 0; + uint8_t ind_sw_cce_flag = 0; +@@ -1005,7 +1004,7 @@ + #endif + + /* Table 4.4.10 */ +-static uint16_t data_stream_element(NeAACDecHandle hDecoder, bitfile *ld) ++static uint16_t data_stream_element(NeAACDecStruct* hDecoder, bitfile *ld) + { + uint8_t byte_aligned; + uint16_t i, count; +@@ -1034,7 +1033,7 @@ + } + + /* Table 4.4.11 */ +-static uint8_t fill_element(NeAACDecHandle hDecoder, bitfile *ld, drc_info *drc ++static uint8_t fill_element(NeAACDecStruct* hDecoder, bitfile *ld, drc_info *drc + #ifdef SBR_DEC + ,uint8_t sbr_ele + #endif +@@ -1213,7 +1212,7 @@ + + #ifdef DRM + /* Table 4.4.13 ASME */ +-void DRM_aac_scalable_main_element(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo, ++void DRM_aac_scalable_main_element(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo, + bitfile *ld, program_config *pce, drc_info *drc) + { + uint8_t retval = 0; +@@ -1423,7 +1422,7 @@ + } + + /* Table 4.4.15 */ +-static int8_t DRM_aac_scalable_main_header(NeAACDecHandle hDecoder, ic_stream *ics1, ic_stream *ics2, ++static int8_t DRM_aac_scalable_main_header(NeAACDecStruct* hDecoder, ic_stream *ics1, ic_stream *ics2, + bitfile *ld, uint8_t this_layer_stereo) + { + uint8_t retval = 0; +@@ -1491,7 +1490,7 @@ + } + #endif + +-static uint8_t side_info(NeAACDecHandle hDecoder, element *ele, ++static uint8_t side_info(NeAACDecStruct* hDecoder, element *ele, + bitfile *ld, ic_stream *ics, uint8_t scal_flag) + { + uint8_t result; +@@ -1584,7 +1583,7 @@ + } + + /* Table 4.4.24 */ +-static uint8_t individual_channel_stream(NeAACDecHandle hDecoder, element *ele, ++static uint8_t individual_channel_stream(NeAACDecStruct* hDecoder, element *ele, + bitfile *ld, ic_stream *ics, uint8_t scal_flag, + int16_t *spec_data) + { +@@ -1644,7 +1643,7 @@ + } + + /* Table 4.4.25 */ +-static uint8_t section_data(NeAACDecHandle hDecoder, ic_stream *ics, bitfile *ld) ++static uint8_t section_data(NeAACDecStruct* hDecoder, ic_stream *ics, bitfile *ld) + { + uint8_t g; + uint8_t sect_esc_val, sect_bits; +@@ -1891,7 +1890,7 @@ + } + + /* Table 4.4.26 */ +-static uint8_t scale_factor_data(NeAACDecHandle hDecoder, ic_stream *ics, bitfile *ld) ++static uint8_t scale_factor_data(NeAACDecStruct* hDecoder, ic_stream *ics, bitfile *ld) + { + uint8_t ret = 0; + #ifdef PROFILE +@@ -1999,7 +1998,7 @@ + + #ifdef LTP_DEC + /* Table 4.4.28 */ +-static uint8_t ltp_data(NeAACDecHandle hDecoder, ic_stream *ics, ltp_info *ltp, bitfile *ld) ++static uint8_t ltp_data(NeAACDecStruct* hDecoder, ic_stream *ics, ltp_info *ltp, bitfile *ld) + { + uint8_t sfb, w; + +@@ -2062,7 +2061,7 @@ + #endif + + /* Table 4.4.29 */ +-static uint8_t spectral_data(NeAACDecHandle hDecoder, ic_stream *ics, bitfile *ld, ++static uint8_t spectral_data(NeAACDecStruct* hDecoder, ic_stream *ics, bitfile *ld, + int16_t *spectral_data) + { + int8_t i; +diff -urNad faad2-svn~/libfaad/syntax.h faad2-svn/libfaad/syntax.h +--- faad2-svn~/libfaad/syntax.h 2007-11-28 23:28:14.000000000 +0000 ++++ faad2-svn/libfaad/syntax.h 2007-11-28 23:29:27.000000000 +0000 +@@ -35,7 +35,6 @@ + extern "C" { + #endif + +-#include "decoder.h" + #include "bits.h" + + #define MAIN 1 +@@ -113,12 +112,12 @@ + + uint8_t adts_frame(adts_header *adts, bitfile *ld); + void get_adif_header(adif_header *adif, bitfile *ld); +-void raw_data_block(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo, ++void raw_data_block(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo, + bitfile *ld, program_config *pce, drc_info *drc); +-uint8_t reordered_spectral_data(NeAACDecHandle hDecoder, ic_stream *ics, bitfile *ld, ++uint8_t reordered_spectral_data(NeAACDecStruct* hDecoder, ic_stream *ics, bitfile *ld, + int16_t *spectral_data); + #ifdef DRM +-void DRM_aac_scalable_main_element(NeAACDecHandle hDecoder, NeAACDecFrameInfo *hInfo, ++void DRM_aac_scalable_main_element(NeAACDecStruct* hDecoder, NeAACDecFrameInfo *hInfo, + bitfile *ld, program_config *pce, drc_info *drc); + #endif + diff --git a/media/libs/faad2/faad2.SlackBuild b/media/libs/faad2/faad2.SlackBuild index 9329ee8b..d2dfb73d 100755 --- a/media/libs/faad2/faad2.SlackBuild +++ b/media/libs/faad2/faad2.SlackBuild @@ -1,109 +1,168 @@ #!/bin/bash # -# faad2.SlackBuild 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 any later version. +# faad2.SlackBuild 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 any later version. # -# faad2.SlackBuild 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. +# faad2.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for faad2 -# by rafael at riseup.net +# slackbuild for faad2, by Silvio Rhatto +# requires: +# tested: faad2-2.6.1 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building faad2 are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="faad2" +# Set variables +CWD="$(pwd)" +SRC_NAME="faad2" +PKG_NAME="faad2" ARCH=${ARCH:=i486} -VERSION=${VERSION:=2.0} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=2.6.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--with-docdir=/usr/doc/$PKG_NAME-$VERSION"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://ufpr.dl.sourceforge.net/sourceforge/faac/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE - -autoreconf -vif -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/faac/$SRC" -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p0 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +autoreconf -vif +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------------| faad2: faad2 (faad2 is a free Advanced Audio Decoder) faad2: faad2: Faad2 is a free Advanced Audio Decoder. @@ -115,18 +174,13 @@ faad2: faad2: faad2: http://www.audiocoding.com/ faad2: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS COPYING ChangeLog INSTALL NEWS README TODO;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/glitz/glitz.SlackBuild b/media/libs/glitz/glitz.SlackBuild index 92541d75..12a86a36 100755 --- a/media/libs/glitz/glitz.SlackBuild +++ b/media/libs/glitz/glitz.SlackBuild @@ -1,113 +1,167 @@ #!/bin/bash # -# glitz.SlackBuild 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 any later version. +# glitz.SlackBuild 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 any later version. # -# glitz.SlackBuild 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. +# glitz.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for glitz -# by rhatto at riseup.net +# slackbuild for glitz, by Silvio Rhatto +# requires: +# tested: glitz-0.5.6 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building glitz are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="glitz" +# Set variables +CWD="$(pwd)" +SRC_NAME="glitz" +PKG_NAME="glitz" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.5.6} +SRC_VERSION=${VERSION:=0.5.6} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 -ERROR_TAR=37; ERROR_MKPKG=38 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://cairographics.org/snapshots/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://cairographics.org/snapshots/$SRC" -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------------| glitz: glitz glitz: glitz: Glitz is an OpenGL image compositing library. Glitz provides @@ -119,20 +173,13 @@ glitz: glitz: glitz: glitz: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/gst-ffmpeg/gst-ffmpeg.SlackBuild b/media/libs/gst-ffmpeg/gst-ffmpeg.SlackBuild new file mode 100644 index 00000000..3846e235 --- /dev/null +++ b/media/libs/gst-ffmpeg/gst-ffmpeg.SlackBuild @@ -0,0 +1,149 @@ +#!/bin/bash +# +# gst-ffmpeg.SlackBuild 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 any later version. +# +# gst-ffmpeg.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gst-ffmpeg, by Rafael Diniz +# requires: gstreamer gst-plugins-base ffmpeg +# tested: gst-ffmpeg-0.10.4 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gst-ffmpeg" +PKG_NAME="gst-ffmpeg" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.10.4} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --with-docdir=/usr/doc/$PKG_NAME-$PKG_VERSION"} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://gstreamer.freedesktop.org/src/gst-ffmpeg/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +./configure --prefix="$PREFIX" --libdir="$LIBDIR" || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------------| +gst-ffmpeg: gst-ffmpeg (ffmpeg plugin for gstreamer) +gst-ffmpeg: +gst-ffmpeg: FFmpeg plugin for gstreamer. +gst-ffmpeg: +gst-ffmpeg: +gst-ffmpeg: +gst-ffmpeg: +gst-ffmpeg: +gst-ffmpeg: +gst-ffmpeg: http://gstreamer.freedesktop.org/ +gst-ffmpeg: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/gst-ffmpeg/slack-required b/media/libs/gst-ffmpeg/slack-required new file mode 100644 index 00000000..5ff9a046 --- /dev/null +++ b/media/libs/gst-ffmpeg/slack-required @@ -0,0 +1,6 @@ +# Dependency list to gst-ffmpeg +# +# dependency [condition] [version]] +gstreamer +gst-plugins-base +ffmpeg diff --git a/media/libs/gst-plugins-bad/gst-plugins-bad.SlackBuild b/media/libs/gst-plugins-bad/gst-plugins-bad.SlackBuild new file mode 100755 index 00000000..5c912172 --- /dev/null +++ b/media/libs/gst-plugins-bad/gst-plugins-bad.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gst-plugins-bad.SlackBuild 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 any later version. +# +# gst-plugins-bad.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gst-plugins-bad, by Rafael Diniz +# requires: gstreamer gst-plugins-base +# tested: gst-plugins-bad-0.10.7 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gst-plugins-bad" +PKG_NAME="gst-plugins-bad" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.10.7} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --with-docdir=/usr/doc/$PKG_NAME-$PKG_VERSION"} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://gstreamer.freedesktop.org/src/gst-plugins-bad/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------| +gst-plugins-bad: gst-plugins-bad (plugins for gstreamer) +gst-plugins-bad: +gst-plugins-bad: Free Software plugins for gstreamer with problems +gst-plugins-bad: related to quality. +gst-plugins-bad: +gst-plugins-bad: +gst-plugins-bad: +gst-plugins-bad: +gst-plugins-bad: +gst-plugins-bad: http://gstreamer.freedesktop.org/ +gst-plugins-bad: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/gst-plugins-bad/slack-required b/media/libs/gst-plugins-bad/slack-required new file mode 100644 index 00000000..6f90752f --- /dev/null +++ b/media/libs/gst-plugins-bad/slack-required @@ -0,0 +1,5 @@ +# Dependency list to gst-plugins-bad +# +# dependency [condition] [version]] +gstreamer +gst-plugins-base diff --git a/media/libs/gst-plugins-base/gst-plugins-base.SlackBuild b/media/libs/gst-plugins-base/gst-plugins-base.SlackBuild new file mode 100755 index 00000000..466113bd --- /dev/null +++ b/media/libs/gst-plugins-base/gst-plugins-base.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gst-plugins-base.SlackBuild 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 any later version. +# +# gst-plugins-base.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gst-plugins-base, by Rafael Diniz +# requires: gstreamer +# tested: gst-plugins-base-0.10.19 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gst-plugins-base" +PKG_NAME="gst-plugins-base" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.10.19} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --with-docdir=/usr/doc/$PKG_NAME-$PKG_VERSION"} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://gstreamer.freedesktop.org/src/gst-plugins-base/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------| +gst-plugins-base: gst-plugins-base (plugins for gstreamer) +gst-plugins-base: +gst-plugins-base: Base plugins for gstreamer, you need this to get gstreamer +gst-plugins-base: working. +gst-plugins-base: +gst-plugins-base: +gst-plugins-base: +gst-plugins-base: +gst-plugins-base: +gst-plugins-base: http://gstreamer.freedesktop.org/ +gst-plugins-base: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/gst-plugins-base/slack-required b/media/libs/gst-plugins-base/slack-required new file mode 100644 index 00000000..60982360 --- /dev/null +++ b/media/libs/gst-plugins-base/slack-required @@ -0,0 +1,4 @@ +# Dependency list to gst-plugins-base +# +# dependency [condition] [version]] +gstreamer diff --git a/media/libs/gst-plugins-good/gst-plugins-good.SlackBuild b/media/libs/gst-plugins-good/gst-plugins-good.SlackBuild new file mode 100755 index 00000000..1776b5ac --- /dev/null +++ b/media/libs/gst-plugins-good/gst-plugins-good.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gst-plugins-good.SlackBuild 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 any later version. +# +# gst-plugins-good.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gst-plugins-good, by Rafael Diniz +# requires: gstreamer gst-plugins-base +# tested: gst-plugins-good-0.10.8 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gst-plugins-good" +PKG_NAME="gst-plugins-good" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.10.8} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --with-docdir=/usr/doc/$PKG_NAME-$PKG_VERSION"} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://gstreamer.freedesktop.org/src/gst-plugins-good/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------| +gst-plugins-good: gst-plugins-good (plugins for gstreamer) +gst-plugins-good: +gst-plugins-good: Free Software plugins for gstreamer with no problems +gst-plugins-good: related to patents. +gst-plugins-good: +gst-plugins-good: +gst-plugins-good: +gst-plugins-good: +gst-plugins-good: +gst-plugins-good: http://gstreamer.freedesktop.org/ +gst-plugins-good: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/gst-plugins-good/slack-required b/media/libs/gst-plugins-good/slack-required new file mode 100644 index 00000000..dad684cf --- /dev/null +++ b/media/libs/gst-plugins-good/slack-required @@ -0,0 +1,5 @@ +# Dependency list to gst-plugins-good +# +# dependency [condition] [version]] +gstreamer +gst-plugins-base diff --git a/media/libs/gst-plugins-ugly/gst-plugins-ugly.SlackBuild b/media/libs/gst-plugins-ugly/gst-plugins-ugly.SlackBuild new file mode 100755 index 00000000..6736cd92 --- /dev/null +++ b/media/libs/gst-plugins-ugly/gst-plugins-ugly.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gst-plugins-ugly.SlackBuild 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 any later version. +# +# gst-plugins-ugly.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gst-plugins-ugly, by Rafael Diniz +# requires: gstreamer gst-plugins-base +# tested: gst-plugins-ugly-0.10.8 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gst-plugins-ugly" +PKG_NAME="gst-plugins-ugly" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.10.8} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --with-docdir=/usr/doc/$PKG_NAME-$PKG_VERSION"} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://gstreamer.freedesktop.org/src/gst-plugins-ugly/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------| +gst-plugins-ugly: gst-plugins-ugly (plugins for gstreamer) +gst-plugins-ugly: +gst-plugins-ugly: Free Software plugins for gstreamer with problems +gst-plugins-ugly: related to patents. +gst-plugins-ugly: +gst-plugins-ugly: +gst-plugins-ugly: +gst-plugins-ugly: +gst-plugins-ugly: +gst-plugins-ugly: http://gstreamer.freedesktop.org/ +gst-plugins-ugly: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/gst-plugins-ugly/slack-required b/media/libs/gst-plugins-ugly/slack-required new file mode 100644 index 00000000..d4fa6ac2 --- /dev/null +++ b/media/libs/gst-plugins-ugly/slack-required @@ -0,0 +1,5 @@ +# Dependency list to gst-plugins-ugly +# +# dependency [condition] [version]] +gstreamer +gst-plugins-base diff --git a/media/libs/gstreamer/gstreamer.SlackBuild b/media/libs/gstreamer/gstreamer.SlackBuild new file mode 100755 index 00000000..5941669a --- /dev/null +++ b/media/libs/gstreamer/gstreamer.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gstreamer.SlackBuild 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 any later version. +# +# gstreamer.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gstreamer, by Rafael Diniz +# requires: +# tested: gstreamer-0.10.19 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gstreamer" +PKG_NAME="gstreamer" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.10.19} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --with-docdir=/usr/doc/$PKG_NAME-$PKG_VERSION"} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://gstreamer.freedesktop.org/src/gstreamer/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------| +gstreamer: gstreamer (gstreamer is a multimedia library) +gstreamer: +gstreamer: GStreamer is a library for constructing of graphs of media-handling +gstreamer: components. The use cases it covers range from simple Ogg/Vorbis +gstreamer: playback, audio/video streaming to complex audio (mixing) and video +gstreamer: (non-linear editing) processing. +gstreamer: +gstreamer: +gstreamer: +gstreamer: http://gstreamer.freedesktop.org/ +gstreamer: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/ilmbase/ilmbase.SlackBuild b/media/libs/ilmbase/ilmbase.SlackBuild new file mode 100755 index 00000000..d391f141 --- /dev/null +++ b/media/libs/ilmbase/ilmbase.SlackBuild @@ -0,0 +1,185 @@ +#!/bin/bash +# +# ilmbase.SlackBuild 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 any later version. +# +# ilmbase.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for ilmbase, by Silvio Rhatto +# requires: +# tested: ilmbase-1.0.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="ilmbase" +PKG_NAME="ilmbase" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.0.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://download.savannah.nongnu.org/releases/openexr/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog LICENSE NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +ilmbase: ilmbase +ilmbase: +ilmbase: OpenEXR ILM Base libraries +ilmbase: +ilmbase: +ilmbase: +ilmbase: +ilmbase: +ilmbase: +ilmbase: +ilmbase: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/imlib2/imlib2.SlackBuild b/media/libs/imlib2/imlib2.SlackBuild index eaa49e71..93e3c18f 100755 --- a/media/libs/imlib2/imlib2.SlackBuild +++ b/media/libs/imlib2/imlib2.SlackBuild @@ -1,106 +1,136 @@ #!/bin/bash # -# imlib2.SlackBuild 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 any later version. +# imlib2.SlackBuild 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 any later version. # -# imlib2.SlackBuild 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. +# imlib2.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for imlib2 -# by rhatto at riseup.net +# slackbuild for imlib2, by Alexandre Vieira de Souza +# requires: +# tested: imlib2-1.4.1 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building imlib2 are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="imlib2" +# Set variables +CWD="$(pwd)" +SRC_NAME="imlib2" +PKG_NAME="imlib2" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" -BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.4.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/imlib2" ]; then - cd $SRC_DIR/e17/libs/imlib2 - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/imlib2 || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/imlib2 +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://prdownloads.sourceforge.net/enlightenment/$SRC" -cd $TMP/package-$PACKAGE +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| -imlib2: imlib2 + |-----handy-ruler-------------------------------------------------------| +imlib2: imlib2 by Slack.Sarava imlib2: imlib2: This is the Imlib 2 library - a library that does image file loading imlib2: and saving as well as rendering, manipulation, arbitrary polygon @@ -108,25 +138,16 @@ imlib2: support, etc. imlib2: imlib2: imlib2: +imlib2: by avs imlib2: imlib2: -imlib2: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" +EODESC -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/ladspa/ladspa.SlackBuild b/media/libs/ladspa/ladspa.SlackBuild index 1929185c..432f9d63 100755 --- a/media/libs/ladspa/ladspa.SlackBuild +++ b/media/libs/ladspa/ladspa.SlackBuild @@ -1,121 +1,175 @@ #!/bin/bash # -# ladspa.SlackBuild 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 any later version. +# ladspa.SlackBuild 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 any later version. # -# ladspa.SlackBuild 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. +# ladspa.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for ladspa -# by rhatto at riseup.net +# slackbuild for ladspa, by Silvio Rhatto +# requires: +# tested: ladspa-1.13 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building ladspa are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="ladspa" +# Set variables +CWD="$(pwd)" +SRC_NAME="ladspa_sdk" +PKG_NAME="ladspa" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.13} +SRC_VERSION=${VERSION:=1.13} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 -ERROR_TAR=37; ERROR_MKPKG=38 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="tgz" -SRC="$PACKAGE"_sdk_"$VERSION.$PACKAGE_EXT" -URL="http://www.ladspa.org/download/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME"_"$VERSION.tgz" +URL="http://www.ladspa.org/download/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd "$PACKAGE"_sdk +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi +# Configure cd src - -# for mkdirhier -export PATH="$PATH:/usr/X11R6/bin/" +export PATH="$PATH:/usr/X11R6/bin/" # for mkdirhier sed -e 's/\/usr\/local\/lib\/ladspa\//\/usr\/lib\/ladspa\//' \ -e 's/\/usr\/local\/bin\//\/usr\/bin\//' makefile > makefile.tmp || exit $ERROR_CONF -echo "PREFIX = $TMP/package-$PACKAGE" >> makefile.tmp || exit $ERROR_CONF +echo "PREFIX = $PKG" >> makefile.tmp || exit $ERROR_CONF sed -e 's/$(INSTALL_PLUGINS_DIR)/$(PREFIX)\/$(INSTALL_PLUGINS_DIR)/g' \ -e 's/$(INSTALL_INCLUDE_DIR)/$(PREFIX)\/$(INSTALL_INCLUDE_DIR)/g' \ -e 's/$(INSTALL_BINARY_DIR)/$(PREFIX)\/$(INSTALL_BINARY_DIR)/g' makefile.tmp > makefile || exit $ERROR_CONF -make || exit $ERROR_MAKE -make install || exit $ERROR_INSTALL -cd .. - -CWD="`pwd`" +# Compile +make $NUMJOBS || exit $ERROR_MAKE -cd $TMP/package-$PACKAGE +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL +cd .. -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="README doc/*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| ladspa: ladspa (linux audio developer's plugin API) ladspa: ladspa: The Linux Audio Developer's Simple Plugin API (LADSPA) attempts to @@ -127,20 +181,13 @@ ladspa: ladspa: ladspa: ladspa: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="COPYING *html" - -for file in $DOCS; do - cp $CWD/docs/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/libdv/libdv.SlackBuild b/media/libs/libdv/libdv.SlackBuild index 7941a2e8..75b76578 100755 --- a/media/libs/libdv/libdv.SlackBuild +++ b/media/libs/libdv/libdv.SlackBuild @@ -1,116 +1,167 @@ #!/bin/bash # -# libdv.SlackBuild 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 any later version. +# libdv.SlackBuild 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 any later version. # -# libdv.SlackBuild 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. +# libdv.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for libdv -# by rafael at riseup.net +# slackbuild for libdv, by Silvio Rhatto +# requires: +# tested: libdv-1.0.0 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building libdv are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="libdv" +# Set variables +CWD="$(pwd)" +SRC_NAME="libdv" +PKG_NAME="libdv" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.0.0} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.0.0} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 - export LDFLAGS="$LDFLAGS -L/lib64 -L/usr/lib64 -fPIC" - export CFLAGS="$CFLAGS -fPIC" -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://superb-west.dl.sourceforge.net/sourceforge/libdv/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi - - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/libdv/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -# apply debian patches, if exist -if [ -d "debian/patches" ]; then - for file in `ls debian/patches/*patch`; do - patch -p1 < $file +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING COPYRIGHT ChangeLog NEWS README README.dvconnect README.encoder TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------------| libdv: libdv (libdv is a software codec for DV video) libdv: libdv: The Quasar DV codec (libdv) is a software codec for DV video, the @@ -122,21 +173,13 @@ libdv: libdv: http://libdv.sourceforge.net/ libdv: libdv: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS COPYING COPYRIGHT ChangeLog INSTALL NEWS README README.dvconnect README.encoder TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -# install script -echo '( chroot . /sbin/ldconfig )' > install/doinst.sh - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/libdvbpsi/libdvbpsi.SlackBuild b/media/libs/libdvbpsi/libdvbpsi.SlackBuild new file mode 100755 index 00000000..59ef08e9 --- /dev/null +++ b/media/libs/libdvbpsi/libdvbpsi.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# libdvbpsi.SlackBuild 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 any later version. +# +# libdvbpsi.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for libdvbpsi, by Rafael Diniz +# requires: +# tested: libdvbpsi-0.1.6 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="libdvbpsi5" +PKG_NAME="libdvbpsi" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.1.6} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://download.videolan.org/pub/libdvbpsi/0.1.6/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------| +libdvbpsi: libdvbpsi (a simple library for DVB PSI) +libdvbpsi: +libdvbpsi: +libdvbpsi: Libdvbpsi is a simple library designed for decoding and +libdvbpsi: generation of MPEG TS and DVB PSI tables. +libdvbpsi: +libdvbpsi: +libdvbpsi: +libdvbpsi: +libdvbpsi: http://www.videolan.org/developers/libdvbpsi.html +libdvbpsi: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/libexif-gtk/libexif-gtk.SlackBuild b/media/libs/libexif-gtk/libexif-gtk.SlackBuild index b96dd48e..0d683aed 100755 --- a/media/libs/libexif-gtk/libexif-gtk.SlackBuild +++ b/media/libs/libexif-gtk/libexif-gtk.SlackBuild @@ -1,111 +1,167 @@ #!/bin/bash # -# libexif-gtk.SlackBuild 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 any later version. +# libexif-gtk.SlackBuild 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 any later version. # -# libexif-gtk.SlackBuild 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. +# libexif-gtk.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for libexif-gtk -# by rhatto at riseup.net +# slackbuild for libexif-gtk, by Silvio Rhatto +# requires: +# tested: libexif-gtk-0.3.5 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building libexif-gtk are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="libexif-gtk" +# Set variables +CWD="$(pwd)" +SRC_NAME="libexif-gtk" +PKG_NAME="libexif-gtk" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.3.5} +SRC_VERSION=${VERSION:=0.3.5} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="bz2" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/libexif/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/libexif/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo http://ftp.de.debian.org/debian/pool/main/libe/libexif-gtk/libexif-gtk_0.3.5-3.diff.gz | grep -q -v "PATCH URLS"; then + for patch_url in http://ftp.de.debian.org/debian/pool/main/libe/libexif-gtk/libexif-gtk_0.3.5-3.diff.gz; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -# see http://blog.gmane.org/gmane.comp.graphics.libexif.devel/month=20060101 -export CFLAGS="-I/usr/include/libexif/" - -./configure --prefix=/usr --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------| libexif-gtk: libexif-gtk (library to read and write EXIF data) libexif-gtk: libexif-gtk: Libexif reads and writes EXIF metainformation from and to image @@ -117,20 +173,13 @@ libexif-gtk: libexif-gtk: libexif-gtk: libexif-gtk: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/libgphoto2/libgphoto2.SlackBuild b/media/libs/libgphoto2/libgphoto2.SlackBuild index 83239a68..aaee17d6 100755 --- a/media/libs/libgphoto2/libgphoto2.SlackBuild +++ b/media/libs/libgphoto2/libgphoto2.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for libgphoto2, by Rudson R. Alves # requires: -# tested: libgphoto2-2.4.0 +# tested: libgphoto2-2.4.2 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="libgphoto2" PKG_NAME="libgphoto2" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.4.0} +SRC_VERSION=${VERSION:=2.4.2} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/media/libs/libiec61883/libiec61883.SlackBuild b/media/libs/libiec61883/libiec61883.SlackBuild index 3c88da73..3ff5578b 100755 --- a/media/libs/libiec61883/libiec61883.SlackBuild +++ b/media/libs/libiec61883/libiec61883.SlackBuild @@ -1,107 +1,167 @@ #!/bin/bash # -# libiec61883.SlackBuild 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 any later version. +# libiec61883.SlackBuild 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 any later version. # -# libiec61883.SlackBuild 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. +# libiec61883.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for libiec61883 -# by rafael at riseup.net +# slackbuild for libiec61883, by Silvio Rhatto +# requires: libraw1394 +# tested: libiec61883-1.1.0 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building libiec61883 are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="libiec61883" +# Set variables +CWD="$(pwd)" +SRC_NAME="libiec61883" +PKG_NAME="libiec61883" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.1.0} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.1.0} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --with-docdir=/usr/doc/$PKG_NAME-$VERSION"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://www.linux1394.org/dl/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.linux1394.org/dl/$SRC" -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------| libiec61883: libiec61883 (libiec61883 is Firewire video related library) libiec61883: libiec61883: This library is an implementation of IEC 61883, part 1 (CIP, plug @@ -113,18 +173,13 @@ libiec61883: libiec61883: libiec61883: http://www.linux1394.org/ libiec61883: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS COPYING ChangeLog INSTALL NEWS README;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/libiec61883/slack-required b/media/libs/libiec61883/slack-required index 8bc743d3..af18a966 100644 --- a/media/libs/libiec61883/slack-required +++ b/media/libs/libiec61883/slack-required @@ -1 +1,4 @@ -libraw1394 +# Dependency list to libiec61883 +# +# dependency [condition] [version]] +libraw1394 diff --git a/media/libs/libjackasyn/libjackasyn.SlackBuild b/media/libs/libjackasyn/libjackasyn.SlackBuild index ce0e4219..6139a884 100755 --- a/media/libs/libjackasyn/libjackasyn.SlackBuild +++ b/media/libs/libjackasyn/libjackasyn.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# libjackasyn.SlackBuild 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 any later version. +# libjackasyn.SlackBuild 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 any later version. # -# libjackasyn.SlackBuild 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. +# libjackasyn.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for libjackasyn -# by rhatto at riseup.net +# slackbuild for libjackasyn, by Silvio Rhatto +# requires: jack +# tested: libjackasyn-0.13 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building libjackasyn are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="libjackasyn" +# Set variables +CWD="$(pwd)" +SRC_NAME="libjackasyn" +PKG_NAME="libjackasyn" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.13} +SRC_VERSION=${VERSION:=0.13} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://gige.xdv.org/libjackasyn/download/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://gige.xdv.org/libjackasyn/download/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF -CWD="`pwd`" +# Compile +make $NUMJOBS || exit $ERROR_MAKE -cd $TMP/package-$PACKAGE +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) -mkdir install -cat << EOF > install/slack-desc +# Install documentation +DOCS="AUTHORS CHANGELOG COPYING README TODO WORKING" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------| libjackasyn: libjackasyn libjackasyn: libjackasyn: libjackasyn is a library that allows you to use programs written @@ -114,20 +173,13 @@ libjackasyn: libjackasyn: libjackasyn: libjackasyn: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS CHANGELOG COPYING README TODO WORKING" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/libjackasyn/slack-required b/media/libs/libjackasyn/slack-required index b0b1dbc6..831cf00d 100644 --- a/media/libs/libjackasyn/slack-required +++ b/media/libs/libjackasyn/slack-required @@ -1 +1,4 @@ -jack +# Dependency list to libjackasyn +# +# dependency [condition] [version]] +jack diff --git a/media/libs/libkipi/libkipi.SlackBuild b/media/libs/libkipi/libkipi.SlackBuild index 98ded78c..e78a0d4a 100755 --- a/media/libs/libkipi/libkipi.SlackBuild +++ b/media/libs/libkipi/libkipi.SlackBuild @@ -10,9 +10,9 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for libkipi, by Rudson R. Alves # requires: @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,20 +123,20 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. |-----handy-ruler------------------------------------------------------| libkipi: libkipi by Slack.Sarava libkipi: -libkipi: -libkipi: -libkipi: -libkipi: -libkipi: +libkipi: Kipi (KDE Image Plugin Interface) is an effort to develop a common +libkipi: plugin structure for Digikam, KimDaBa, Showimg and Gwenview. Its aim +libkipi: is to share image plugins among graphic applications. Kipi is based +libkipi: on the old digiKam plugins implementation and is maintened by digiKam +libkipi: team. libkipi: libkipi: libkipi: diff --git a/media/libs/liblo/liblo.SlackBuild b/media/libs/liblo/liblo.SlackBuild index 906f9b5a..f701cd7f 100755 --- a/media/libs/liblo/liblo.SlackBuild +++ b/media/libs/liblo/liblo.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# liblo.SlackBuild 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 any later version. +# liblo.SlackBuild 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 any later version. # -# liblo.SlackBuild 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. +# liblo.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for liblo -# by rhatto at riseup.net +# slackbuild for liblo, by Silvio Rhatto +# requires: +# tested: liblo-0.25 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building liblo are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="liblo" +# Set variables +CWD="$(pwd)" +SRC_NAME="liblo" +PKG_NAME="liblo" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.23} +SRC_VERSION=${VERSION:=0.25} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/$PACKAGE/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/liblo/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF -CWD="`pwd`" +# Compile +make $NUMJOBS || exit $ERROR_MAKE -cd $TMP/package-$PACKAGE +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) -mkdir install -cat << EOF > install/slack-desc +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------------| liblo: liblo liblo: liblo: LibLO is a lightweight library for handling the sending and @@ -114,20 +173,13 @@ liblo: liblo: liblo: liblo: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="AUTHORS COPYING ChangeLog NEWS README TODO" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/liblrdf/liblrdf.SlackBuild b/media/libs/liblrdf/liblrdf.SlackBuild index 7ce34e55..7bc71141 100755 --- a/media/libs/liblrdf/liblrdf.SlackBuild +++ b/media/libs/liblrdf/liblrdf.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# liblrdf.SlackBuild 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 any later version. +# liblrdf.SlackBuild 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 any later version. # -# liblrdf.SlackBuild 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. +# liblrdf.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for liblrdf -# by rhatto at riseup.net +# slackbuild for liblrdf, by Silvio Rhatto +# requires: raptor ladspa +# tested: liblrdf-0.4.0 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building liblrdf are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="liblrdf" +# Set variables +CWD="$(pwd)" +SRC_NAME="liblrdf" +PKG_NAME="liblrdf" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.4.0} +SRC_VERSION=${VERSION:=0.4.0} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/lrdf/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/lrdf/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------------| liblrdf: liblrdf (lightweight RDF) liblrdf: liblrdf: Liblrdf is a lightweight RDF library with special support for @@ -114,18 +173,13 @@ liblrdf: liblrdf: liblrdf: liblrdf: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS COPYING ChangeLog INSTALL NEWS README; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/liblrdf/slack-required b/media/libs/liblrdf/slack-required index 6c92f463..9791d715 100644 --- a/media/libs/liblrdf/slack-required +++ b/media/libs/liblrdf/slack-required @@ -1 +1,5 @@ -ladspa +# Dependency list to liblrdf +# +# dependency [condition] [version]] +raptor +ladspa diff --git a/media/libs/libopenraw/libopenraw.SlackBuild b/media/libs/libopenraw/libopenraw.SlackBuild new file mode 100644 index 00000000..bdd7ca1b --- /dev/null +++ b/media/libs/libopenraw/libopenraw.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# libopenraw.SlackBuild 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 any later version. +# +# libopenraw.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for libopenraw, by Alexandre Vieira de Souza +# requires: boost +# tested: libopenraw-0.0.5 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="libopenraw" +PKG_NAME="libopenraw" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.0.5} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://libopenraw.freedesktop.org/download/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------------| +libopenraw: libopenraw by Slack.Sarava +libopenraw: +libopenraw: libopenraw is an ongoing project to provide a free software +libopenraw: implementation for camera RAW files decoding. One of the main +libopenraw: reasons is that dcraw is not suited for easy integration into +libopenraw: applications, and there is a need for an easy to use API to +libopenraw: build free software digital image processing application. +libopenraw: It also has the goal to address missing feature from dcraw +libopenraw: like meta-data decoding and easy thumbnail extraction. +libopenraw: +libopenraw: by avs +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/libopenraw/slack-required b/media/libs/libopenraw/slack-required new file mode 100644 index 00000000..c9ddde0d --- /dev/null +++ b/media/libs/libopenraw/slack-required @@ -0,0 +1,4 @@ +# Dependency list to libopenraw +# +# dependency [condition] [version]] +boost >= 1.34.1 diff --git a/media/libs/libquicktime/libquicktime.SlackBuild b/media/libs/libquicktime/libquicktime.SlackBuild index 48be1984..4f92a32a 100755 --- a/media/libs/libquicktime/libquicktime.SlackBuild +++ b/media/libs/libquicktime/libquicktime.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# libquicktime.SlackBuild 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 any later version. +# libquicktime.SlackBuild 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 any later version. # -# libquicktime.SlackBuild 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. +# libquicktime.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for libquicktime -# by rafael at riseup.net +# slackbuild for libquicktime, by Silvio Rhatto +# requires: libx264 +# tested: libquicktime-1.0.3 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building libquicktime are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="libquicktime" +# Set variables +CWD="$(pwd)" +SRC_NAME="libquicktime" +PKG_NAME="libquicktime" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.0.2} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.0.3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--with-docdir=/usr/doc/$PKG_NAME-$PKG_VERSION"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://ufpr.dl.sourceforge.net/sourceforge/libquicktime/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/libquicktime/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -# the current patch for 0.9.10 is required for newer libx264 -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --enable-gpl --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------| libquicktime: libquicktime (libquicktime is a library for quicktime/avi/mp4 files) libquicktime: libquicktime: libquicktime is a library for reading and writing quicktime files. @@ -114,18 +173,13 @@ libquicktime: libquicktime: libquicktime: http://libquicktime.sourceforge.net/ libquicktime: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS COPYING ChangeLog INSTALL NEWS README TODO;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/libquicktime/slack-required b/media/libs/libquicktime/slack-required index 3e69b7cf..337e3583 100644 --- a/media/libs/libquicktime/slack-required +++ b/media/libs/libquicktime/slack-required @@ -1 +1,4 @@ -libx264 +# Dependency list to libquicktime +# +# dependency [condition] [version]] +libx264 diff --git a/media/libs/libsamplerate/libsamplerate.SlackBuild b/media/libs/libsamplerate/libsamplerate.SlackBuild index fb378797..26d9cd29 100755 --- a/media/libs/libsamplerate/libsamplerate.SlackBuild +++ b/media/libs/libsamplerate/libsamplerate.SlackBuild @@ -1,107 +1,167 @@ #!/bin/bash # -# libsamplerate.SlackBuild 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 any later version. +# libsamplerate.SlackBuild 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 any later version. # -# libsamplerate.SlackBuild 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. +# libsamplerate.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for libsamplerate -# by rafael at riseup.net +# slackbuild for libsamplerate, by Silvio Rhatto +# requires: +# tested: libsamplerate-0.1.4 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building libsamplerate are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="libsamplerate" +# Set variables +CWD="$(pwd)" +SRC_NAME="libsamplerate" +PKG_NAME="libsamplerate" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.1.2} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=0.1.4} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://www.mega-nerd.com/SRC/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.mega-nerd.com/SRC/$SRC" -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------| libsamplerate: libsamplerate (libsamplerate is library for samplerate conversions) libsamplerate: libsamplerate: Secret Rabbit Code (aka libsamplerate) is a Sample Rate Converter @@ -113,18 +173,13 @@ libsamplerate: downsampling by a factor of 256 to upsampling by the same factor. libsamplerate: Arbitrary in this case means that the ratio of input and output libsamplerate: sample rates can be an irrational number. The conversion ratio can libsamplerate: also vary with time for speeding up and slowing down effects. -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS COPYING ChangeLog INSTALL NEWS README;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/libsndfile/libsndfile.SlackBuild b/media/libs/libsndfile/libsndfile.SlackBuild index cee2454d..80422164 100755 --- a/media/libs/libsndfile/libsndfile.SlackBuild +++ b/media/libs/libsndfile/libsndfile.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# libsndfile.SlackBuild 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 any later version. +# libsndfile.SlackBuild 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 any later version. # -# libsndfile.SlackBuild 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. +# libsndfile.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for libsndfile -# by rafael at riseup.net +# slackbuild for libsndfile, by Silvio Rhatto +# requires: +# tested: libsndfile-1.0.17 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building libsndfile are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="libsndfile" +# Set variables +CWD="$(pwd)" +SRC_NAME="libsndfile" +PKG_NAME="libsndfile" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.0.17} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.0.17} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--disable-flac --sysconfdir=/etc --with-docdir=/usr/doc/$PKG_NAME-$VERSION"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://www.mega-nerd.com/libsndfile/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.mega-nerd.com/libsndfile/$SRC" -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -# lets disable flac, as the build is broke -./configure --disable-flac --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------| libsndfile: libsndfile (libsndfile is a library for audio manipulation) libsndfile: libsndfile: Libsndfile is a C library for reading and writing files containing @@ -114,18 +173,13 @@ libsndfile: libsndfile: libsndfile: http://www.mega-nerd.com/libsndfile/ libsndfile: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS COPYING ChangeLog INSTALL NEWS README TODO;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/libx264/libx264.SlackBuild b/media/libs/libx264/libx264.SlackBuild index 8c2957a1..eb2c4e20 100755 --- a/media/libs/libx264/libx264.SlackBuild +++ b/media/libs/libx264/libx264.SlackBuild @@ -1,122 +1,167 @@ #!/bin/bash # -# libx264.SlackBuild 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 any later version. +# libx264.SlackBuild 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 any later version. # -# libx264.SlackBuild 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. +# libx264.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for libx264 -# by rafael at riseup.net +# slackbuild for libx264, by Silvio Rhatto +# requires: yasm +# tested: libx264-20080714 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building libx264 are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="libx264" +# Set variables +CWD="$(pwd)" +SRC_NAME="libx264" +PKG_NAME="libx264" ARCH=${ARCH:=i486} -VERSION=${VERSION:=20080512} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=20080729} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--enable-shared --enable-visualize --enable-pic"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="bz2" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="ftp://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-$VERSION-2245.tar.$PACKAGE_EXT" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Dowload source if necessary +SRC="x264-snapshot-$VERSION-2245.tar.bz2" +URL="ftp://ftp.videolan.org/pub/videolan/x264/snapshots/$SRC" -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC - -mv x264-snapshot-$VERSION-2245 $PACKAGE-$VERSION - -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -# These hacks are needed because x264 do not correcly accepts CFLAGS not ac_options for optimized code. -# REMOVED!!! - rafael2k -# if [ "$ARCH" == "i486" ] || [ "$ARCH" == "i386" ]; then -# patch -p0 < $CWD/$PACKAGE-nommxfix.patch -# fi - -# if [ "$ARCH" == "powerpc" ] && [ "$HAVE_ALTIVEC" != "true" ]; then -# patch -p0 < $CWD/$PACKAGE-noaltivecfix.patch -# fi - - -./configure --prefix=/usr --enable-shared --enable-visualize --enable-pic --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------------| libx264: libx264 (x264 is a free library for encoding H264/AVC video streams) libx264: libx264: x264 is a free library for encoding H264/AVC video streams. The code @@ -128,18 +173,13 @@ libx264: libx264: libx264: http://developers.videolan.org/x264.html libx264: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS COPYING;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/libx264/slack-required b/media/libs/libx264/slack-required index eff8d5c7..5b987a1e 100644 --- a/media/libs/libx264/slack-required +++ b/media/libs/libx264/slack-required @@ -1 +1,4 @@ -yasm +# Dependency list to libx264 +# +# dependency [condition] [version]] +yasm diff --git a/media/libs/openexr/openexr.SlackBuild b/media/libs/openexr/openexr.SlackBuild index e4362b16..6b0654ee 100755 --- a/media/libs/openexr/openexr.SlackBuild +++ b/media/libs/openexr/openexr.SlackBuild @@ -1,113 +1,167 @@ #!/bin/bash # -# openexr.SlackBuild 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 any later version. +# openexr.SlackBuild 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 any later version. # -# openexr.SlackBuild 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. +# openexr.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for OpenEXR -# by rafael at riseup.net +# slackbuild for openexr, by Silvio Rhatto +# requires: ilmbase +# tested: openexr-1.6.1 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building OpenEXR are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="openexr" +# Set variables +CWD="$(pwd)" +SRC_NAME="openexr" +PKG_NAME="openexr" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.4.0a} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.6.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--with-docdir=/usr/doc/$PKG_NAME-$PKG_VERSION"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://download.savannah.nongnu.org/releases/openexr/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://download.savannah.gnu.org/releases/openexr/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC - -# small hack for version 1.4.0 -if [ "$VERSION" == "1.4.0a" ]; then - mv openexr-1.4.0 openexr-1.4.0a +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL LICENSE NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------------| openexr: OpenEXR (OpenEXR set of libraries for higher color fidelity images) openexr: openexr: OpenEXR supports several lossless compression methods, some of which @@ -119,18 +173,13 @@ openexr: openexr: openexr: http://www.openexr.com/ openexr: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS COPYING ChangeLog INSTALL LICENSE NEWS README;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/openexr/slack-required b/media/libs/openexr/slack-required new file mode 100644 index 00000000..d7c3a860 --- /dev/null +++ b/media/libs/openexr/slack-required @@ -0,0 +1,4 @@ +# Dependency list to openexr +# +# dependency [condition] [version]] +ilmbase diff --git a/media/libs/raptor/raptor.SlackBuild b/media/libs/raptor/raptor.SlackBuild index fba07f18..8f3cbb9e 100755 --- a/media/libs/raptor/raptor.SlackBuild +++ b/media/libs/raptor/raptor.SlackBuild @@ -1,108 +1,211 @@ #!/bin/bash # -# raptor.SlackBuild 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 any later version. +# raptor.SlackBuild 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 any later version. # -# raptor.SlackBuild 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. +# raptor.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for raptor -# by rhatto at riseup.net +# slackbuild for raptor, by Silvio Rhatto +# requires: +# tested: raptor-1.4.18 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building raptor are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="raptor" +# Set variables +CWD="$(pwd)" +SRC_NAME="raptor" +PKG_NAME="raptor" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.4.14} +SRC_VERSION=${VERSION:=1.4.18} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" URL="http://download.librdf.org/source/$SRC" -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" +# Import minimized signing key from +if echo http://purl.org/net/dajobe/gnupg.asc | grep -q -v "SIGNING KEY URL"; then + lynx -dump http://purl.org/net/dajobe/gnupg.asc | gpg --import || exit $ERROR_GPG +elif echo [[SIGNING KEY ID]] | grep -q -v "SIGNING KEY ID"; then + gpg --recv-keys [[SIGNING KEY ID]] || exit $ERROR_GPG else - tarflag="z" + gpg --import << EOKEY || exit $ERROR_GPG +[[SIGNING KEY]] +EOKEY fi -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" +# Download source's signature if necessary and check it +if echo http://download.librdf.org/source/raptor-1.4.18.tar.gz.asc | grep -q -v "SIGNING URL"; then + SIGNATURE="`basename http://download.librdf.org/source/raptor-1.4.18.tar.gz.asc`" + if [ ! -s "$SRC_DIR/$SIGNATURE" ]; then + wget "http://download.librdf.org/source/raptor-1.4.18.tar.gz.asc" -O "$SRC_DIR/$SIGNATURE" || exit $ERROR_WGET + fi +else + if [ -s "$SRC_DIR/$SRC.sig" ]; then + SIGNATURE="$SRC.sig" + elif [ -s "$SRC_DIR/$SRC.asc" ]; then + SIGNATURE="$SRC.asc" + else + echo Trying to get signature file from $URL.sig... + if wget "$URL.sig" -O "$SRC_DIR/$SRC.sig"; then + SIGNATURE="$SRC.sig" + else + rm $SRC_DIR/$SRC.sig + echo Trying to get signature file from $URL.asc... + if wget "$URL.asc" -O "$SRC_DIR/$SRC.asc"; then + SIGNATURE="$SRC.asc" + else + rm $SRC_DIR/$SRC.asc + echo "Error getting source's signature file" + exit $ERROR_GPG + fi + fi + fi fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +echo Checking $SRC_DIR/$SRC with gpg using $SRC_DIR/$SIGNATURE... +gpg --verify "$SRC_DIR/$SIGNATURE" "$SRC_DIR/$SRC" || exit $ERROR_GPG +echo Success. + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING* ChangeLog* LICENSE* NEWS* NOTICE README*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| raptor: raptor (RDF parser/serializer library) raptor: raptor: Raptor is a free software / Open Source C library that provides a @@ -114,18 +217,13 @@ raptor: The serializing syntaxes ar eRDF/XML, N-Triples and RSS 1.0. raptor: raptor: raptor: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS COPYING* ChangeLog* INSTALL* LICENSE* NEWS* NOTICE README*; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/smpeg/smpeg.SlackBuild b/media/libs/smpeg/smpeg.SlackBuild index 6143a65d..635922be 100644 --- a/media/libs/smpeg/smpeg.SlackBuild +++ b/media/libs/smpeg/smpeg.SlackBuild @@ -77,11 +77,17 @@ mkdir -p "$REPOS" || exit $ERROR_MKDIR mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Get svn source code -[ "`find "$SRC_DIR/" -name .svn`" != "" ] && SVN_ACTION="update" || SVN_ACTION="checkout" cd "$SRC_DIR" -svn $SVN_ACTION svn://svn.icculus.org/smpeg/trunk $PKG_SRC || exit $ERROR_VCS -SND_DIR="`ls -l | awk '/^d/ { print $NF }'`" -cd $SND_DIR +SND_DIR="`basename svn://svn.icculus.org/smpeg/trunk`" + +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout svn://svn.icculus.org/smpeg/trunk $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi + PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" # Copy svn source diff --git a/media/libs/speex/speex.SlackBuild b/media/libs/speex/speex.SlackBuild index 9b861d72..6fc50b95 100755 --- a/media/libs/speex/speex.SlackBuild +++ b/media/libs/speex/speex.SlackBuild @@ -1,145 +1,185 @@ #!/bin/bash # -# got it from http://ftp.cgu.edu.tw/Mirror/linuxpackages/Slackware-10.2-x86_64/pcxz/speex/speex.SlackBuild -# small changes by rhatto +# speex.SlackBuild 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 any later version. +# +# speex.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for speex, by Silvio Rhatto +# requires: +# tested: speex-1.2beta3 # -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -PACKAGE="speex" -VERSION=${VERSION:=1.0.5} +# Set variables +CWD="$(pwd)" +SRC_NAME="speex" +PKG_NAME="speex" ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.2beta3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} -SRC_DIR=${SRC:=$CWD} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://downloads.us.xiph.org/releases/speex/$SRC" - -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi - -if [ "$ARCH" == "i386" ]; then +if [ "$ARCH" = "i386" ]; then SLKCFLAGS="-O2 -march=i386 -mcpu=i686" -elif [ "$ARCH" == "i486" ]; then +elif [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mcpu=i686" -elif [ "$ARCH" == "s390" ]; then +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" -elif [ "$ARCH" == "x86_64" ]; then +elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -if [ "$ARCH" == "x86_64" ]; then - LIBDIR="/usr/lib64" -else - LIBDIR="/usr/lib" -fi +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -TMP="$TMP/$PACKAGE" -PKG=$TMP/package-$PACKAGE -rm -rf $TMP -mkdir -p $PKG -cd $TMP +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -rm -rf speex-$VERSION -tar xvf$tarflag $SRC_DIR/speex-$VERSION.tar.gz -cd speex-$VERSION +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -chown -R root.root . -find . -perm 777 -exec chmod 755 {} \; -find . -perm 664 -exec chmod 644 {} \; +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.xiph.org/releases/speex/$SRC" -LDFLAGS=-L$LIBDIR \ -CFLAGS="$SLKCFLAGS" \ -CXXFLAGS="$SLKCFLAGS" \ -./configure --prefix=/usr --sysconfdir=/etc --disable-debug --libdir=$LIBDIR \ - --program-prefix="" --program-suffix="" $ARCH-slackware-linux -make || exit 32 -make install DESTDIR=$PKG - -( cd $PKG - for dn in usr usr/local usr/X11R6 - do - for dn2 in bin sbin - do - for file in `find $dn/$dn2 -type f 2> /dev/null` - do - chown root.bin $PKG/$file /$file 2> /dev/null - done - done - done -) -( cd $PKG - for dn in usr usr/local usr/X11R6 - do - for dn2 in man share/man info share/info - do - for file in `find $dn/$dn2 -type f 2> /dev/null` - do - gzip -9f $PKG/$file /$file 2> /dev/null - done - done - done -) +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi -( cd $PKG - find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null - find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -) +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -mkdir -p $PKG/usr/doc/speex-$VERSION -cp -a AUTHORS COPYING ChangeLog INSTALL NEWS README TODO $PKG/usr/doc/speex-$VERSION -mkdir -p $PKG/install +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) -cat << EOF > $PKG/install/slack-desc +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------------| speex: speex speex: -speex: The Speex is a patent-free, Open Source/Free Software voice codec. -speex: -speex: -speex: +speex: Speex is an Open Source/Free Software patent-free audio +speex: compression format designed for speech. The Speex Project +speex: aims to lower the barrier of entry for voice applications +speex: by providing a free alternative to expensive proprietary +speex: speech codecs. Moreover, Speex is well-adapted to Internet +speex: applications and provides useful features that are not +speex: present in most other codecs. speex: speex: -speex: -speex: -speex: -EOF +EODESC -if [ -f $CWD/slack-required ]; then - cat $CWD/slack-required > $PKG/install/slack-required -fi - -cd $PKG -makepkg -l y -c n $REPOS/speex-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/libs/unicap/unicap.SlackBuild b/media/libs/unicap/unicap.SlackBuild new file mode 100755 index 00000000..ddc46899 --- /dev/null +++ b/media/libs/unicap/unicap.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# unicap.SlackBuild 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 any later version. +# +# unicap.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for unicap, by Rafael Diniz +# requires: +# tested: unicap-0.2.23 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="unicap" +PKG_NAME="unicap" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.2.23} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://unicap-imaging.org/downloads/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------------| +unicap: unicap (video capture library) +unicap: +unicap: Unicap provides a uniform interface to video capture +unicap: devices. It allows applications to use any supported +unicap: video capture device via a single API. +unicap: +unicap: +unicap: +unicap: +unicap: http://unicap-imaging.org/ +unicap: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/libs/zvbi/zvbi.SlackBuild b/media/libs/zvbi/zvbi.SlackBuild new file mode 100755 index 00000000..f0d8ca3b --- /dev/null +++ b/media/libs/zvbi/zvbi.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# zvbi.SlackBuild 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 any later version. +# +# zvbi.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for zvbi, by Rafael Diniz +# requires: +# tested: zvbi-0.2.30 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="zvbi" +PKG_NAME="zvbi" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.2.30} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ufpr.dl.sourceforge.net/sourceforge/zapping/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------------------| +zvbi: zvbi by Slack.Sarava +zvbi: +zvbi: The ZVBI library provides routines to access raw VBI sampling devices, +zvbi: a versatile raw VBI bit slicer, decoders for various data services and +zvbi: basic search, render and export functions for text pages. The library +zvbi: was written for the Zapping TV viewer and Zapzilla Teletext browser. +zvbi: +zvbi: +zvbi: +zvbi: +zvbi: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/plugins/swfdec-mozilla/slack-required b/media/plugins/swfdec-mozilla/slack-required index e7908c18..919eba29 100644 --- a/media/plugins/swfdec-mozilla/slack-required +++ b/media/plugins/swfdec-mozilla/slack-required @@ -1 +1,4 @@ -swfdec +# Dependency list to swfdec-mozilla +# +# dependency [condition] [version]] +swfdec diff --git a/media/plugins/swfdec-mozilla/swfdec-mozilla.SlackBuild b/media/plugins/swfdec-mozilla/swfdec-mozilla.SlackBuild index b2a852d7..9d4ffec4 100755 --- a/media/plugins/swfdec-mozilla/swfdec-mozilla.SlackBuild +++ b/media/plugins/swfdec-mozilla/swfdec-mozilla.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# swfdec-mozilla.SlackBuild 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 any later version. +# swfdec-mozilla.SlackBuild 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 any later version. # -# swfdec-mozilla.SlackBuild 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. +# swfdec-mozilla.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for swfdec-mozilla -# by rhatto at riseup.net +# slackbuild for swfdec-mozilla, by Silvio Rhatto +# requires: swfdec +# tested: swfdec-mozilla-0.7.4 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building swfdec-mozilla are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="swfdec-mozilla" +# Set variables +CWD="$(pwd)" +SRC_NAME="swfdec-mozilla" +PKG_NAME="swfdec-mozilla" ARCH=${ARCH:=i486} -VERSION=${0.6.0} +SRC_VERSION=${VERSION:=0.7.4} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://swfdec.freedesktop.org/download/swfdec-mozilla/0.5/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://swfdec.freedesktop.org/download/swfdec-mozilla/0.7/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF -CWD="`pwd`" +# Compile +make $NUMJOBS || exit $ERROR_MAKE -cd $TMP/package-$PACKAGE +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) -mkdir install -cat << EOF > install/slack-desc +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-----------------------------------------------| swfdec-mozilla: swfdec-mozilla swfdec-mozilla: swfdec-mozilla: Swfdec-Mozilla contains a plugin for Mozilla browsers that uses the @@ -114,20 +173,13 @@ swfdec-mozilla: swfdec-mozilla: swfdec-mozilla: swfdec-mozilla: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="AUTHORS COPYING ChangeLog NEWS README" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/plugins/swfdec/slack-required b/media/plugins/swfdec/slack-required index 4c871f38..afa09d6d 100644 --- a/media/plugins/swfdec/slack-required +++ b/media/plugins/swfdec/slack-required @@ -1,3 +1,13 @@ -liboil -ffmpeg -libsoup +# Dependency list to swfdec +# +# dependency [condition] [version]] +liboil +ffmpeg +libsoup >= 2.4.0 +glib2 >= 2.16.0 +cairo >= 1.6.0 +gstreamer +gst-ffmpeg +gst-plugins-base +gst-plugins-good +gst-plugins-ugly diff --git a/media/plugins/swfdec/swfdec.SlackBuild b/media/plugins/swfdec/swfdec.SlackBuild index d02c1d22..a178d1e4 100755 --- a/media/plugins/swfdec/swfdec.SlackBuild +++ b/media/plugins/swfdec/swfdec.SlackBuild @@ -1,116 +1,172 @@ #!/bin/bash # -# swfdec.SlackBuild 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 any later version. +# swfdec.SlackBuild 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 any later version. # -# swfdec.SlackBuild 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. +# swfdec.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for swfdec -# by rhatto at riseup.net +# slackbuild for swfdec, by Silvio Rhatto +# requires: liboil ffmpeg libsoup glib2 cairo gstreamer gst-ffmpeg gst-plugins-base gst-plugins-good gst-plugins-ugly +# tested: swfdec-0.7.4 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building swfdec are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="swfdec" +# Set variables +CWD="$(pwd)" +SRC_NAME="swfdec" +PKG_NAME="swfdec" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.5.4} +SRC_VERSION=${VERSION:=0.7.4} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://swfdec.freedesktop.org/download/swfdec/0.5/$SRC" +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://swfdec.freedesktop.org/download/swfdec/0.7/$SRC" -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi +# Configure # https://annarchy.freedesktop.org/show_bug.cgi?id=11607 sed -e 's/-std=c99/-std=gnu99/g' configure.ac > configure.ac.new sed -e 's/-std=c99/-std=gnu99/g' configure > configure.new mv configure.ac.new configure.ac mv configure.new configure && chmod +x configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR \ - --enable-gstreamer=no --enable-gnome-vfs=no || exit $ERROR_CONF - -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null - -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| swfdec: swfdec swfdec: swfdec: Swfdec is the library for decoding and rendering Flash animations. @@ -122,20 +178,13 @@ swfdec: encounter such a crash however, make sure to file a bug immediately. swfdec: swfdec: swfdec: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="AUTHORS COPYING ChangeLog NEWS README" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/plugins/swh-plugins/slack-required b/media/plugins/swh-plugins/slack-required index dc755fd1..4676b9ca 100644 --- a/media/plugins/swh-plugins/slack-required +++ b/media/plugins/swh-plugins/slack-required @@ -1,2 +1,5 @@ -fftw -ladspa +# Dependency list to swh-plugins +# +# dependency [condition] [version]] +fftw +ladspa diff --git a/media/plugins/swh-plugins/swh-plugins.SlackBuild b/media/plugins/swh-plugins/swh-plugins.SlackBuild index dbc0ca3f..f147083b 100755 --- a/media/plugins/swh-plugins/swh-plugins.SlackBuild +++ b/media/plugins/swh-plugins/swh-plugins.SlackBuild @@ -1,107 +1,167 @@ #!/bin/bash # -# swh-plugins.SlackBuild 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 any later version. +# swh-plugins.SlackBuild 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 any later version. # -# swh-plugins.SlackBuild 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. +# swh-plugins.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for swh-plugins -# by rhatto at riseup.net +# slackbuild for swh-plugins, by Silvio Rhatto +# requires: fftw ladspa +# tested: swh-plugins-0.4.15 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building swh-plugins are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="swh-plugins" +# Set variables +CWD="$(pwd)" +SRC_NAME="swh-plugins" +PKG_NAME="swh-plugins" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.4.15} +SRC_VERSION=${VERSION:=0.4.15} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 -ERROR_TAR=37; ERROR_MKPKG=38 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://plugin.org.uk/releases/$VERSION/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://plugin.org.uk/releases/0.4.15/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------| swh-plugins: swh-plugins swh-plugins: swh-plugins: This is a collection of LADSPA plugins available from Steve Harris @@ -113,20 +173,13 @@ swh-plugins: swh-plugins: swh-plugins: swh-plugins: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/plugins/xmms-jack/slack-required b/media/plugins/xmms-jack/slack-required index 03607b95..9be6bd2c 100644 --- a/media/plugins/xmms-jack/slack-required +++ b/media/plugins/xmms-jack/slack-required @@ -1,2 +1,5 @@ -jack -libsamplerate +# Dependency list to xmms-jack +# +# dependency [condition] [version]] +xmms +jack diff --git a/media/plugins/xmms-jack/xmms-jack.SlackBuild b/media/plugins/xmms-jack/xmms-jack.SlackBuild index 3da5145f..278731d3 100755 --- a/media/plugins/xmms-jack/xmms-jack.SlackBuild +++ b/media/plugins/xmms-jack/xmms-jack.SlackBuild @@ -1,114 +1,167 @@ #!/bin/bash # -# xmms-jack.SlackBuild 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 any later version. +# xmms-jack.SlackBuild 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 any later version. # -# xmms-jack.SlackBuild 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. +# xmms-jack.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for xmms-jack -# by rhatto at riseup.net +# slackbuild for xmms-jack, by Silvio Rhatto +# requires: xmms jack +# tested: xmms-jack-0.19 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building xmms-jack are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="xmms-jack" +# Set variables +CWD="$(pwd)" +SRC_NAME="xmms-jack" +PKG_NAME="xmms-jack" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.19} +SRC_VERSION=${VERSION:=0.19} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 -ERROR_TAR=37; ERROR_MKPKG=38 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/$PACKAGE/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/xmms-jack/$SRC" -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC || exit $ERROR_TAR -mv $PACKAGE $PACKAGE-$VERSION -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS README AUTHORS COPYING ChangeLog*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler----------------------------------------------------| xmms-jack: xmms-jack (jack plugin for XMMS) xmms-jack: xmms-jack: jack output plugin for XMMS by Chris Morgan @@ -120,20 +173,13 @@ xmms-jack: xmms-jack: xmms-jack: xmms-jack: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog INSTALL" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/plugins/xmms-jackasyn/slack-required b/media/plugins/xmms-jackasyn/slack-required index 752eacd8..f5f5bfb7 100644 --- a/media/plugins/xmms-jackasyn/slack-required +++ b/media/plugins/xmms-jackasyn/slack-required @@ -1 +1,5 @@ -libjackasyn +# Dependency list to xmms-jackasyn +# +# dependency [condition] [version]] +xmms +jack diff --git a/media/plugins/xmms-jackasyn/xmms-jackasyn.SlackBuild b/media/plugins/xmms-jackasyn/xmms-jackasyn.SlackBuild index d0a1cae7..a08f09b7 100755 --- a/media/plugins/xmms-jackasyn/xmms-jackasyn.SlackBuild +++ b/media/plugins/xmms-jackasyn/xmms-jackasyn.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# xmms-jackasyn.SlackBuild 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 any later version. +# xmms-jackasyn.SlackBuild 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 any later version. # -# xmms-jackasyn.SlackBuild 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. +# xmms-jackasyn.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for xmms-jackasyn -# by rhatto at riseup.net +# slackbuild for xmms-jackasyn, by Silvio Rhatto +# requires: xmms jack +# tested: xmms-jackasyn-0.3 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building xmms-jackasyn are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="xmms-jackasyn" +# Set variables +CWD="$(pwd)" +SRC_NAME="xmms-jackasyn" +PKG_NAME="xmms-jackasyn" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.3} +SRC_VERSION=${VERSION:=0.3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://gige.xdv.org/libjackasyn/download/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://gige.xdv.org/libjackasyn/download/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF -CWD="`pwd`" +# Compile +make $NUMJOBS || exit $ERROR_MAKE -cd $TMP/package-$PACKAGE +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) -mkdir install -cat << EOF > install/slack-desc +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------| xmms-jackasyn: xmms-jackasyn xmms-jackasyn: xmms-jackasyn: This plugin enables xmms to playback sound via the JACK audio server. @@ -114,20 +173,13 @@ xmms-jackasyn: xmms-jackasyn: xmms-jackasyn: xmms-jackasyn: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog NEWS README" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/radio/gnuradio/gnuradio.SlackBuild b/media/radio/gnuradio/gnuradio.SlackBuild index 60064d1c..abe3a9a2 100755 --- a/media/radio/gnuradio/gnuradio.SlackBuild +++ b/media/radio/gnuradio/gnuradio.SlackBuild @@ -10,9 +10,9 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for gnuradio, by Silvio Rhatto - rhatto at riseup.net # requires: boost swig fftw sdcc cppunit jack numpy wxWidgets wxPython @@ -87,26 +87,17 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" -# get boost version -boost="`basename $(ls /var/log/packages/boost-[0-9]* 2> /dev/null)`" - -if [ -z "$boost" ]; then - echo Error: missing boost package - exit $ERROR_CONF -fi - -pack="`basename $boost | sed -e 's/-[^-]*-[^-]*-[^-]*$//'`" -boost_version="`echo $boost | sed -e "s/^$pack-//" | cut -d "-" -f 1 | \ - sed -e 's/\./_/g' -e 's/\([0-9]\+\)_\([0-9]\+\)_0/\1_\2/'`" - CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ - --prefix="$PREFIX" --libdir="$LIBDIR" --sysconfdir=/etc \ - --with-boost-include-dir=/usr/include/boost-$boost_version $CONF_OPTIONS || exit $ERROR_CONF + --prefix="$PREFIX" --libdir="$LIBDIR" --sysconfdir=/etc $CONF_OPTIONS || exit $ERROR_CONF + +if [ "$ARCH" == "x86_64" ] && [ "$PKG_VERSION" == "3.1.2" ]; then + sed -i -e 's/-L\/usr\/lib /-L\/usr\/lib64 /g' gr-audio-alsa/src/Makefile +fi # Compile make $NUMJOBS || exit $ERROR_MAKE @@ -135,9 +126,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. @@ -165,6 +156,9 @@ cat << EOSCRIPT > "$PKG/install/doinst.sh" config() { NEW="\$1" OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)" + OLD="\$(dirname \$NEW)/\$(basename \$OLD .sample)" + OLD="\$(dirname \$NEW)/\$(basename \$OLD .dist)" + # If there's no config file by that name, mv it over: if [ ! -r \$OLD ]; then mv \$NEW \$OLD @@ -180,7 +174,7 @@ mkgroup() { if ! grep -qe "^\$GROUP:" etc/group; then echo Creating group \$GROUP... chroot . /usr/sbin/groupadd \$GROUP - fi + fi } mkuser() { @@ -196,7 +190,7 @@ mkuser() { fi } -config etc/gnuradio/conf.d/gnuradio-core.conf.new ; config etc/gnuradio/conf.d/gr-audio-alsa.conf.new ; config etc/gnuradio/conf.d/gr-audio-jack.new ; etc/gnuradio/conf.d/gr-audio-oss.conf.new ; config etc/gnuradio/conf.d/gr-wxgui.conf.new +config etc/gnuradio/conf.d/gnuradio-core.conf.new ; config etc/gnuradio/conf.d/gr-audio-alsa.conf.new ; config etc/gnuradio/conf.d/gr-audio-jack.conf.new ; etc/gnuradio/conf.d/gr-audio-oss.conf.new ; config etc/gnuradio/conf.d/gr-wxgui.conf.new EOSCRIPT # Build the package diff --git a/media/sound/ardour/ardour.SlackBuild b/media/sound/ardour/ardour.SlackBuild index b6befdfb..336cf1ec 100755 --- a/media/sound/ardour/ardour.SlackBuild +++ b/media/sound/ardour/ardour.SlackBuild @@ -1,61 +1,246 @@ #!/bin/bash # -# ardour.SlackBuild 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 any later version. -# -# ardour.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# -# SlackBuild script to call ardour.build with correct settings -# - -if [ -s "slack-required" ]; then - echo Recomended and required packages for building ardour are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" +# ardour.SlackBuild 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 any later version. +# +# ardour.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for ardour, by Silvio Rhatto +# requires: scons raptor liblrdf ladspa libsamplerate libsndfile jack libgnomecanvas liblo fftw boost aubio +# tested: ardour-2.5 +# +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="ardour" -VERSION=${VERSION:=2.4.1} -ARCH="${ARCH:=i486}" +# Set variables +CWD="$(pwd)" +SRC_NAME="ardour" +PKG_NAME="ardour" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.5} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} -rm -rf $TMP/$PACKAGE -mkdir -p $SRC_DIR/$PACKAGE $TMP/$PACKAGE +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi -export PACKAGE VERSION ARCH BUILD SRC_DIR TMP REPOS +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -if which simpletrack &> /dev/null; then - simpletrack $PACKAGE.build -else - slacktrack -b $REPOS -x $TMP,$SRC_DIR,/dev -jefkzp "$PACKAGE-$VERSION-$ARCH-$BUILD.tgz" "./$PACKAGE.build" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ardour.org/files/releases/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP/$PACKAGE +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi +# Compile + +# This section and the install section uses code from +# http://slackbuilds.org/slackbuilds/12.1/audio/ardour/ardour.SlackBuild, +# which licence is: + +# Copyright 2008 Heinz Wiesinger <hmwiesinger@gmx.at> +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''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 AUTHOR 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. + +scons PREFIX=/usr \ + DIST_TARGET="none" \ + ARCH="$(echo $SLKCFLAGS)" \ + FREEDESKTOP=1 || exit $ERROR_MAKE + +# Install +scons \ + PREFIX=/usr \ + DIST_TARGET="none" \ + ARCH="$(echo $SLKCFLAGS)" \ + FREEDESKTOP=0 \ + DESTDIR=$PKG \ + install || exit $ERROR_INSTALL + +# We'll have to install the freedesktop stuff manually +# See the FREEDESKTOP target in $srcdir/gtk2_ardour/Sconscript +# to be sure this is synced with future releases +cd gtk2_ardour + # First, install the icons + mkdir -p $PKG/usr/share/icons/hicolor/{16x16,22x22,32x32,48x48}/apps + install -m 0644 icons/ardour_icon_16px.png \ + $PKG/usr/share/icons/hicolor/16x16/apps/ardour2.png || exit $ERROR_INSTALL + install -m 0644 icons/ardour_icon_22px.png \ + $PKG/usr/share/icons/hicolor/22x22/apps/ardour2.png || exit $ERROR_INSTALL + install -m 0644 icons/ardour_icon_32px.png \ + $PKG/usr/share/icons/hicolor/32x32/apps/ardour2.png || exit $ERROR_INSTALL + install -m 0644 icons/ardour_icon_48px.png \ + $PKG/usr/share/icons/hicolor/48x48/apps/ardour2.png || exit $ERROR_INSTALL + # Next, install the mime xml file + mkdir -p $PKG/usr/share/mime/packages + install -m 0644 ardour2.xml $PKG/usr/share/mime/packages || exit $ERROR_INSTALL + # Now install the mimetype icons + mkdir -p $PKG/usr/share/icons/hicolor/{16x16,22x22,32x32,48x48}/mimetypes + install -m 0644 icons/application-x-ardour_16px.png \ + $PKG/usr/share/icons/hicolor/16x16/mimetypes/application-x-ardour2.png || exit $ERROR_INSTALL + install -m 0644 icons/application-x-ardour_22px.png \ + $PKG/usr/share/icons/hicolor/22x22/mimetypes/application-x-ardour2.png || exit $ERROR_INSTALL + install -m 0644 icons/application-x-ardour_32px.png \ + $PKG/usr/share/icons/hicolor/32x32/mimetypes/application-x-ardour2.png || exit $ERROR_INSTALL + install -m 0644 icons/application-x-ardour_48px.png \ + $PKG/usr/share/icons/hicolor/48x48/mimetypes/application-x-ardour2.png || exit $ERROR_INSTALL + # Finally, install the desktop file + mkdir -p $PKG/usr/share/applications + install -m 0644 ardour2.desktop.in \ + $PKG/usr/share/applications/ardour2.desktop || exit $ERROR_INSTALL +cd - + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS AUTHORS.es BUILD CONTRIBUTORS FAQ README TRANSLATORS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------------| +ardour: ardour (Digital Audio Workstation) +ardour: +ardour: Ardour is a professional multitrack/multichannel audio recorder and +ardour: DAW for Linux, using ALSA-supported audio interfaces. It supports +ardour: up to 32 bit samples, 24+ channels at up to 96kHz, full MMC control, +ardour: a non-destructive, non-linear editor, and LADSPA plugins. +ardour: +ardour: +ardour: +ardour: +ardour: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/sound/ardour/slack-required b/media/sound/ardour/slack-required index 1a5394ff..822da591 100644 --- a/media/sound/ardour/slack-required +++ b/media/sound/ardour/slack-required @@ -1,11 +1,15 @@ -scons -raptor -liblrdf -ladspa -libsamplerate -libsndfile -jack -libgnomecanvas -liblo -fftw -boost +# Dependency list to ardour +# +# dependency [condition] [version]] +scons +raptor +liblrdf +ladspa +libsamplerate +libsndfile +jack +libgnomecanvas +liblo +fftw +boost +aubio diff --git a/media/sound/audacity/audacity.SlackBuild b/media/sound/audacity/audacity.SlackBuild index 4b9afa22..3f0a831f 100755 --- a/media/sound/audacity/audacity.SlackBuild +++ b/media/sound/audacity/audacity.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for audacity, by Silvio Rhatto -# requires: wxWidgets -# tested: audacity-1.3.4 +# requires: wxWidgets +# tested: audacity-1.3.5 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="audacity-src" PKG_NAME="audacity" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=1.3.4} +SRC_VERSION=${VERSION:=1.3.5} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -83,11 +84,10 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi - # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC=`ls -l | awk '/^d/ { print $8 }'` +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -123,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/media/sound/camp/camp.SlackBuild b/media/sound/camp/camp.SlackBuild index 2b2b301b..63e2ed59 100755 --- a/media/sound/camp/camp.SlackBuild +++ b/media/sound/camp/camp.SlackBuild @@ -1,115 +1,170 @@ #!/bin/bash # -# camp.SlackBuild 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 any later version. +# camp.SlackBuild 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 any later version. # -# camp.SlackBuild 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. +# camp.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for camp -# by rhatto at riseup.net +# slackbuild for camp, by Silvio Rhatto +# requires: +# tested: camp-1.5.3455 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building camp are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="camp" +# Set variables +CWD="$(pwd)" +SRC_NAME="camp" +PKG_NAME="camp" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.5.3455} +SRC_VERSION=${VERSION:=1.5.3455} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://www.sector7.nu/camp/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.sector7.nu/camp/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE - -CWD="`pwd`" - -mkdir -p $TMP/package-$PACKAGE -cd $TMP/package-$PACKAGE - -mkdir -p usr/bin usr/share/$PACKAGE - -cp $CWD/camp usr/bin -cp $CWD/camp.ini usr/share/$PACKAGE - -( cd usr/share/$PACKAGE && tar xvf $CWD/skins.tar ) - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +mkdir -p $PKG/usr/bin $PKG/usr/share/$PKG_NAME +cp camp $PKG/usr/bin +cp camp.ini $PKG/usr/share/$PKG_NAME +tar -C $PKG/usr/share/$PKG_NAME -xvf skins.tar + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="CREDITS ChangeLog Compatibility Players.info RCLayout.txt README Skin-HOWTO.txt tip.txt" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------------| camp: camp (cursed mp3 player) camp: camp: Console Ansi Mpeg Player interface. @@ -121,20 +176,13 @@ camp: camp: camp: camp: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="CREDITS ChangeLog Compatibility Players.info RCLayout.txt README Skin-HOWTO.txt tip.txt" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/cmt/cmt.SlackBuild b/media/sound/cmt/cmt.SlackBuild index ff20822a..c82d6b7c 100755 --- a/media/sound/cmt/cmt.SlackBuild +++ b/media/sound/cmt/cmt.SlackBuild @@ -1,118 +1,178 @@ #!/bin/bash # -# cmt.SlackBuild 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 any later version. +# cmt.SlackBuild 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 any later version. # -# cmt.SlackBuild 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. +# cmt.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for cmt -# by rhatto at riseup.net +# slackbuild for cmt, by Silvio Rhatto +# requires: ladspa +# tested: cmt-1.16 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building cmt are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="cmt" +# Set variables +CWD="$(pwd)" +SRC_NAME="cmt_src" +PKG_NAME="cmt" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.15} +SRC_VERSION=${VERSION:=1.16} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 -ERROR_TAR=37; ERROR_MKPKG=38 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="tgz" -SRC="$PACKAGE"_src_"$VERSION.$PACKAGE_EXT" -URL="http://www.ladspa.org/download/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME"_"$VERSION.tgz" +URL="http://www.ladspa.org/download/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi +# Configure cd src -sed -e 's/\/usr\/local\/lib\/ladspa\//\/usr\/lib\/ladspa\//' makefile > makefile.tmp || exit $ERROR_CONF +sed -e 's/\/usr\/local\/lib\/ladspa\//\/usr\/lib\/ladspa\//' \ + -e 's/\/usr\/local\/bin\//\/usr\/bin\//' makefile > makefile.tmp || exit $ERROR_CONF -echo "PREFIX = $TMP/package-$PACKAGE" >> makefile.tmp || exit $ERROR_CONF +echo "PREFIX = $PKG" >> makefile.tmp || exit $ERROR_CONF + +sed -e 's/$(INSTALL_PLUGINS_DIR)/$(PREFIX)\/$(INSTALL_PLUGINS_DIR)/g' \ + -e 's/$(INSTALL_INCLUDE_DIR)/$(PREFIX)\/$(INSTALL_INCLUDE_DIR)/g' \ + -e 's/$(INSTALL_BINARY_DIR)/$(PREFIX)\/$(INSTALL_BINARY_DIR)/g' makefile.tmp > makefile || exit $ERROR_CONF sed -e 's/cp $(PLUGIN_LIB) $(INSTALL_PLUGINS_DIR)/cp $(PLUGIN_LIB) $(PREFIX)\/$(INSTALL_PLUGINS_DIR)/g' \ makefile.tmp > makefile || exit $ERROR_CONF -mkdir -p $TMP/package-$PACKAGE/usr/lib/ladspa +# Compile +make $NUMJOBS || exit $ERROR_MAKE -make || exit $ERROR_MAKE -make install || exit $ERROR_INSTALL +# Install +mkdir -p $PKG/usr/lib/ladspa +make install DESTDIR="$PKG" || exit $ERROR_INSTALL cd .. -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="README doc/*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler----------------------------------------------------------| cmt: cmt (ladspa plugin package) cmt: cmt: The Computer Music Toolkit (CMT) is a collection of LADSPA plugins @@ -124,20 +184,13 @@ cmt: cmt: cmt: cmt: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="COPYING *html" - -for file in $DOCS; do - cp $CWD/docs/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/cmt/slack-required b/media/sound/cmt/slack-required index 6c92f463..6839f3e8 100644 --- a/media/sound/cmt/slack-required +++ b/media/sound/cmt/slack-required @@ -1 +1,4 @@ -ladspa +# Dependency list to cmt_src +# +# dependency [condition] [version]] +ladspa diff --git a/media/sound/darkice/darkice.SlackBuild b/media/sound/darkice/darkice.SlackBuild index e24d3fd3..48c18a40 100755 --- a/media/sound/darkice/darkice.SlackBuild +++ b/media/sound/darkice/darkice.SlackBuild @@ -1,112 +1,167 @@ #!/bin/bash # -# darkice.SlackBuild 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 any later version. +# darkice.SlackBuild 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 any later version. # -# darkice.SlackBuild 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. +# darkice.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for darkice -# by rhatto at riseup.net +# slackbuild for darkice, by Silvio Rhatto +# requires: lame jack twolame +# tested: darkice-0.19 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building darkice are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="darkice" +# Set variables +CWD="$(pwd)" +SRC_NAME="darkice" +PKG_NAME="darkice" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.18.1} +SRC_VERSION=${VERSION:=0.19} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://darkice.tyrell.hu/dist/$VERSION/darkice-$VERSION.tar.gz" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff -fi +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://darkice.tyrell.hu/dist/0.19/$SRC" -if [ "$ARCH" == "x86_64" ] && [ -f "$CWD/$PACKAGE-$VERSION-x86_64.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION-x86_64.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog FAQ NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------------| darkice: darkice (an icecast and shoutcast streaming originator) darkice: darkice: DarkIce is an IceCast, IceCast2 and ShoutCast live audio streamer. @@ -118,18 +173,13 @@ darkice: darkice: darkice: darkice: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS COPYING ChangeLog FAQ INSTALL INSTALL.lame INSTALL.vorbis NEWS README TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/darkice/slack-required b/media/sound/darkice/slack-required index b63aeae6..839b3d85 100644 --- a/media/sound/darkice/slack-required +++ b/media/sound/darkice/slack-required @@ -1,3 +1,6 @@ -lame -jack -twolame +# Dependency list to darkice +# +# dependency [condition] [version]] +lame +jack +twolame diff --git a/media/sound/darksnow/darksnow.SlackBuild b/media/sound/darksnow/darksnow.SlackBuild index dd102e48..df929eb2 100755 --- a/media/sound/darksnow/darksnow.SlackBuild +++ b/media/sound/darksnow/darksnow.SlackBuild @@ -1,95 +1,112 @@ #!/bin/bash # -# darksnow.SlackBuild 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 any later version. +# darksnow.SlackBuild 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 any later version. # -# darksnow.SlackBuild 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. +# darksnow.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for darksnow -# by rhatto at riseup.net +# slackbuild for darksnow, by Silvio Rhatto +# requires: darkice +# tested: darksnow-0.6.1 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building darksnow are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="darksnow" +# Set variables +CWD="$(pwd)" +SRC_NAME="darksnow" +PKG_NAME="darksnow" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.6.1} +SRC_VERSION=${VERSION:=0.6.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://darksnow.radiolivre.org/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://darksnow.radiolivre.org/$SRC" -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff -fi +# Compile +make $NUMJOBS || exit $ERROR_MAKE -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 +# Install strip darksnow make make_pkg -mv *-1rd.tgz $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +mv *-1rd.tgz $REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/darksnow/slack-required b/media/sound/darksnow/slack-required index e91d07df..bd6b8736 100644 --- a/media/sound/darksnow/slack-required +++ b/media/sound/darksnow/slack-required @@ -1 +1,4 @@ -darkice +# Dependency list to darksnow +# +# dependency [condition] [version]] +darkice diff --git a/media/sound/envy24control/envy24control.SlackBuild b/media/sound/envy24control/envy24control.SlackBuild index 2f9fc14e..a79fa14c 100755 --- a/media/sound/envy24control/envy24control.SlackBuild +++ b/media/sound/envy24control/envy24control.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# envy24control.SlackBuild 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 any later version. +# envy24control.SlackBuild 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 any later version. # -# envy24control.SlackBuild 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. +# envy24control.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for envy24control -# by rhatto at riseup.net +# slackbuild for envy24control, by Silvio Rhatto +# requires: +# tested: envy24control-1.0.17 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building envy24control are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="envy24control" +# Set variables +CWD="$(pwd)" +SRC_NAME="alsa-tools" +PKG_NAME="envy24control" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.0.16} +SRC_VERSION=${VERSION:=1.0.17} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="bz2" -SRC="alsa-tools-$VERSION.tar.$PACKAGE_EXT" -URL="ftp://ftp.alsa-project.org/pub/tools/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/alsa-tools" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="ftp://ftp.alsa-project.org/pub/tools/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd alsa-tools-$VERSION/$PACKAGE +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC/$PKG_NAME" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF -CWD="`pwd`" +# Compile +make $NUMJOBS || exit $ERROR_MAKE -cd $TMP/package-$PACKAGE +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) -mkdir install -cat << EOF > install/slack-desc +# Install documentation +DOCS="AUTHORS COPYING README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------| envy24control: envy24control (Control tool for Envy24 (ice1712) based soundcards) envy24control: envy24control: Envy24control is a graphical utility for controlling cards based on @@ -114,20 +173,13 @@ envy24control: level meter for each input and output channel. envy24control: envy24control: envy24control: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING README" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/hydrogen/hydrogen-0.9.3.diff b/media/sound/hydrogen/hydrogen-0.9.3.diff index d47db8d9..1f0dc30a 100644 --- a/media/sound/hydrogen/hydrogen-0.9.3.diff +++ b/media/sound/hydrogen/hydrogen-0.9.3.diff @@ -1,83 +1,599 @@ ---- hydrogen-0.9.3/src/lib/xml/tinyxml.h~ 2006-03-15 15:43:13.000000000 +0000 -+++ hydrogen-0.9.3/src/lib/xml/tinyxml.h 2006-03-15 15:43:33.000000000 +0000 -@@ -823,9 +823,9 @@ - #endif - - /// Construct. -- TiXmlDeclaration::TiXmlDeclaration( const char * _version, -- const char * _encoding, -- const char * _standalone ); -+ TiXmlDeclaration( const char * _version, -+ const char * _encoding, -+ const char * _standalone ); +diff -Naur hydrogen-0.9.3.orig/Makefile.in hydrogen-0.9.3/Makefile.in +--- hydrogen-0.9.3.orig/Makefile.in 2005-11-10 16:00:08.000000000 -0200 ++++ hydrogen-0.9.3/Makefile.in 2008-07-24 19:43:46.000000000 -0300 +@@ -225,7 +225,7 @@ + mkdir -p $(DESTDIR)$(prefix)/share/hydrogen/data/ + cp -R data $(DESTDIR)$(prefix)/share/hydrogen + mkdir -p $(DESTDIR)$(prefix)/share/hydrogen/data/ +- @install -vD hydrogen.desktop $(DESTDIR)$(prefix)/share/applications/hydrogen.desktop ++ @install -vD -m 644 hydrogen.desktop $(DESTDIR)$(prefix)/share/applications/hydrogen.desktop + cd plugins;make install;cd .. + + +diff -Naur hydrogen-0.9.3.orig/configure.in hydrogen-0.9.3/configure.in +--- hydrogen-0.9.3.orig/configure.in 2006-01-18 20:02:37.000000000 -0200 ++++ hydrogen-0.9.3/configure.in 2008-07-24 19:43:40.000000000 -0300 +@@ -367,6 +367,8 @@ + echo "--- Checking for PortAudio -------------------------------------" - virtual ~TiXmlDeclaration() {} + portaudio_support=false ++AC_ARG_ENABLE(portaudio, [ --disable-portaudio Compile without portaudio support], [want_portaudio=$enableval]) ++if test "x$want_portaudio" != "xno"; then + AC_MSG_CHECKING([whether PORTAUDIOPATH environment variable is set]) + if test "x$PORTAUDIOPATH" = "x"; then + AC_MSG_RESULT(PORTAUDIOPATH is not set. No PortAudio support.) +@@ -389,6 +391,7 @@ + echo "-----------------------------------------------------------------" + echo "" - ---- hydrogen-0.9.3/src/tools/HydrogenPlayer.cpp~ 2007-04-01 21:01:06.000000000 +0000 -+++ hydrogen-0.9.3/src/tools/HydrogenPlayer.cpp 2007-04-01 21:01:28.000000000 +0000 -@@ -25,6 +25,7 @@ ++fi - #include <qapplication.h> -+#include <cstdlib> - #include <iostream> - #include <stdio.h> - #include <string> ---- hydrogen-0.9.3/src/gui/DrumkitManager.cpp~ 2007-04-01 21:03:50.000000000 +0000 -+++ hydrogen-0.9.3/src/gui/DrumkitManager.cpp 2007-04-01 21:03:58.000000000 +0000 -@@ -22,6 +22,7 @@ - * - */ - #include <qcursor.h> -+#include <cstdlib> - - #include "config.h" - #include "Skin.h" ---- hydrogen-0.9.3/src/gui/HydrogenApp.cpp~ 2007-04-01 21:04:29.000000000 +0000 -+++ hydrogen-0.9.3/src/gui/HydrogenApp.cpp 2007-04-01 21:04:37.000000000 +0000 -@@ -46,6 +46,7 @@ - #include "LadspaFXProperties.h" - #include "SongEditor/SongEditorPanel.h" - -+#include <cstdlib> - #include <qdockwindow.h> - #include <qsplitter.h> - #include <qhbox.h> ---- hydrogen-0.9.3/src/gui/main.cpp~ 2007-04-01 21:05:56.000000000 +0000 -+++ hydrogen-0.9.3/src/gui/main.cpp 2007-04-01 21:06:04.000000000 +0000 -@@ -42,6 +42,7 @@ - #include "lib/DataPath.h" - #include "lib/Exception.h" - -+#include <cstdlib> - #include <iostream> - using namespace std; - ---- hydrogen-0.9.3/src/lib/FLACFile.cpp -+++ hydrogen-0.9.3/src/lib/FLACFile.cpp -@@ -39,6 +39,8 @@ - #undef LEGACY_FLAC - #endif -+#include <cstring> +diff -Naur hydrogen-0.9.3.orig/configure.in~ hydrogen-0.9.3/configure.in~ +--- hydrogen-0.9.3.orig/configure.in~ 1969-12-31 21:00:00.000000000 -0300 ++++ hydrogen-0.9.3/configure.in~ 2006-01-18 20:02:37.000000000 -0200 +@@ -0,0 +1,557 @@ ++d added Qt .dylib search for OS X systems (2004/12/17 Jonathan Dempsey) + - - /// Reads a FLAC file...not optimized yet - class FLACFile_real : public FLAC::Decoder::File, public Object ---- hydrogen-0.9.3/src/lib/drivers/OssDriver.cpp -+++ hydrogen-0.9.3/src/lib/drivers/OssDriver.cpp -@@ -31,6 +31,8 @@ - - #include <pthread.h> - -+#include <cstring> + - audioProcessCallback ossDriver_audioProcessCallback; - bool ossDriver_running; - pthread_t ossDriverThread; ---- hydrogen-0.9.3/src/lib/FLACFile.cpp.old 2007-02-11 20:12:34.000000000 +0100 -+++ hydrogen-0.9.3/src/lib/FLACFile.cpp 2007-02-11 20:18:25.000000000 +0100 ++dnl Process this file with autoconf to produce a configure script. ++AC_INIT(README) ++#AC_PREREQ(2.58) ++ ++extra_version="" ++hydrogenVersion="0.9.3$extra_version" ++ ++echo " ++ ++----------------------------------------------------------------- ++Starting Hydrogen $hydrogenVersion configuration... ++----------------------------------------------------------------- ++ ++" ++#ac_qmake_lflags="-static" ++#AC_SUBST(ac_qmake_lflags) ++ ++ ++# static build ++#ac_libraries=-static ++ ++ ++AC_DEFINE_UNQUOTED(VERSION, "${hydrogenVersion}", [Version]) ++ ++ ++AC_CONFIG_HEADER(config.h) ++ ++dnl Set default installation prefix. ++AC_PREFIX_DEFAULT(/usr/local) ++ac_prefix=$prefix ++if test "x$ac_prefix" = "xNONE"; then ++ ac_prefix=$ac_default_prefix ++fi ++AC_SUBST(ac_prefix) ++AC_DEFINE_UNQUOTED(CONFIG_PREFIX, ["$ac_prefix"], [Default installation prefix.]) ++ ++ ++AC_ARG_ENABLE(profile, [ --enable-profile enable profile info (default=no)], [useProfile="yes"], [useProfile="no"]) ++if test "x$useProfile" = "xyes"; then ++ ac_qmake_cflags="-pg" ++ ac_qmake_cxxflags="-pg" ++ ac_qmake_lflags="-pg" ++ AC_SUBST(ac_qmake_cflags) ++ AC_SUBST(ac_qmake_cxxflags) ++ AC_SUBST(ac_qmake_lflags) ++fi ++ ++dnl Enable debugging argument option. ++AC_ARG_ENABLE(debug, [ --enable-debug enable debugging (default=no)], [ac_debug="debug"], [ac_debug="release"]) ++AC_SUBST(ac_debug) ++if test "x$ac_debug" = "xdebug"; then ++ AC_DEFINE(CONFIG_DEBUG, 1, [Define if debugging is enabled.]) ++ features_list="${features_list} (Debug)" ++ echo " * Debug mode enabled." ++# CXXFLAGS="${CXXFLAGS} -g -O3" ++#else ++# CXXFLAGS="${CXXFLAGS} -O3" ++fi ++ ++ladspa_enabled=yes ++AC_ARG_ENABLE(ladspa, [ --disable-ladspa disable LADSPA support (default=no)], [ladspa_enabled=$enableval]) ++ ++if test "x$ladspa_enabled" = "xyes"; then ++ AC_DEFINE(LADSPA_SUPPORT, 1, [Define if LADSPA support is enabled.]) ++else ++ echo " * LADSPA support disabled." ++fi ++ ++ ++dnl Checks for programs. ++AC_PROG_CC ++AC_PROG_CPP ++AC_PROG_CXX ++AC_PROG_CXXCPP ++AC_PROG_GCC_TRADITIONAL ++ ++dnl Checks for languages. ++AC_LANG_C ++AC_LANG_CPLUSPLUS ++ ++ ++ ++######################## ++# ++# QT ++# ++##################### ++echo "" ++echo "--- Checking for QT Libs ----------------------------------------" ++ ++#dnl Check for QTDIR environment variable. ++AC_MSG_CHECKING([whether QTDIR environment variable is set]) ++if test "x$QTDIR" = "x"; then ++ # is not set ++ AC_MSG_RESULT([no]) ++ AC_MSG_WARN([QTDIR must be properly set.]) ++ ++ echo " * Searching for Qt library" ++ ac_qtlib="" ++ for X in /usr/share/qt /usr/share/qt3 /usr/lib/qt3 /usr/lib/qt-3.1; do ++ if test "x$ac_qtlib" = "x"; then ++ if test -f $X/lib/libqt-mt.so -o -f $X/lib/libqt-mt.a -o -f $X/lib/libqt-mt.dylib; then ++ ac_qtlib=$X ++ QTDIR=$X ++ echo " |-> searching QT in $X *** Found ***" ++ else ++ echo " |-> searching QT in $X *** Not found ***" ++ fi ++ fi ++ done ++else ++ AC_MSG_RESULT([$QTDIR]) ++ echo " * Searching for Qt library" ++ ac_qtlib="" ++ if test "x$ac_qtlib" = "x"; then ++ if test -f $QTDIR/lib/libqt-mt.so -o -f $QTDIR/lib/libqt-mt.a -o -f $QTDIR/lib/libqt-mt.dylib; then ++ ac_qtlib=$QTDIR ++ echo " |-> searching QT in $QTDIR *** Found ***" ++ else ++ echo " |-> searching QT in $QTDIR *** Not found ***" ++ fi ++ fi ++fi ++ ++#dnl Checks for Qt library. ++#AC_CACHE_CHECK([for Qt library], ++# ac_qtlib, [ ++# for X in qt-mt qt; do ++# if test "x$ac_qtlib" = "x"; then ++# if test -f $QTDIR/lib/lib$X.so -o -f $QTDIR/lib/lib$X.a; then ++# ac_qtlib=$X ++# fi ++# fi ++# done ++#]) ++ ++if test "x$ac_qtlib" = "x"; then ++ AC_MSG_WARN([Qt library not found. Maybe QTDIR isn't properly set.]) ++fi ++AC_SUBST(ac_qtlib) ++ ++ ++#dnl Check for Qt multi-thread support. ++#if test "x$ac_qtlib" = "xqt-mt"; then ++# ac_thread="thread" ++#fi ++#AC_SUBST(ac_thread) ++# ++CFLAGS="$CFLAGS -I$QTDIR/include" ++CPPFLAGS="$CPPFLAGS -I$QTDIR/include" ++LIBS="-L$QTDIR/lib -L/usr/X11R6/lib" ++ ++#AC_CACHE_CHECK([for Qt library version >= 3.1.1], ++# ac_qtlib_version, [ ++# AC_TRY_LINK([#include "qglobal.h"], [ ++#if QT_VERSION < 0x030101 ++#error Qt library 3.1.1 or greater required. ++#endif ++# ], ++# ac_qtlib_version="yes", [ ++# echo "no; Qt 3.1.1 or greater is required" ++# exit ++# ]) ++#]) ++ ++dnl A common error message: ++ac_qtdir_errmsg="not found in current PATH. Maybe QT development environment isn't available (qt3-devel)." ++ ++# Check for Qt qmake utility. ++#AC_PATH_PROG(ac_qmake, qmake, [no], $QTDIR/bin:${PATH}) ++AC_PATH_PROG(ac_qmake, qmake, [no], $QTDIR/bin) ++if test "x$ac_qmake" = "xno"; then ++ AC_MSG_ERROR([qmake $ac_qtdir_errmsg]) ++fi ++AC_SUBST(ac_qmake) ++ ++# Check for Qt moc utility. ++#AC_PATH_PROG(ac_moc, moc, [no], $QTDIR/bin:${PATH}) ++AC_PATH_PROG(ac_moc, moc, [no], $QTDIR/bin) ++if test "x$ac_moc" = "xno"; then ++ AC_MSG_ERROR([moc $ac_qtdir_errmsg]) ++fi ++AC_SUBST(ac_moc) ++ ++# Check for Qt uic utility. ++#AC_PATH_PROG(ac_uic, uic, [no], $QTDIR/bin:${PATH}) ++AC_PATH_PROG(ac_uic, uic, [no], $QTDIR/bin) ++if test "x$ac_uic" = "xno"; then ++ AC_MSG_ERROR([uic $ac_qtdir_errmsg]) ++fi ++AC_SUBST(ac_uic) ++ ++ ++ ++echo "" ++echo "-----------------------------------------------------------------" ++echo "Checking for libraries.." ++echo "-----------------------------------------------------------------" ++ ++ ++ ++dnl Checks for libraries. ++AC_CHECK_LIB(m, main) ++AC_CHECK_LIB(X11, main) ++AC_CHECK_LIB(Xext, main) ++AC_CHECK_LIB($ac_qtlib, main) ++ ++dnl Checks for header files. ++AC_HEADER_STDC ++AC_HEADER_SYS_WAIT ++AC_CHECK_HEADERS(fcntl.h sys/ioctl.h unistd.h poll.h) ++ ++dnl Checks for library functions. ++AC_CHECK_FUNCS(system) ++ ++ ++ ++################################# ++# ++# libSndFile ++# ++################################# ++echo "" ++echo "--- Checking for libsndfile -------------------------------------" ++sndfile_found=false ++AC_CHECK_LIB([sndfile], sf_open, sndfile_found=yes) ++#PKG_CHECK_MODULES(LIBSNDFILE, sndfile, sndfile_found=true, sndfile_found=false) ++if test "$sndfile_found" = "false"; then ++ AC_MSG_ERROR("sndfile library not found. Website: http://www.mega-nerd.com/libsndfile/") ++else ++ ac_libraries="${ac_libraries} $( pkg-config --libs sndfile )" ++fi ++echo "-----------------------------------------------------------------" ++echo "" ++ ++ ++ ++ ++###################### ++# ++# FLAC ++# ++######################## ++echo "" ++echo "--- Checking for FLAC++ Libs ------------------------------------" ++flac_support=yes ++AC_ARG_ENABLE(flac_support, [ --disable-flac-support Compile without FLAC support], [flac_support=$enableval]) ++ ++if test "$flac_support" != "no"; then ++ ++ flac_found=no ++ #AC_CHECK_HEADERS(FLAC/file_decoder.h) ++ #AC_CHECK_LIB(FLAC, FLAC__file_decoder_new, flac_found=yes) ++ ++ AC_CHECK_HEADERS(FLAC++/all.h, flac_found=yes) ++ #AC_CHECK_LIB(FLAC++, FLAC::Decoder::File, flac_found=yes) ++ ++ if test "$flac_found" = "no"; then ++ AC_MSG_ERROR("FLAC++ library not found. FLAC website: http://flac.sourceforge.net") ++ else ++ AC_DEFINE(FLAC_SUPPORT, 1, [Define to enable FLAC support]) ++ ac_libraries="${ac_libraries} -lFLAC++ -lFLAC" ++ features_list="${features_list} (FLAC)" ++ fi ++else ++ AC_MSG_WARN("FLAC++ library disabled. WARNING: Many drumkits will not work without FLAC support!!") ++fi ++ ++echo "-----------------------------------------------------------------" ++echo "" ++ ++ ++ ++ ++############################## ++# ++# JACK SUPPORT ++# ++################################ ++echo "" ++echo "--- Checking for JACK -------------------------------------------" ++jack_support=yes ++AC_ARG_ENABLE(jack-support, [ --disable-jack-support Compile without JACK support], [jack_support=$enableval]) ++ ++JACK_SUPPORT=0 ++ ++if test "$jack_support" != "no"; then ++ AC_CHECK_LIB(jack, main, [ac_jack_lib="yes"], [ac_jack_lib="no"]) ++ if test "x$ac_jack_lib" = "xno"; then ++ AC_MSG_WARN([ *** Could not find the JACK library, disabling JACK driver]) ++ else ++ JACK_SUPPORT=1 ++ AC_DEFINE(JACK_SUPPORT, 1, [Define to enable JACK driver]) ++ features_list="${features_list} (Jack)" ++ ac_libraries="${ac_libraries} -ljack" ++ fi ++else ++ echo "JACK support disabled" ++fi ++echo "-----------------------------------------------------------------" ++echo "" ++ ++########################## ++# ++# ALSA ++# ++########################## ++echo "" ++echo "--- Checking for ALSA Libs --------------------------------------" ++ ++use_alsa=yes ++ ++AC_ARG_ENABLE(alsa, [ --disable-alsa Compile without ALSA support], [use_alsa=$enableval]) ++if test "$use_alsa" = "yes"; then ++ alsa_found=no ++ AC_CHECK_HEADERS(alsa/asoundlib.h) ++dnl if test "x${ac_cv_header_alsa_asoundlib_h}" = xyes ; then ++dnl fi ++ ++ AC_CHECK_LIB(asound, snd_seq_open, alsa_found=yes) ++ if test "$alsa_found" = "no" ; then ++ AC_MSG_WARN([ *** Could not find the ALSA library, disabling ALSA support]) ++ else ++ AC_DEFINE( ALSA_SUPPORT, 1, [Define to use ALSA Audio support]) ++ features_list="${features_list} (Alsa)" ++ ac_libraries="${ac_libraries} -lasound" ++ fi ++else ++ echo "ALSA support disabled." ++fi ++ ++echo "-----------------------------------------------------------------" ++echo "" ++ ++ ++########################## ++# ++# OSS SUPPORT ++# ++########################## ++echo "" ++echo "--- Checking for OSS --------------------------------------------" ++oss_support=yes ++ ++AC_ARG_ENABLE(oss-support, [ --disable-oss-support Compile without OSS support], [oss_support=$enableval]) ++if test "$oss_support" = "yes"; then ++ AC_DEFINE(OSS_SUPPORT, 1, [Define to enable OSS driver]) ++ features_list="${features_list} (OSS)" ++else ++ echo "OSS support disabled." ++fi ++ ++echo "-----------------------------------------------------------------" ++echo "" ++ ++ ++ ++################################# ++# ++# PortAudio ++# ++################################# ++echo "" ++echo "--- Checking for PortAudio -------------------------------------" ++ ++portaudio_support=false ++AC_MSG_CHECKING([whether PORTAUDIOPATH environment variable is set]) ++if test "x$PORTAUDIOPATH" = "x"; then ++ AC_MSG_RESULT(PORTAUDIOPATH is not set. No PortAudio support.) ++else ++ AC_MSG_RESULT("[$PORTAUDIOPATH]") ++ if test -f $PORTAUDIOPATH/pa_unix_oss/libportaudio.so; then ++ echo " |-> searching PortAudio in $PORTAUDIOPATH *** Found ***" ++ ac_libraries="${ac_libraries} -L${PORTAUDIOPATH}/pa_unix_oss -lportaudio" ++ features_list="${features_list} (PortAudio)" ++ AC_DEFINE(PORTAUDIO_SUPPORT, 1, [Define to enable PortAudio driver]) ++ ++ ac_qmake_cxxflags="$ac_qmake_cxxflags -I$PORTAUDIOPATH/pa_common" ++ AC_SUBST(ac_qmake_cxxflags) ++ portaudio_support=true ++ else ++ echo " |-> searching PortAudio in $PORTAUDIOPATH *** Not found ***" ++ fi ++ ++fi ++echo "-----------------------------------------------------------------" ++echo "" ++ ++ ++ ++ ++################################# ++# ++# PortMidi ++# ++################################# ++echo "" ++echo "--- Checking for PortMidi -------------------------------------" ++portmidi_support=false ++AC_MSG_CHECKING([whether PORTMIDIPATH environment variable is set]) ++if test "x$PORTMIDIPATH" = "x"; then ++ AC_MSG_RESULT(PORTMIDIPATH is not set. No PortMidi support.) ++else ++ AC_MSG_RESULT("[$PORTMIDIPATH]") ++ if test -f $PORTMIDIPATH/pm_linux/libportmidi.a; then ++ echo " |-> searching PortMidi in $PORTMIDIPATH *** Found ***" ++ ac_libraries="${ac_libraries} ${PORTMIDIPATH}/pm_linux/libportmidi.a ${PORTMIDIPATH}/porttime/libporttime.a" ++ features_list="${features_list} (PortMidi)" ++ AC_DEFINE(PORTMIDI_SUPPORT, 1, [Define to enable PortMidi driver]) ++ ++ ac_qmake_cxxflags="$ac_qmake_cxxflags -I$PORTMIDIPATH/pm_common -I$PORTMIDIPATH/porttime" ++ AC_SUBST(ac_qmake_cxxflags) ++ portmidi_support=true ++ else ++ echo " |-> searching PortMidi in $PORTMIDIPATH *** Not found ***" ++ fi ++ ++fi ++ ++echo "-----------------------------------------------------------------" ++echo "" ++ ++ ++ ++ ++################################## ++# ++# LRDF ++# ++################################### ++echo "" ++echo "--- Checking for LRDF -------------------------------------------" ++LRDF_SUPPORT=0 ++lrdf_check=yes ++AC_ARG_ENABLE(lrdf-support, [ --disable-lrdf-support Compile without LRDF support], [lrdf_check=$enableval]) ++if test "$lrdf_check" = "yes"; then ++ lrdf_found=no ++ AC_CHECK_HEADERS(lrdf.h, lrdf_found=yes) ++# AC_CHECK_LIB(lrdf, lrdf_init, lrdf_found=yes) ++ if test "$lrdf_found" = "no" ; then ++ AC_MSG_WARN([ *** Could not find the LRDF library]) ++ else ++ LRDF_SUPPORT=1 ++ AC_DEFINE(LRDF_SUPPORT, 1, [Define to enable LRDF support]) ++ ac_libraries="${ac_libraries} -llrdf -lraptor -lxml2" ++ features_list="${features_list} (LRDF)" ++ fi ++fi ++echo "-----------------------------------------------------------------" ++echo "" ++ ++ ++ ++################################## ++# ++# define the DATA path ++# ++################################### ++AC_DEFINE_UNQUOTED(DATA_PATH, "${ac_prefix}/share/hydrogen/data", [Data dir]) ++AC_DEFINE_UNQUOTED(COMPILED_FEATURES, "${features_list}", [Compiled features]) ++ ++ ++ ++ ++AC_SUBST(ac_libraries) ++ ++ ++AC_OUTPUT( ++Makefile ++hydrogen.pro ++hydrogenPlayer.pro ++hydrogenBenchmark.pro ++hydrogen2Midi.pro ++hydrogenCUI.pro ++hydrogen.desktop ++plugins/Makefile ++plugins/wasp/Makefile ++) ++ ++ ++echo " ++ ++----------------------------------------------------------------- ++ Hydrogen ${hydrogenVersion} configuration: ++----------------------------------------------------------------- ++ ++ Source code location: ${srcdir} ++ Prefix ${ac_prefix} ++ Data path ${ac_prefix}/share/hydrogen ++ LDFLAGS ${ac_libraries} ++" ++if test "x$ac_debug" = "xdebug"; then ++ echo " Debug messages: yes" ++else ++ echo " Debug messages: no" ++fi ++ ++if test "${flac_found}" = "yes"; then ++ echo " FLAC: yes" ++else ++ echo " FLAC: no" ++fi ++ ++if test "${LRDF_SUPPORT}" = "1"; then ++ echo " LRDF: yes" ++else ++ echo " LRDF: no" ++fi ++ ++echo "" ++ ++if test "${JACK_SUPPORT}" = "1"; then ++ echo " Jack: yes" ++else ++ echo " Jack: no" ++fi ++ ++if test "${alsa_found}" = "yes"; then ++ echo " ALSA : yes" ++else ++ echo " ALSA : no" ++fi ++ ++if test "${oss_support}" = "yes"; then ++ echo " OSS: yes" ++else ++ echo " OSS: no" ++fi ++ ++ ++if test "${portaudio_support}" = "true"; then ++ echo " PortAudio yes" ++else ++ echo " PortAudio no" ++fi ++ ++if test "${portmidi_support}" = "true"; then ++ echo " PortMidi: yes" ++else ++ echo " PortMidi: no" ++fi ++ ++ ++echo " ++ Features list = ${features_list} ++ ++----------------------------------------------------------------- ++Now type make to build Hydrogen. ++----------------------------------------------------------------- ++ ++If you're not a member of hydrogen-dev mailing list yet, please join. ++Please see http://www.hydrogen-music.org for details. ++ ++" +diff -Naur hydrogen-0.9.3.orig/src/lib/FLACFile.cpp hydrogen-0.9.3/src/lib/FLACFile.cpp +--- hydrogen-0.9.3.orig/src/lib/FLACFile.cpp 2005-11-08 07:31:22.000000000 -0200 ++++ hydrogen-0.9.3/src/lib/FLACFile.cpp 2008-07-24 19:43:59.000000000 -0300 @@ -33,6 +33,13 @@ //#include "FLAC/file_decoder.h" #include <FLAC++/all.h> @@ -120,416 +636,16 @@ +#endif } ---- a/hydrogen-0.9.3/data/demo_songs/TR808kit-demo.h2song 2005-10-18 00:32:04.000000000 +0200 -+++ b/hydrogen-0.9.3/data/demo_songs/TR808kit-demo.h2song 2007-06-05 15:33:19.000000000 +0200 -@@ -1,5 +1,5 @@ - <song> -- <version>0.9.2-cvs</version> -+ <version>0.9.3</version> - <bpm>125</bpm> - <volume>0.71</volume> - <metronomeVolume>0.5</metronomeVolume> -@@ -7,10 +7,14 @@ - <author>ArtemioLabs</author> - <notes>Demo patterns for the TR-808 Emulation Kit.</notes> - <loopEnabled>true</loopEnabled> -- <mode>song</mode> -+ <mode>pattern</mode> - <humanize_time>0</humanize_time> - <humanize_velocity>0</humanize_velocity> - <swing_factor>0</swing_factor> -+ <delayFXEnabled>false</delayFXEnabled> -+ <delayFXWetLevel>1</delayFXWetLevel> -+ <delayFXFeedback>0.4</delayFXFeedback> -+ <delayFXTime>48</delayFXTime> - <instrumentList> - <instrument> - <id>0</id> -@@ -18,8 +22,10 @@ - <name>Kick Long</name> - <volume>1</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -44,8 +50,10 @@ - <name>Kick Short</name> - <volume>1</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -70,8 +78,10 @@ - <name>Snare 1</name> - <volume>1</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -96,8 +106,10 @@ - <name>Snare 2</name> - <volume>1</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -122,8 +134,10 @@ - <name>Clap</name> - <volume>1</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -148,8 +162,10 @@ - <name>Tom Low</name> - <volume>0.77</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>0.52</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -174,8 +190,10 @@ - <name>Tom Mid</name> - <volume>0.79</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -200,8 +218,10 @@ - <name>Tom Hi</name> - <volume>0.79</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>0.48</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -226,8 +246,10 @@ - <name>Closed Hat</name> - <volume>1</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -252,8 +274,10 @@ - <name>Pedal Hat</name> - <volume>1</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -278,8 +302,10 @@ - <name>Open Hat</name> - <volume>1</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -304,8 +330,10 @@ - <name>Cymbal</name> - <volume>0.82</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -330,8 +358,10 @@ - <name>Shaker</name> - <volume>0.84</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -356,8 +386,10 @@ - <name>Conga</name> - <volume>0.88</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>0.9</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -382,8 +414,10 @@ - <name>Clave</name> - <volume>0.84</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>0.96</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -408,8 +442,10 @@ - <name>Cowbell</name> - <volume>0.85</volume> - <isMuted>false</isMuted> -+ <isLocked>false</isLocked> - <pan_L>0.96</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -434,8 +470,10 @@ - <name>17</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -453,8 +491,10 @@ - <name>18</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -472,8 +512,10 @@ - <name>19</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -491,8 +533,10 @@ - <name>20</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -510,8 +554,10 @@ - <name>21</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -529,8 +575,10 @@ - <name>22</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -548,8 +596,10 @@ - <name>23</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -567,8 +617,10 @@ - <name>24</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -586,8 +638,10 @@ - <name>25</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -605,8 +659,10 @@ - <name>26</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -624,8 +680,10 @@ - <name>27</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -643,8 +701,10 @@ - <name>28</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -662,8 +722,10 @@ - <name>29</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -681,8 +743,10 @@ - <name>30</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -700,8 +764,10 @@ - <name>31</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -719,8 +785,10 @@ - <name>32</name> - <volume>0.8</volume> - <isMuted>true</isMuted> -+ <isLocked>false</isLocked> - <pan_L>1</pan_L> - <pan_R>1</pan_R> -+ <gain>1</gain> - <FX1Level>0</FX1Level> - <FX2Level>0</FX2Level> - <FX3Level>0</FX3Level> -@@ -1602,15 +1670,6 @@ - <length>-1</length> - <instrument>9</instrument> - </note> -- <note> -- <position>168</position> -- <velocity>0.8</velocity> -- <pan_L>1</pan_L> -- <pan_R>1</pan_R> -- <pitch>0</pitch> -- <length>-1</length> -- <instrument>9</instrument> -- </note> - </noteList> - </sequence> - <sequence> -@@ -1792,7 +1851,17 @@ - <noteList /> - </sequence> - <sequence> -- <noteList /> -+ <noteList> -+ <note> -+ <position>156</position> -+ <velocity>0.8</velocity> -+ <pan_L>1</pan_L> -+ <pan_R>1</pan_R> -+ <pitch>0</pitch> -+ <length>-1</length> -+ <instrument>26</instrument> -+ </note> -+ </noteList> - </sequence> - <sequence> - <noteList /> - + +diff -Naur hydrogen-0.9.3.orig/src/lib/xml/tinyxml.h hydrogen-0.9.3/src/lib/xml/tinyxml.h +--- hydrogen-0.9.3.orig/src/lib/xml/tinyxml.h 2005-10-17 20:32:04.000000000 -0200 ++++ hydrogen-0.9.3/src/lib/xml/tinyxml.h 2008-07-24 19:44:04.000000000 -0300 +@@ -823,7 +823,7 @@ + #endif + + /// Construct. +- TiXmlDeclaration::TiXmlDeclaration( const char * _version, ++ TiXmlDeclaration( const char * _version, + const char * _encoding, + const char * _standalone ); + diff --git a/media/sound/hydrogen/hydrogen.SlackBuild b/media/sound/hydrogen/hydrogen.SlackBuild index fda2692b..11f4b7b7 100755 --- a/media/sound/hydrogen/hydrogen.SlackBuild +++ b/media/sound/hydrogen/hydrogen.SlackBuild @@ -1,104 +1,163 @@ #!/bin/bash # -# hydrogen.SlackBuild 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 any later version. +# hydrogen.SlackBuild 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 any later version. # -# hydrogen.SlackBuild 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. +# hydrogen.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for hydrogen -# by rhatto at riseup.net +# slackbuild for hydrogen, by Silvio Rhatto +# requires: libsndfile +# tested: hydrogen-0.9.3 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building hydrogen are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="hydrogen" +# Set variables +CWD="$(pwd)" +SRC_NAME="hydrogen" +PKG_NAME="hydrogen" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.9.3} +SRC_VERSION=${VERSION:=0.9.3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/hydrogen/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/hydrogen/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. @@ -114,18 +173,13 @@ hydrogen: pan capabilities, and import of samples in wave, au, and aiff format. hydrogen: hydrogen: hydrogen: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS COPYING ChangeLog INSTALL README; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/hydrogen/slack-required b/media/sound/hydrogen/slack-required index 7d55e12e..c98af1ab 100644 --- a/media/sound/hydrogen/slack-required +++ b/media/sound/hydrogen/slack-required @@ -1 +1,4 @@ -libsndfile +# Dependency list to hydrogen +# +# dependency [condition] [version]] +libsndfile diff --git a/media/sound/jack-rack/jack-rack.SlackBuild b/media/sound/jack-rack/jack-rack.SlackBuild index 2f277018..9e352499 100755 --- a/media/sound/jack-rack/jack-rack.SlackBuild +++ b/media/sound/jack-rack/jack-rack.SlackBuild @@ -1,108 +1,211 @@ #!/bin/bash # -# jack-rack.SlackBuild 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 any later version. +# jack-rack.SlackBuild 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 any later version. # -# jack-rack.SlackBuild 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. +# jack-rack.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for jack-rack -# by rhatto at riseup.net +# slackbuild for jack-rack, by Silvio Rhatto +# requires: jack ladspa +# tested: jack-rack-1.4.7 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building jack-rack are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="jack-rack" +# Set variables +CWD="$(pwd)" +SRC_NAME="jack-rack" +PKG_NAME="jack-rack" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.4.4} +SRC_VERSION=${VERSION:=1.4.7} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="bz2" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/jack-rack/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/jack-rack/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +# Import minimized signing key from +if echo [[SIGNING KEY URL]] | grep -q -v "SIGNING KEY URL"; then + lynx -dump [[SIGNING KEY URL]] | gpg --import || exit $ERROR_GPG +elif echo B94D2E95 | grep -q -v "SIGNING KEY ID"; then + gpg --recv-keys B94D2E95 || exit $ERROR_GPG +else + gpg --import << EOKEY || exit $ERROR_GPG +[[SIGNING KEY]] +EOKEY fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install +# Download source's signature if necessary and check it +if echo http://downloads.sourceforge.net/jack-rack/jack-rack-1.4.7.tar.bz2.asc | grep -q -v "SIGNING URL"; then + SIGNATURE="`basename http://downloads.sourceforge.net/jack-rack/jack-rack-1.4.7.tar.bz2.asc`" + if [ ! -s "$SRC_DIR/$SIGNATURE" ]; then + wget "http://downloads.sourceforge.net/jack-rack/jack-rack-1.4.7.tar.bz2.asc" -O "$SRC_DIR/$SIGNATURE" || exit $ERROR_WGET + fi +else + if [ -s "$SRC_DIR/$SRC.sig" ]; then + SIGNATURE="$SRC.sig" + elif [ -s "$SRC_DIR/$SRC.asc" ]; then + SIGNATURE="$SRC.asc" + else + echo Trying to get signature file from $URL.sig... + if wget "$URL.sig" -O "$SRC_DIR/$SRC.sig"; then + SIGNATURE="$SRC.sig" + else + rm $SRC_DIR/$SRC.sig + echo Trying to get signature file from $URL.asc... + if wget "$URL.asc" -O "$SRC_DIR/$SRC.asc"; then + SIGNATURE="$SRC.asc" + else + rm $SRC_DIR/$SRC.asc + echo "Error getting source's signature file" + exit $ERROR_GPG + fi + fi + fi +fi -CWD="`pwd`" +echo Checking $SRC_DIR/$SRC with gpg using $SRC_DIR/$SIGNATURE... +gpg --verify "$SRC_DIR/$SIGNATURE" "$SRC_DIR/$SRC" || exit $ERROR_GPG +echo Success. + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ABOUT-NLS AUTHORS BUGS COPYING ChangeLog NEWS README THANKS TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler----------------------------------------------------| jack-rack: jack-rack jack-rack: jack-rack: JACK Rack is a LADSPA effects rack for the JACK audio API. It @@ -114,18 +217,13 @@ jack-rack: jack-rack: jack-rack: jack-rack: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in ABOUT-NLS AUTHORS BUGS COPYING ChangeLog INSTALL NEWS README THANKS TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/jack-rack/slack-required b/media/sound/jack-rack/slack-required index 1a3011d8..db6dcdb1 100644 --- a/media/sound/jack-rack/slack-required +++ b/media/sound/jack-rack/slack-required @@ -1,2 +1,5 @@ -jack -ladspa +# Dependency list to jack-rack +# +# dependency [condition] [version]] +jack +ladspa diff --git a/media/sound/jack/jack.SlackBuild b/media/sound/jack/jack.SlackBuild index b5975dfc..b7ccaa22 100755 --- a/media/sound/jack/jack.SlackBuild +++ b/media/sound/jack/jack.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for jack, by Rudson R. Alves # requires: libsndfile libfreebob -# tested: jack-0.109.0 +# tested: jack-0.109.2 # # Look for slackbuildrc @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/media/sound/lame/lame.SlackBuild b/media/sound/lame/lame.SlackBuild index f7529143..040339d8 100755 --- a/media/sound/lame/lame.SlackBuild +++ b/media/sound/lame/lame.SlackBuild @@ -10,9 +10,9 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for lame, by Rudson R. Alves # requires: @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/media/sound/lmms/lmms.SlackBuild b/media/sound/lmms/lmms.SlackBuild index c8f6e5c6..9bbe776c 100755 --- a/media/sound/lmms/lmms.SlackBuild +++ b/media/sound/lmms/lmms.SlackBuild @@ -1,107 +1,167 @@ #!/bin/bash # -# lmms.SlackBuild 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 any later version. +# lmms.SlackBuild 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 any later version. # -# lmms.SlackBuild 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. +# lmms.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for lmms -# by rhatto at riseup.net +# slackbuild for lmms, by Silvio Rhatto +# requires: ladspa +# tested: lmms-0.3.2 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building lmms are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="lmms" +# Set variables +CWD="$(pwd)" +SRC_NAME="lmms" +PKG_NAME="lmms" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.2.1} +SRC_VERSION=${VERSION:=0.3.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 -ERROR_TAR=37; ERROR_MKPKG=38 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="bz2" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/lmms/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/lmms/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF -CWD="`pwd`" +# Compile +make $NUMJOBS || exit $ERROR_MAKE -cd $TMP/package-$PACKAGE +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) -mkdir install -cat << EOF > install/slack-desc +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------------| lmms: lmms (Linux MultiMedia Studio) lmms: lmms: LMMS aims to be a free alternative to popular (but commercial and @@ -113,20 +173,13 @@ lmms: lmms: lmms: lmms: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="AUTHORS COPYING ChangeLog INSTALL README TODO" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/lmms/slack-required b/media/sound/lmms/slack-required index 6c92f463..6aa881a8 100644 --- a/media/sound/lmms/slack-required +++ b/media/sound/lmms/slack-required @@ -1 +1,4 @@ -ladspa +# Dependency list to lmms +# +# dependency [condition] [version]] +ladspa diff --git a/media/sound/mp3blaster/mp3blaster.SlackBuild b/media/sound/mp3blaster/mp3blaster.SlackBuild index 172ca66f..91da9532 100755 --- a/media/sound/mp3blaster/mp3blaster.SlackBuild +++ b/media/sound/mp3blaster/mp3blaster.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# mp3blaster.SlackBuild 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 any later version. +# mp3blaster.SlackBuild 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 any later version. # -# mp3blaster.SlackBuild 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. +# mp3blaster.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for mp3blaster -# by rhatto at riseup.net +# slackbuild for mp3blaster, by Silvio Rhatto +# requires: +# tested: mp3blaster-3.2.0 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building mp3blaster are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="mp3blaster" +# Set variables +CWD="$(pwd)" +SRC_NAME="mp3blaster" +PKG_NAME="mp3blaster" ARCH=${ARCH:=i486} -VERSION=${VERSION:=3.2.0} +SRC_VERSION=${VERSION:=3.2.0} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--enable-newthreads"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://www.stack.nl/%7Ebrama/mp3blaster/src/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.stack.nl/~brama/mp3blaster/src/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --enable-newthreads -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS BUGS COPYING CREDITS ChangeLog FAQ NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------| mp3blaster: mp3blaster (a ncurses based audio player) mp3blaster: mp3blaster: MP3Blaster is a text console based program for playing mainly mp3 @@ -114,18 +173,13 @@ mp3blaster: mp3blaster: mp3blaster: mp3blaster: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS BUGS COPYING CREDITS ChangeLog FAQ NEWS README TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/pulseaudio/pulseaudio-0.9.10.diff b/media/sound/pulseaudio/pulseaudio-0.9.10.diff new file mode 100644 index 00000000..ae593e2b --- /dev/null +++ b/media/sound/pulseaudio/pulseaudio-0.9.10.diff @@ -0,0 +1,22 @@ +--- src/daemon/caps.h.old 2008-06-29 20:37:31.000000000 -0300 ++++ src/daemon/caps.h 2008-06-29 20:38:09.000000000 -0300 +@@ -25,7 +25,7 @@ + ***/ + + void pa_drop_root(void); +-void pa_drop_caps(void); ++int pa_drop_caps(void); + int pa_limit_caps(void); + + #endif +--- src/daemon/caps.c.old 2008-06-29 20:37:24.000000000 -0300 ++++ src/daemon/caps.c 2008-06-29 20:38:07.000000000 -0300 +@@ -113,7 +113,7 @@ + } + + /* Drop all capabilities, effectively becoming a normal user */ +-void pa_drop_caps(void) { ++int pa_drop_caps(void) { + cap_t caps; + + pa_assert_se(prctl(PR_SET_KEEPCAPS, 0, 0, 0, 0) == 0); diff --git a/media/sound/pulseaudio/pulseaudio.SlackBuild b/media/sound/pulseaudio/pulseaudio.SlackBuild new file mode 100755 index 00000000..ac6c0180 --- /dev/null +++ b/media/sound/pulseaudio/pulseaudio.SlackBuild @@ -0,0 +1,193 @@ +#!/bin/bash +# +# pulseaudio.SlackBuild 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 any later version. +# +# pulseaudio.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for pulseaudio, by Rafael Diniz +# requires: +# tested: pulseaudio-0.9.10 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="pulseaudio" +PKG_NAME="pulseaudio" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.9.10} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=" --with-system-user=pulseaudio --with-system-group=pulseaudio --with-access-group=users "} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Creating build user and group +if ! grep -qe "^$PKG_NAME:" /etc/group; then + groupadd $PKG_NAME +fi +if ! grep -qe "^$PKG_NAME:" /etc/passwd; then + useradd $PKG_NAME -g $PKG_NAME +fi + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://0pointer.de/lennart/projects/pulseaudio/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np0 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np0 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np0 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np0 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np0 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np0 || exit $ERROR_PATCH + else + patch -Np0 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------------| +pulseaudio: pulseaudio (sound server daemon) +pulseaudio: +pulseaudio: PulseAudio is a sound server for POSIX and Win32 systems. +pulseaudio: +pulseaudio: +pulseaudio: +pulseaudio: +pulseaudio: +pulseaudio: +pulseaudio: http://www.pulseaudio.org/ +pulseaudio: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/sound/qjackctl/qjackctl.SlackBuild b/media/sound/qjackctl/qjackctl.SlackBuild index e93b4c42..6817779e 100755 --- a/media/sound/qjackctl/qjackctl.SlackBuild +++ b/media/sound/qjackctl/qjackctl.SlackBuild @@ -1,104 +1,163 @@ #!/bin/bash # -# qjackctl.SlackBuild 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 any later version. +# qjackctl.SlackBuild 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 any later version. # -# qjackctl.SlackBuild 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. +# qjackctl.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for qjackctl -# by rhatto at riseup.net +# slackbuild for qjackctl, by Silvio Rhatto +# requires: jack +# tested: qjackctl-0.2.23 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building qjackctl are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="qjackctl" +# Set variables +CWD="$(pwd)" +SRC_NAME="qjackctl" +PKG_NAME="qjackctl" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.2.21} +SRC_VERSION=${VERSION:=0.2.23} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/qjackctl/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/qjackctl/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. @@ -114,18 +173,13 @@ qjackctl: qjackctl: qjackctl: qjackctl: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS COPYING ChangeLog INSTALL README TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/sound/qjackctl/slack-required b/media/sound/qjackctl/slack-required index c052c249..405e3b6d 100644 --- a/media/sound/qjackctl/slack-required +++ b/media/sound/qjackctl/slack-required @@ -1,2 +1,4 @@ -jack -qt +# Dependency list to qjackctl +# +# dependency [condition] [version]] +jack diff --git a/media/sound/tempest_for_eliza/tempest_for_eliza.SlackBuild b/media/sound/tempest_for_eliza/tempest_for_eliza.SlackBuild index 113f01a9..a0bab82e 100755 --- a/media/sound/tempest_for_eliza/tempest_for_eliza.SlackBuild +++ b/media/sound/tempest_for_eliza/tempest_for_eliza.SlackBuild @@ -43,7 +43,7 @@ REPOS=${REPOS:=$TMP} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=} -NUMJOBS=${NUMJOBS:=} +NUMJOBS=${NUMJOBS:=-j3} # Set optmization flags based on $ARCH if [ "$ARCH" = "i386" ]; then diff --git a/media/sound/twolame/twolame.SlackBuild b/media/sound/twolame/twolame.SlackBuild index ababd174..c43ef3c9 100755 --- a/media/sound/twolame/twolame.SlackBuild +++ b/media/sound/twolame/twolame.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# twolame.SlackBuild 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 any later version. +# twolame.SlackBuild 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 any later version. # -# twolame.SlackBuild 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. +# twolame.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for twolame -# by rhatto at riseup.net +# slackbuild for twolame, by Silvio Rhatto +# requires: +# tested: twolame-0.3.12 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building twolame are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="twolame" +# Set variables +CWD="$(pwd)" +SRC_NAME="twolame" +PKG_NAME="twolame" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.3.10} +SRC_VERSION=${VERSION:=0.3.12} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/twolame/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/twolame/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------------| twolame: twolame twolame: twolame: TwoLAME is an optimised MPEG Audio Layer 2 (MP2) encoder based on @@ -114,18 +173,13 @@ twolame: twolame: twolame: twolame: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS COPYING ChangeLog README TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/tv/tvtime/tvtime.SlackBuild b/media/tv/tvtime/tvtime.SlackBuild new file mode 100644 index 00000000..ffc81293 --- /dev/null +++ b/media/tv/tvtime/tvtime.SlackBuild @@ -0,0 +1,143 @@ +#!/bin/bash +# +# SlackBuild for tvtime +# http://ufpr.dl.sourceforge.net/sourceforge/tvtime/ +# +# Author: Rudson R Alves +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="tvtime" +PKG_NAME="tvtime" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.0.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rra} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_SRC="$TMP/$SRC_NAME-$SRC_VERSION" + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mtune=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2" + LIBDIR="$PREFIX/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_SRC" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$SRC_VERSION.tar.gz" +URL="http://ufpr.dl.sourceforge.net/sourceforge/tvtime/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$TMP" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR + +cd "$PKG_SRC" + +# Patch source +if [ "$( gcc --version | head -1 | awk '{print $3}' | cut -c1-3 )" = "4.1" ]; then + if [ ! -e $SRC_DIR/tvtime-1.0.2-gcc41.patch ]; then + wget http://svn.pardus.org.tr/pardus/devel/applications/multimedia/tvtime/files/tvtime-1.0.2-gcc41.patch -P $SRC_DIR/ || exit $ERROR_WGET + fi + cd /tmp + patch -p0 -N -E < $SRC_DIR/tvtime-1.0.2-gcc41.patch + cd - +fi + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" || exit $ERROR_CONF + +# Compile +make -j2 || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS README AUTHORS INSTALL COPYING.LGPL ABOUT-NLS ChangeLog COPYING" +mkdir -p "$PKG/$PREFIX/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +cp -a $DOCS "$PKG/$PREFIX/doc/$PKG_NAME-$PKG_VERSION" + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +tvtime: tvtime SlackBuild by rralves +tvtime: +tvtime: tvtime is a high quality television application for use with +tvtime: video capture cards on Linux systems. tvtime processes the +tvtime: input from a capture card and displays it on a computer +tvtime: monitor or projector. +tvtime: +tvtime: +tvtime: +tvtime: +tvtime: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_SRC" "$PKG" +fi + diff --git a/media/video/cinelerra/cinelerra.SlackBuild b/media/video/cinelerra/cinelerra.SlackBuild index 3c49add1..61980566 100755 --- a/media/video/cinelerra/cinelerra.SlackBuild +++ b/media/video/cinelerra/cinelerra.SlackBuild @@ -1,119 +1,185 @@ #!/bin/bash # -# cinelerra.SlackBuild 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 any later version. +# cinelerra.SlackBuild 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 any later version. # -# cinelerra.SlackBuild 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. +# cinelerra.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for cinelerra -# by rafael at riseup.net +# slackbuild for cinelerra, by Silvio Rhatto +# requires: openexr libdv libx264 mjpegtools fftw liba52 lame libsndfile faac faad2 libraw1394 libiec61883 libavc1394 +# tested: cinelerra-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building cinelerra are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="cinelerra" +# Set variables +CWD="$(pwd)" +SRC_NAME="cinelerra" +PKG_NAME="cinelerra" ARCH=${ARCH:=i486} -VERSION=${VERSION:=svn} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41; +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib -fi +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP=$TMP/$PACKAGE -rm -rf $TMP -mkdir -p $TMP +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename svn://svn.skolelinux.org/cinelerra/trunk/hvirtual`" -if [ -d "$SRC_DIR/cinelerra" ]; then - cd $SRC_DIR/cinelerra - svn update || exit $ERROR_VCS -else - cd $SRC_DIR - svn checkout svn://svn.skolelinux.org/cinelerra/trunk/hvirtual || exit $EROR_VCS - mv hvirtual cinelerra +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout svn://svn.skolelinux.org/cinelerra/trunk/hvirtual $SND_DIR || exit $ERROR_VCS + cd $SND_DIR fi -cd $SRC_DIR/cinelerra -VERSION=r"`svnversion cinelerra`" +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -# X.org 7.2 work-around!!! -- for slackware 12 -#if [ -f "$CWD/$PACKAGE.diff" ]; then -# patch -p0 < $CWD/$PACKAGE.diff || exit $ERROR_PATCH -#fi +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi +# Configure if [ "$ARCH" == "i586" ] || [ "$ARCH" == "i686" ]; then - EXTRA_ACFLAGS=" --enable-mmx" + CONF_OPTIONS="$CONF_OPTIONS --enable-mmx" fi if [ "$HAVE_ALTIVEC" == "true" ]; then - EXTRA_ACFLAGS=" --enable-altivec" + CONF_OPTIONS="$CONF_OPTIONS --enable-altivec" if [ -f "$CWD/$PACKAGE-altivec.diff" ]; then patch -p0 < $CWD/$PACKAGE-altivec.diff || exit $ERROR_PATCH fi fi ./autogen.sh || exit $ERROR_CONF -./configure --prefix=/usr --libdir=$LIBDIR $EXTRA_ACFLAGS || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL LICENSE NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler----------------------------------------------------| cinelerra: cinelerra (cinelerra is powerfull Non Linear Video Editor) cinelerra: cinelerra: Heroine Virtual Ltd. presents an advanced content creation system @@ -125,18 +191,13 @@ cinelerra: This version is the cv.cinelerra.org branch (in fact, a fork). cinelerra: cinelerra: http://cv.cinelerra.org/ cinelerra: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS COPYING ChangeLog INSTALL LICENSE NEWS README TODO;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/video/cinelerra/slack-required b/media/video/cinelerra/slack-required index 649a19c4..8b10b8d6 100644 --- a/media/video/cinelerra/slack-required +++ b/media/video/cinelerra/slack-required @@ -1,17 +1,16 @@ -libogg -libvorbis -libtheora -libtiff -openexr -libdv -libx264 -mjpegtools -fftw -liba52 -lame -libsndfile -faac -faad2 -libraw1394 -libiec61883 -libavc1394 +# Dependency list to cinelerra +# +# dependency [condition] [version]] +openexr +libdv +libx264 +mjpegtools +fftw +liba52 +lame +libsndfile +faac +faad2 +libraw1394 +libiec61883 +libavc1394 diff --git a/media/video/dvgrab/dvgrab.SlackBuild b/media/video/dvgrab/dvgrab.SlackBuild index be97fffb..ce947508 100755 --- a/media/video/dvgrab/dvgrab.SlackBuild +++ b/media/video/dvgrab/dvgrab.SlackBuild @@ -1,107 +1,167 @@ #!/bin/bash # -# dvgrab.SlackBuild 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 any later version. +# dvgrab.SlackBuild 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 any later version. # -# dvgrab.SlackBuild 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. +# dvgrab.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for dvgrab -# by rafael at riseup.net +# slackbuild for dvgrab, by Silvio Rhatto +# requires: libraw1394 libavc1394 libiec61883 libdv +# tested: dvgrab-3.1 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building dvgrab are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="dvgrab" +# Set variables +CWD="$(pwd)" +SRC_NAME="dvgrab" +PKG_NAME="dvgrab" ARCH=${ARCH:=i486} -VERSION=${VERSION:=3.1} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=3.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--with-docdir=/usr/doc/$PKG_NAME-$VERSION"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://ufpr.dl.sourceforge.net/sourceforge/kino/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/kino/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| dvgrab: dvgrab (dvgrab is a ieee1394 dv grabber) dvgrab: dvgrab: Excellent command line audio and video DV grabber data via IEEE1394 @@ -113,18 +173,13 @@ dvgrab: dvgrab: dvgrab: dvgrab: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS COPYING ChangeLog INSTALL NEWS README TODO;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/video/dvgrab/slack-required b/media/video/dvgrab/slack-required index b7947dd4..b1d9c0df 100644 --- a/media/video/dvgrab/slack-required +++ b/media/video/dvgrab/slack-required @@ -1,4 +1,7 @@ -libraw1394 -libavc1394 -libiec61883 -libdv +# Dependency list to dvgrab +# +# dependency [condition] [version]] +libraw1394 +libavc1394 +libiec61883 +libdv diff --git a/media/video/ffmpeg/ffmpeg.SlackBuild b/media/video/ffmpeg/ffmpeg.SlackBuild index d2877773..c21a8e1a 100755 --- a/media/video/ffmpeg/ffmpeg.SlackBuild +++ b/media/video/ffmpeg/ffmpeg.SlackBuild @@ -1,114 +1,186 @@ #!/bin/bash # -# ffmpeg.SlackBuild 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 any later version. +# ffmpeg.SlackBuild 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 any later version. # -# ffmpeg.SlackBuild 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. +# ffmpeg.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for ffmpeg -# by rhatto at riseup.net +# slackbuild for ffmpeg, by Silvio Rhatto +# requires: lame faac libx264 +# tested: ffmpeg-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building ffmpeg are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="ffmpeg" +# Set variables +CWD="$(pwd)" +SRC_NAME="ffmpeg" +PKG_NAME="ffmpeg" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="$EXTRA_AC_FLAGS --enable-shared --enable-pthreads --enable-swscale --enable-x11grab --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libfaac --enable-libx264 --enable-postproc --enable-gpl"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="svn" -PACKAGE_EXT="" -SRC="" -URL="" - -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR - -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename svn://svn.mplayerhq.hu/ffmpeg/trunk`" + +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" + svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk $SND_DIR || exit $ERROR_VCS + cd $SND_DIR fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk $PACKAGE -cd $PACKAGE -# we need that to compile 05/01/2007 ffmpeg.... -# may be we should remove that in any future -svn checkout svn://svn.mplayerhq.hu/mplayer/trunk/libswscale +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -export EXTRA_AC_FLAGS="" +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi +# Configure if [ "$ARCH" == "powerpc" ]; then - export EXTRA_AC_FLAGS="--disable-altivec" + EXTRA_AC_FLAGS="--disable-altivec" fi +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Lets make our package compatible with the ffmpeg debian package +mkdir $PKG/usr/include/ffmpeg +cp $PKG/usr/include/libavutil/* $PKG/usr/include/ffmpeg +cp $PKG/usr/include/libavdevice/* $PKG/usr/include/ffmpeg +cp $PKG/usr/include/libavformat/* $PKG/usr/include/ffmpeg +cp $PKG/usr/include/libswscale/* $PKG/usr/include/ffmpeg +cp $PKG/usr/include/libavcodec/* $PKG/usr/include/ffmpeg +mkdir $PKG/usr/include/postproc +cp $PKG/usr/include/libpostproc/* $PKG/usr/include/postproc + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="COPYING CREDITS Changelog MAINTAINERS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done - -./configure --prefix=/usr --libdir=$LIBDIR $EXTRA_AC_FLAGS --enable-shared --enable-pthreads --enable-swscale --enable-x11grab --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libfaac --enable-libx264 --enable-postproc --enable-gpl -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null - -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| ffmpeg: ffmpeg (ffmpeg multimedia system) ffmpeg: ffmpeg: FFmpeg is a complete solution to record, convert and stream audio @@ -120,18 +192,13 @@ ffmpeg: ffmpeg: ffmpeg: ffmpeg: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in COPYING CREDITS Changelog Doxyfile INSTALL MAINTAINERS README; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/video/ffmpeg/slack-required b/media/video/ffmpeg/slack-required index 33504221..54b5b619 100644 --- a/media/video/ffmpeg/slack-required +++ b/media/video/ffmpeg/slack-required @@ -1,3 +1,6 @@ -lame -faac -libx264 +# Dependency list to ffmpeg +# +# dependency [condition] [version]] +lame +faac +libx264 diff --git a/media/video/ffmpeg2theora/ffmpeg2theora.SlackBuild b/media/video/ffmpeg2theora/ffmpeg2theora.SlackBuild index 9fd59855..ceeaae53 100755 --- a/media/video/ffmpeg2theora/ffmpeg2theora.SlackBuild +++ b/media/video/ffmpeg2theora/ffmpeg2theora.SlackBuild @@ -1,108 +1,167 @@ #!/bin/bash # -# ffmpeg2theora.SlackBuild 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 any later version. +# ffmpeg2theora.SlackBuild 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 any later version. # -# ffmpeg2theora.SlackBuild 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. +# ffmpeg2theora.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for ffmpeg2theora -# by rhatto at riseup.net +# slackbuild for ffmpeg2theora, by Silvio Rhatto +# requires: ffmpeg +# tested: ffmpeg2theora-0.21 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building ffmpeg2theora are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="ffmpeg2theora" +# Set variables +CWD="$(pwd)" +SRC_NAME="ffmpeg2theora" +PKG_NAME="ffmpeg2theora" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.20} +SRC_VERSION=${VERSION:=0.21} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="bz2" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://www.v2v.cc/~j/ffmpeg2theora/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://v2v.cc/~j/ffmpeg2theora/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------| ffmpeg2theora: ffmpeg2theora ffmpeg2theora: ffmpeg2theora: A simple converter to create Ogg Theora files. @@ -114,18 +173,13 @@ ffmpeg2theora: ffmpeg2theora: ffmpeg2theora: ffmpeg2theora: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS COPYING ChangeLog INSTALL NEWS README TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/video/ffmpeg2theora/slack-required b/media/video/ffmpeg2theora/slack-required index 20645e64..bddca68a 100644 --- a/media/video/ffmpeg2theora/slack-required +++ b/media/video/ffmpeg2theora/slack-required @@ -1 +1,4 @@ -ffmpeg +# Dependency list to ffmpeg2theora +# +# dependency [condition] [version]] +ffmpeg diff --git a/media/video/kino/kino.SlackBuild b/media/video/kino/kino.SlackBuild index 03393d5d..973b7ea1 100755 --- a/media/video/kino/kino.SlackBuild +++ b/media/video/kino/kino.SlackBuild @@ -1,109 +1,167 @@ #!/bin/bash # -# kino.SlackBuild 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 any later version. +# kino.SlackBuild 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 any later version. # -# kino.SlackBuild 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. +# kino.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for kino -# by rafael at riseup.net +# slackbuild for kino, by Silvio Rhatto +# requires: libsamplerate libraw1394 libavc1394 libdv libiec61883 libquicktime +# tested: kino-1.3.0 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building kino are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="kino" +# Set variables +CWD="$(pwd)" +SRC_NAME="kino" +PKG_NAME="kino" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.2.0} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.3.0} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--enable-quicktime --sysconfdir=/etc --with-docdir=/usr/doc/$PACKAGE-$VERSION"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://ufpr.dl.sourceforge.net/sourceforge/kino/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/kino/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p0 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -# options --with-libdv and --with-libdv-only is used because of incompatibilities of kino 0.9.5 with latest ffmpeg.... -#./configure --prefix=/usr --enable-quicktime --with-libdv --with-libdv-only --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION -./configure --prefix=/usr --enable-quicktime --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ABOUT-NLS BUGS AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------------| kino: kino (Kino is a non-linear DV editor for GNU/Linux) kino: kino: Kino is a non-linear DV editor for GNU/Linux. It features excellent @@ -115,18 +173,13 @@ kino: kino: kino: http://www.kinodv.org/ kino: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in ABOUT-NLS BUGS AUTHORS COPYING ChangeLog INSTALL NEWS README TODO;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/video/kino/slack-required b/media/video/kino/slack-required index 06d0c7f9..3fc6c61a 100644 --- a/media/video/kino/slack-required +++ b/media/video/kino/slack-required @@ -1,6 +1,9 @@ -libsamplerate -libraw1394 -libavc1394 -libdv -libiec61883 -libquicktime +# Dependency list to kino +# +# dependency [condition] [version]] +libsamplerate +libraw1394 +libavc1394 +libdv +libiec61883 +libquicktime diff --git a/media/video/mjpegtools/mjpegtools.SlackBuild b/media/video/mjpegtools/mjpegtools.SlackBuild index fa94dd45..16aafc44 100755 --- a/media/video/mjpegtools/mjpegtools.SlackBuild +++ b/media/video/mjpegtools/mjpegtools.SlackBuild @@ -1,128 +1,172 @@ #!/bin/bash # -# mjpegtools.SlackBuild 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 any later version. +# mjpegtools.SlackBuild 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 any later version. # -# mjpegtools.SlackBuild 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. +# mjpegtools.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for mjpegtools -# by rafael at riseup.net +# slackbuild for mjpegtools, by Silvio Rhatto +# requires: libdv libquicktime +# tested: mjpegtools-1.9.0rc3 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building mjpegtools are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="mjpegtools" +# Set variables +CWD="$(pwd)" +SRC_NAME="mjpegtools" +PKG_NAME="mjpegtools" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.9.0rc3} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.9.0rc3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--with-docdir=/usr/doc/$PKG_NAME-$VERSION"} +NUMJOBS=${NUMJOBS:=""} -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib -fi - -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://ufpr.dl.sourceforge.net/sourceforge/mjpeg/$SRC" - -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" +if [ "$ARCH" == "i386" ] || [ "$ARCH" == "i486" ]; then + CONF_OPTIONS="$CONF_OPTIONS --disable-simd-accel" fi -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$ARCH" == "powerpc" ] && [ "$HAVE_ALTIVEC" != "true" ] && [ "$VERSION" == "1.8.0" ] ; then - patch -p0 < $CWD/$PACKAGE-$VERSION-powerpc.diff -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -RERUN_AUTOCONF="no" -if [ "$ARCH" == "x86_64" ] && [ "$VERSION" == "1.9.0rc2" ]; then - patch -p0 < $CWD/$PACKAGE-$VERSION-x86_64.diff - RERUN_AUTOCONF="yes" -fi +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/mjpeg/$SRC" -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p0 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -EXTRA_AC_OPTIONS="" - -if [ "$ARCH" == "i386" ] || [ "$ARCH" == "i486" ]; then - EXTRA_AC_OPTIONS=" --disable-simd-accel" -fi +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ "$RERUN_AUTOCONF" == "yes" ]; then - autoreconf -f -i +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --with-docdir=/usr/doc/$PACKAGE-$VERSION $EXTRA_AC_OPTIONS - -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +autoreconf -vif +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS BUGS CHANGES COPYING ChangeLog INSTALL NEWS PLANS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------| mjpegtools: mjpegtools (mjpegtools is a set of softwares for MPEG A/V) mjpegtools: mjpegtools: The mjpeg programs are a set of tools that can do recording of videos @@ -134,18 +178,13 @@ mjpegtools: mjpegtools: mjpegtools: http://mjpeg.sourceforge.net/ mjpegtools: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS BUGS CHANGES COPYING ChangeLog INSTALL NEWS PLANS README TODO;do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/video/mjpegtools/slack-required b/media/video/mjpegtools/slack-required index cd1ee77b..8a2c6399 100644 --- a/media/video/mjpegtools/slack-required +++ b/media/video/mjpegtools/slack-required @@ -1,2 +1,5 @@ -libdv -libquicktime +# Dependency list to mjpegtools +# +# dependency [condition] [version]] +libdv +libquicktime diff --git a/media/video/mplayer/MPlayer.SlackBuild b/media/video/mplayer/MPlayer.SlackBuild index 832e6112..7f5feaa3 100755 --- a/media/video/mplayer/MPlayer.SlackBuild +++ b/media/video/mplayer/MPlayer.SlackBuild @@ -1,136 +1,188 @@ #!/bin/bash # -# MPlayer.SlackBuild 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 any later version. +# MPlayer.SlackBuild 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 any later version. # -# MPlayer.SlackBuild 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. +# MPlayer.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for MPlayer -# by rhatto at riseup.net +# slackbuild for MPlayer, by Silvio Rhatto +# requires: speex jack libx264 faac faad2 +# tested: MPlayer-1.0rc2 # -# Modified: Alexandre aka xdoctor -# Date: 11/03/2007 -# Acrescimo do download de Skin e instalação - -if [ -s "slack-required" ]; then - echo Recomended and required packages for building MPlayer are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default package settings -PACKAGE="MPlayer" +# Set variables +CWD="$(pwd)" +SRC_NAME="MPlayer" +PKG_NAME="MPlayer" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.0rc2} -BUILD=${BUILD:=2rha} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.0rc2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--disable-ivtv --confdir=/etc --language=pt_BR --enable-largefiles --enable-gui --enable-real"} +NUMJOBS=${NUMJOBS:=""} -# default skin settings -SKIN="Blue" -VERSION_SKIN="1.7" -SKIN_EXT="bz2" -PACKAGE_SKIN=${PACKAGE_SKIN:=$SKIN-$VERSION_SKIN.tar.$SKIN_EXT} +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" -# ------- error codes for createpkg -------------- -ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 -ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 -ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +if [ "$ARCH" == "i586" ] || [ "$ARCH" == "i686" ]; then + CONF_OPTIONS="$CONF_OPTIONS --enable-qtx" +fi -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# URL do MPlayer -RTOOL="wget" -PACKAGE_EXT="bz2" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://www1.mplayerhq.hu/MPlayer/releases/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -# URL do Skin do MPlayer -URL_SKIN="http://www.mplayerhq.hu/MPlayer/skins/$SKIN-$VERSION_SKIN.tar.$SKIN_EXT" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -# Download do MPlayer -if [ "$RTOOL" == "wget" ]; then - if [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET - fi -fi +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://www1.mplayerhq.hu/MPlayer/releases/$SRC" -# Download do Skin -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$PACKAGE_SKIN" ]; then - wget "$URL_SKIN" -O "$SRC_DIR/$PACKAGE_SKIN" || exit +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p0 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH -fi +# Download skin +SKIN="Blue" +SKIN_VERSION="1.7" +SKIN_EXT="bz2" +SKIN_SRC=${PACKAGE_SKIN:=$SKIN-$SKIN_VERSION.tar.$SKIN_EXT} +SKIN_URL="http://www.mplayerhq.hu/MPlayer/skins/$SKIN_SRC" -if [ "$ARCH" == "i586" ] || [ "$ARCH" == "i686" ]; then - EXTRA_ARGS=" --enable-qtx" +if [ ! -s "$SRC_DIR/$SKIN_SRC" ] || ! bunzip2 -t "$SRC_DIR/$SKIN_SRC" 2> /dev/null; then + wget "$SKIN_URL" -O "$SRC_DIR/$SKIN_SRC" || exit $ERROR_WGET fi -# add --enable-runtime-cpudetection for package creation! -# removing ivtv as for slack 12.1 it`s not compiling -./configure --disable-ivtv --prefix=/usr --libdir=$LIBDIR --confdir=/etc --language=pt_BR --enable-largefiles --enable-gui --enable-real $EXTRA_ARGS || exit $ERROR_CONF -make || exit $ERROR_MAKE -echo "$TMP/package-$PACKAGE/$PACKAGE" -make DESTDIR=$TMP/package-$PACKAGE/$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" -echo $CWD +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE/$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Skin installation +SKIN_DIR=${SKIN_DIR:=$PKG/usr/share/mplayer/skins} +mkdir -p $SKIN_DIR +tar jxvf $SRC_DIR/$SKIN_SRC -C $SKIN_DIR +mv $SKIN_DIR/$SKIN $SKIN_DIR/default + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS ChangeLog Copyright DOCS LICENSE README TOOLS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------------| MPlayer: MPlayer (A Movie Player) MPlayer: MPlayer: MPlayer is a movie and animation player that supports a wide range @@ -142,27 +194,13 @@ MPlayer: and Win32 codec DLLs. It has basic VCD/DVD playback functionality, MPlayer: including DVD subtitles, but supports many text-based subtitle formats MPlayer: too. For video output, nearly every existing interface is supported. MPlayer: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS ChangeLog Copyright DOCS LICENSE README TOOLS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -# Extracao e criacao da pasta para Skin -# criacao do diretorio -SKIN_DIR=${SKIN_DIR:=$TMP/package-$PACKAGE/$PACKAGE/usr/share/mplayer/skins} -mkdir -p usr/share/mplayer/skins -cd $SKIN_DIR -tar jxvf $SRC_DIR/$PACKAGE_SKIN -mv $SKIN default -cd $TMP/package-$PACKAGE/$PACKAGE - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/video/mplayer/slack-required b/media/video/mplayer/slack-required index 30e2fe84..102254b8 100644 --- a/media/video/mplayer/slack-required +++ b/media/video/mplayer/slack-required @@ -1,14 +1,8 @@ -libmad -esound -glib -libogg -libvorbis -libungif -arts -audiofile -sdl -cdparanoia -libtheora -speex -jack -libx264 +# Dependency list to MPlayer +# +# dependency [condition] [version]] +speex +jack +libx264 +faac +faad2 diff --git a/media/video/oggfwd/oggfwd.SlackBuild b/media/video/oggfwd/oggfwd.SlackBuild index 912d2ace..9c46c7f6 100755 --- a/media/video/oggfwd/oggfwd.SlackBuild +++ b/media/video/oggfwd/oggfwd.SlackBuild @@ -1,107 +1,161 @@ #!/bin/bash # -# oggfwd.SlackBuild 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 any later version. +# oggfwd.SlackBuild 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 any later version. # -# oggfwd.SlackBuild 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. +# oggfwd.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for oggfwd -# by rafael at riseup.net +# slackbuild for oggfwd, by Silvio Rhatto +# requires: speex libshout +# tested: oggfwd-0.2 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building oggfwd are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="oggfwd" +# Set variables +CWD="$(pwd)" +SRC_NAME="oggfwd" +PKG_NAME="oggfwd" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.2} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=0.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://v2v.cc/~j/oggfwd/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://juba.tvlivre.org/$SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p0 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np0 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np0 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np0 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np0 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np0 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np0 || exit $ERROR_PATCH + else + patch -Np0 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ChangeLog README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| oggfwd: OggFWD (a simple ogg streamer) oggfwd: oggfwd: A simple ogg streamer (to icecast compatible servers), very useful @@ -113,18 +167,13 @@ oggfwd: oggfwd: oggfwd: http://v2v.cc/~j/oggfwd/ oggfwd: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in ChangeLog README; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/video/oggfwd/slack-required b/media/video/oggfwd/slack-required index fe98230d..b096d477 100644 --- a/media/video/oggfwd/slack-required +++ b/media/video/oggfwd/slack-required @@ -1,2 +1,5 @@ -speex -libshout +# Dependency list to oggfwd +# +# dependency [condition] [version]] +speex +libshout diff --git a/media/video/theorur/slack-required b/media/video/theorur/slack-required index 9c53a7b6..2523d4de 100644 --- a/media/video/theorur/slack-required +++ b/media/video/theorur/slack-required @@ -1,3 +1,6 @@ -dvgrab -ffmpeg2theora -oggfwd +# Dependency list to theorur +# +# dependency [condition] [version]] +dvgrab +ffmpeg2theora +oggfwd diff --git a/media/video/theorur/theorur.SlackBuild b/media/video/theorur/theorur.SlackBuild index f2431b4d..fb21cb16 100755 --- a/media/video/theorur/theorur.SlackBuild +++ b/media/video/theorur/theorur.SlackBuild @@ -1,95 +1,112 @@ #!/bin/bash # -# theorur.SlackBuild 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 any later version. +# theorur.SlackBuild 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 any later version. # -# theorur.SlackBuild 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. +# theorur.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for theorur -# by rafael at riseup.net +# slackbuild for theorur, by Silvio Rhatto +# requires: dvgrab ffmpeg2theora oggfwd +# tested: theorur-0.5.3 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building theorur are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="theorur" +# Set variables +CWD="$(pwd)" +SRC_NAME="theorur" +PKG_NAME="theorur" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.5.3} -BUILD=${BUILD:=1rd} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=0.5.3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://theorur.tvlivre.org/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://theorur.tvlivre.org/$SRC" -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff -fi +# Compile +make $NUMJOBS || exit $ERROR_MAKE -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -strip darksnow +# Install +strip theorur make make_pkg -mv *-1rd.tgz $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +mv *-1rd.tgz $REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/media/video/ucview/slack-required b/media/video/ucview/slack-required new file mode 100644 index 00000000..481322ff --- /dev/null +++ b/media/video/ucview/slack-required @@ -0,0 +1,3 @@ +unicap +GConf +dbus diff --git a/media/video/ucview/ucview.SlackBuild b/media/video/ucview/ucview.SlackBuild new file mode 100755 index 00000000..3b938e35 --- /dev/null +++ b/media/video/ucview/ucview.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# ucview.SlackBuild 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 any later version. +# +# ucview.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for ucview, by Rafael Diniz +# requires: +# tested: ucview-0.20.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="ucview" +PKG_NAME="ucview" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.20.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://unicap-imaging.org/downloads/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------------| +ucview: ucview (video capture program) +ucview: +ucview: UCView is a video capture and display program +ucview: based on the unicap video imaging library. +ucview: +ucview: +ucview: +ucview: +ucview: +ucview: http://unicap-imaging.org/ucview.htm +ucview: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/media/video/vlc/vlc.SlackBuild b/media/video/vlc/vlc.SlackBuild index 354e851e..55260c43 100755 --- a/media/video/vlc/vlc.SlackBuild +++ b/media/video/vlc/vlc.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for vlc, by Silvio Rhatto # requires: jack libraw1394 libdc1394 mpeg2dec liba52 faac lame wxWidgets libshout ffmpeg -# tested: vlc-0.8.6f +# tested: vlc-0.8.6i # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="vlc" PKG_NAME="vlc" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.8.6f} +SRC_VERSION=${VERSION:=0.8.6i} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -57,6 +57,7 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -77,7 +78,7 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary SRC="$SRC_NAME-$VERSION.tar.gz" -URL="http://download.videolan.org/pub/videolan/vlc/0.8.6f/$SRC" +URL="http://download.videolan.org/pub/videolan/vlc/0.8.6i/$SRC" if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/net/analyzer/nagios-plugins/nagios-plugins.SlackBuild b/net/analyzer/nagios-plugins/nagios-plugins.SlackBuild index ccb7da5a..7ec8a42f 100755 --- a/net/analyzer/nagios-plugins/nagios-plugins.SlackBuild +++ b/net/analyzer/nagios-plugins/nagios-plugins.SlackBuild @@ -15,7 +15,8 @@ # Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, # MA 02111-1307, USA # -# SlackBuild for Nagios Plugins (http://nagiosplugins.org/) +# SlackBuild for Nagios Plugins +# http://nagiosplugins.org/ # # Author: Luis ( luis at riseup d0t net ) # @@ -32,7 +33,7 @@ CWD="$(pwd)" SRC_NAME="nagios-plugins" PKG_NAME="nagios-plugins" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=1.4.11} +SRC_VERSION=${VERSION:=1.4.12} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1ls} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME diff --git a/net/analyzer/nagios/nagios.SlackBuild b/net/analyzer/nagios/nagios.SlackBuild index 6a6f00e0..46b9c5a4 100755 --- a/net/analyzer/nagios/nagios.SlackBuild +++ b/net/analyzer/nagios/nagios.SlackBuild @@ -15,7 +15,8 @@ # Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, # MA 02111-1307, USA # -# SlackBuild for Nagios (http://www.nagios.org/) +# SlackBuild for Nagios +# http://www.nagios.org/ # # Author: Luis ( luis at riseup d0t net ) # @@ -32,7 +33,7 @@ CWD="$(pwd)" SRC_NAME="nagios" PKG_NAME="nagios" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.11} +SRC_VERSION=${VERSION:=3.0.3} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1ls} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -103,9 +104,17 @@ make install-commandmode DESTDIR="$PKG" || exit $ERROR_INSTALL make install-config DESTDIR="$PKG" || exit $ERROR_INSTALL mv "$PKG/etc/rc.d/init.d/nagios" "$PKG/etc/rc.d/rc.nagios.new" rmdir "$PKG/etc/rc.d/init.d" -for file in $(ls -1 "$PKG/$PREFIX"/etc/*); do - mv "$file" "$file".new -done +( cd "$PKG/$PREFIX"/etc + for file in $(ls -1); do + if [ -f "$file" ]; then + mv "$file" "$file".new + fi + done + cd objects + for file in $(ls -1); do + mv "$file" "$file".new + done +) # Strip binaries ( cd "$PKG" diff --git a/net/firewall/arno-iptables-firewall/arno-iptables-firewall.SlackBuild b/net/firewall/arno-iptables-firewall/arno-iptables-firewall.SlackBuild index 478680d5..a4f3f3eb 100755 --- a/net/firewall/arno-iptables-firewall/arno-iptables-firewall.SlackBuild +++ b/net/firewall/arno-iptables-firewall/arno-iptables-firewall.SlackBuild @@ -43,7 +43,7 @@ REPOS=${REPOS:=$TMP} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=} -NUMJOBS=${NUMJOBS:=-j3} +NUMJOBS=${NUMJOBS:=} # Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 diff --git a/net/im/bitlbee/bitlbee-1.2.1-x86_64.diff b/net/im/bitlbee/bitlbee-1.2.1-x86_64.diff new file mode 100644 index 00000000..ce2dcb5b --- /dev/null +++ b/net/im/bitlbee/bitlbee-1.2.1-x86_64.diff @@ -0,0 +1,12 @@ +diff -Naur bitlbee-1.2.1.orig/configure bitlbee-1.2.1/configure +--- bitlbee-1.2.1.orig/configure 2008-06-09 20:09:06.000000000 -0300 ++++ bitlbee-1.2.1/configure 2008-07-15 12:40:40.000000000 -0300 +@@ -340,7 +340,7 @@ + + echo 'SSL_CLIENT=ssl_'$ssl'.o' >> Makefile.settings + +-for i in /lib /usr/lib /usr/local/lib; do ++for i in /lib64 /usr/lib64 /usr/local/lib64 /lib /usr/lib /usr/local/lib; do + if [ -f $i/libresolv.a ]; then + echo '#define HAVE_RESOLV_A' >> config.h + echo 'EFLAGS+='$i'/libresolv.a' >> Makefile.settings diff --git a/net/im/bitlbee/bitlbee.SlackBuild b/net/im/bitlbee/bitlbee.SlackBuild index b95db515..66c52acf 100755 --- a/net/im/bitlbee/bitlbee.SlackBuild +++ b/net/im/bitlbee/bitlbee.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for bitlbee, by Silvio Rhatto # requires: gnutls -# tested: bitlbee-1.2 +# tested: bitlbee-1.2.1 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="bitlbee" PKG_NAME="bitlbee" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=1.2} +SRC_VERSION=${VERSION:=1.2.1} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -87,9 +87,41 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi + # Configure CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ @@ -123,9 +155,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. @@ -168,7 +200,7 @@ mkgroup() { if ! grep -qe "^\$GROUP:" etc/group; then echo Creating group \$GROUP... chroot . /usr/sbin/groupadd \$GROUP - fi + fi } mkuser() { diff --git a/net/im/feast/feast.SlackBuild b/net/im/feast/feast.SlackBuild index c5f8abe0..300296cd 100755 --- a/net/im/feast/feast.SlackBuild +++ b/net/im/feast/feast.SlackBuild @@ -1,118 +1,130 @@ #!/bin/bash # -# feast.SlackBuild 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 any later version. +# feast.SlackBuild 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 any later version. # -# feast.SlackBuild 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. +# feast.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for feast -# by rhatto at riseup.net +# slackbuild for feast, by Silvio Rhatto +# requires: libiconv silc-toolkit +# tested: feast-03b # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building feast are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="feast" +# Set variables +CWD="$(pwd)" +SRC_NAME="feast" +PKG_NAME="feast" ARCH=${ARCH:=i486} -VERSION=${VERSION:=03b} +SRC_VERSION=${VERSION:=03b} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="tgz" -SRC="$PACKAGE"_"$VERSION.$PACKAGE_EXT" -URL="http://www.hick.org/~raffi/download/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Dowload source if necessary +SRC="$SRC_NAME"_"$VERSION.tgz" +URL="http://www.hick.org/~raffi/download/$SRC" -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +if [ ! -s "$SRC_DIR/$SRC" ] || ! gzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd "$PACKAGE"_"$VERSION" - -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH -fi +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" +# Compile if [ "$ARC" == "x86_64" ]; then sed -e 's/\/usr\/lib/\/usr\/lib64/' Makefile > Makefile.tmp mv Makefile.tmp Makefile fi +make $NUMJOBS || exit $ERROR_MAKE -make || exit $ERROR_MAKE - -CWD="`pwd`" - -mkdir -p $TMP/package-$PACKAGE -cd $TMP/package-$PACKAGE - +# Install +strip feast mkdir -p usr/bin cp $CWD/feast usr/bin mkdir -p etc/feast cp $CWD/feast.conf etc/feast.conf.new -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Install documentation +DOCS="license.txt readme.txt" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------------| feast: feast (silc to irc translator) feast: feast: SILC stands for Secure Internet Live Conferencing. @@ -124,23 +136,55 @@ feast: feast: feast: feast: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="license.txt readme.txt" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done +EODESC + +# Add a post-installation script (doinst.sh) +cat << EOSCRIPT > "$PKG/install/doinst.sh" +config() { + NEW="\$1" + OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)" + OLD="\$(dirname \$NEW)/\$(basename \$OLD .sample)" + OLD="\$(dirname \$NEW)/\$(basename \$OLD .dist)" + + # If there's no config file by that name, mv it over: + if [ ! -r \$OLD ]; then + mv \$NEW \$OLD + elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then + # toss the redundant copy + rm \$NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +mkgroup() { + GROUP="\$1" + if ! grep -qe "^\$GROUP:" etc/group; then + echo Creating group \$GROUP... + chroot . /usr/sbin/groupadd \$GROUP + fi +} + +mkuser() { + USER="\$1" + if [ ! -z "\$2" ]; then + GROUP="\$2" + else + GROUP="\$USER" + fi + if ! grep -qe "^\$USER:" etc/passwd; then + echo Creating user \$USER... + chroot . /usr/sbin/useradd \$USER -g \$GROUP + fi +} -# install script -echo '( if [ ! -f "etc/feast.conf" ]; then mv etc/feast.conf.new etc/feast.conf; fi )' > install/doinst.sh +config etc/feast.conf.new +EOSCRIPT -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/net/im/feast/slack-required b/net/im/feast/slack-required index a22b636a..948dca18 100644 --- a/net/im/feast/slack-required +++ b/net/im/feast/slack-required @@ -1,2 +1,5 @@ -libiconv -silc-toolkit +# Dependency list to feast +# +# dependency [condition] [version]] +libiconv +silc-toolkit diff --git a/net/im/pidgin/pidgin.SlackBuild b/net/im/pidgin/pidgin.SlackBuild new file mode 100644 index 00000000..d030db2a --- /dev/null +++ b/net/im/pidgin/pidgin.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# pidgin.SlackBuild 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 any later version. +# +# pidgin.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for pidgin, by Rudson R. Alves +# requires: +# tested: pidgin-2.4.3 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="pidgin" +PKG_NAME="pidgin" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.4.3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rra} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--disable-gtkspell --disable-gstreamer --disable-meanwhile --disable-avahi"} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/pidgin/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING COPYRIGHT ChangeLog ChangeLog.API ChangeLog.win32 HACKING INSTALL PLUGIN_HOWTO README README.MTN README.mingw NEWS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------------| +pidgin: pidgin by Slack.Sarava +pidgin: +pidgin: Pidgin is a multi-protocol Instant Messaging client that +pidgin: allows you to use all of your IM accounts at once. +pidgin: +pidgin: Pidgin is free software. It is licensed under the GNU +pidgin: General Public License (GPL) version 2. +pidgin: +pidgin: +pidgin: +pidgin: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/net/libs/libsoup/libsoup.SlackBuild b/net/libs/libsoup/libsoup.SlackBuild index 1d707216..3fd81069 100755 --- a/net/libs/libsoup/libsoup.SlackBuild +++ b/net/libs/libsoup/libsoup.SlackBuild @@ -39,7 +39,7 @@ fi # default settings PACKAGE="libsoup" ARCH=${ARCH:=i486} -VERSION=${VERSION:=2.2.98} +VERSION=${VERSION:=2.4.1} BUILD=${BUILD:=1rha} SRC_DIR=${SRC:=$CWD} TMP=${TMP:=/tmp} @@ -60,8 +60,8 @@ ERROR_PATCH=40 RTOOL="wget" PACKAGE_EXT="gz" -SRC="$PACKAGE"_"$VERSION.orig.tar.$PACKAGE_EXT" -URL="http://ftp.debian.org/debian/pool/main/libs/libsoup/$SRC" +SRC=$PACKAGE-$VERSION.tar.$PACKAGE_EXT +URL="http://ftp.acc.umu.se/pub/gnome/sources/libsoup/2.4/$SRC" SRC_DIR="$SRC_DIR/$PACKAGE" mkdir -p $SRC_DIR diff --git a/net/libs/libsoup/slack-required b/net/libs/libsoup/slack-required new file mode 100644 index 00000000..db5ab1b3 --- /dev/null +++ b/net/libs/libsoup/slack-required @@ -0,0 +1 @@ +glib2 >= 2.15.3 diff --git a/net/mail-filter/bogofilter/bogofilter.SlackBuild b/net/mail-filter/bogofilter/bogofilter.SlackBuild index cfc7f69b..3d893452 100755 --- a/net/mail-filter/bogofilter/bogofilter.SlackBuild +++ b/net/mail-filter/bogofilter/bogofilter.SlackBuild @@ -1,108 +1,135 @@ #!/bin/bash # -# bogofilter.SlackBuild 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 any later version. +# bogofilter.SlackBuild 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 any later version. # -# bogofilter.SlackBuild 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. +# bogofilter.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for bogofilter -# by rhatto at riseup.net +# slackbuild for bogofilter, by Rudson R. Alves +# requires: sqlite +# tested: bogofilter-1.1.7 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building bogofilter are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="bogofilter" +# Set variables +CWD="$(pwd)" +SRC_NAME="bogofilter" +PKG_NAME="bogofilter" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.1.1} -BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.1.7} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/bogofilter/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR - -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/bogofilter/$SRC" -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING GETTING.STARTED INSTALL NEWS NEWS.0 README README.svn RELEASE.NOTES TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------| bogofilter: bogofilter (bayesian spam filter) bogofilter: bogofilter: Bogofilter is a mail filter that classifies mail as spam or ham @@ -114,18 +141,13 @@ bogofilter: bogofilter: bogofilter: bogofilter: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS COPYING Doxyfile GETTING.STARTED INSTALL NEWS* README README.cvs RELEASE.NOTES TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/net/mail-filter/bogofilter/slack-required b/net/mail-filter/bogofilter/slack-required new file mode 100644 index 00000000..32a3aea1 --- /dev/null +++ b/net/mail-filter/bogofilter/slack-required @@ -0,0 +1,4 @@ +# Dependency list to bogofilter +# +# dependency [condition] [version]] +sqlite diff --git a/net/mail/mairix/mairix.SlackBuild b/net/mail/mairix/mairix.SlackBuild index 97e78cc3..2aa850ae 100755 --- a/net/mail/mairix/mairix.SlackBuild +++ b/net/mail/mairix/mairix.SlackBuild @@ -1,195 +1,167 @@ #!/bin/bash # -# mairix.SlackBuild 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 any later version. +# mairix.SlackBuild 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 any later version. # -# mairix.SlackBuild 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. +# mairix.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for mairix -# by rhatto at riseup.net +# slackbuild for mairix, by Silvio Rhatto +# requires: +# tested: mairix-0.21 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building mairix are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="mairix" +# Set variables +CWD="$(pwd)" +SRC_NAME="mairix" +PKG_NAME="mairix" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.19} +SRC_VERSION=${VERSION:=0.21} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 - -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/mairix/$SRC" -SIG="$PACKAGE-$VERSION-tar-gz-asc.txt" -SIG_URL="http://www.rpcurnow.force9.co.uk/mairix/$SIG" - -gpg --import << EOF ------BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v1.2.3 (GNU/Linux) - -mQGiBDls5WERBADcHuihXLXH2eOkQVgzl/M7UJuVN9fz8lcbmKYZX7zeaDF8tgR+ -PwmL3khiQZj0sxvPlUOCOfWXwegcGGzoztgB+j+E8Y+buDbGP9bcv4n/CFZ5/3RU -QpPTwAzUx9VnPWvPxamabCHb9F+6BWo0piHafWDSKEaN1AllvAU+9zRfjwCgzRfF -EdAcWmJWgZfjIapK1+Wq0g0D/jSymdlmiKo1fiLuXsvJAqDYidlGWaveEBwq8twM -qpQ1mXxlFatA5Oi1S0ZS0TC5cNfyBYv4s5OxRRVBe2v4iM01XP4JaYR2Gx5VAjkw -9ZYp6M9BWU0TDImZuY0teM9614EIFyFznvegS6VNFAk7vGPbu3+sPW9dfK/NCsOa -IigzBADaKGH+epArnAev+TmfmrROdDJrrGkkzA8PzZQM+9VVYcqpfkpcuFKz8vFr -E2RiqzjBpI6P899j7B6+UktryCy3Ha1fNtEd1hltwVKGvkqCC8TFcwv8J1mBNg7b -iprjY596UTgZfd8lTTBL4VrNTBz9ewigPtaT3GZmkkkgdraHCrQhUmljaGFyZCBQ -LiBDdXJub3cgPHJjQHJjMC5vcmcudWs+iGIEExECABoFCwcKAwQDFQMCAxYCAQIX -gAIZAQUCPPK+SAASB2VHUEcAAQEJECAJ33qn0z3sNssAoKmPpIwNcZo5sUZVwEuz -s8YaIvjQAKCRVY2zOqpDtu/WodLBxLyQ8nLwFNHHPcc7ARAAAQEAAAAAAAAAAAAA -AAD/2P/gABBKRklGAAEBAQBIAEgAAP/+AC9SaWNoYXJkIFBldGVyIEN1cm5vdywg -dGFrZW4gaW4gU2VwdGVtYmVyIDE5OTb/2wBDAA4KCw0LCQ4NDA0QDw4RFiQXFhQU -FiwgIRokNC43NjMuMjI6QVNGOj1OPjIySGJJTlZYXV5dOEVmbWVabFNbXVn/2wBD -AQ8QEBYTFioXFypZOzI7WVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZ -WVlZWVlZWVlZWVlZWVlZWVn/wAARCACMAEkDASIAAhEBAxEB/8QAGwAAAQUBAQAA -AAAAAAAAAAAABAECAwUGAAf/xAA2EAACAQMDAQYEAwcFAAAAAAABAgMABBESITEF -BhNBUWFxFCIygUKRoSNSU5Kx4fAzQ4LR8f/EABgBAAMBAQAAAAAAAAAAAAAAAAAB -AgME/8QAHREBAQADAQEBAQEAAAAAAAAAAAECESExQQMSIv/aAAwDAQACEQMRAD8A -SCMxAFjl8c+XtU3ev5/pUcCpDbIpcEAfUTzThJEdhIh9iK5b665rRTM43Bz6Uxbk -SZUMM+Kkb08AZ+1DXsMLrrZ+7deH4IogquvLCTmICRP3TyPY0AkeiQb48CrbEVZQ -dTCMY7ghscOo5pbm6s54mGRrA+UleDWktnxjZjfACszBYo1CM/4vE1bWkEdqmAoZ -zyxqsS3+IjYxt86kkevpRnT7sS/spf8AUHBPj/ejLeuD89fVdcJiWRcYwTihsVb3 -kANySOGGaF+Fb90flVy8Z5cujNaRAd5+2ccLn5RT+/WcKs8+hfBUXAFMtLGW6bbK -p50Xe2kFlbAKA0r7Zaldb0uS62HNzJA5EM7uuNt+KikkkmOZXJPrUYBOwzn0FGRW -FxIusxNpPjiq1IXaCY42GNqYWzyKKurYxMQRjHh40IQR4U02WJIZnhkDocEeFTzu -shFxHhT+IDwPnQeDT4n7ttxlTsRRZ9EvxbG4E9ss2wZDhhTe+oK3lEEpD7xuMEen -nSf8qmTR5f661CKsSBEACjgCqPrMhN0F8ANqv8Zqv6x0wiNrkuQy4BXGxrLD3bfO -c4E6NbGWUyEDA2rYQIEQVnejtotyqqe8UZK4/WryNLxodUbRqwGdLKd/vV3tGPIZ -edLt7oliulz+IVWN2cXJJYEDjFXlnM7grdRCJ84+ob0S8fOGGKOnysfcdGMMZKrt -jJJqklgKGvQZQvDMpHFZrtCiIqFABvjAFPG3ac8ZZtTrD3lozjdozv7UNt5mpYZ2 -il1Dg7EeBpdUfkarrC6acyFPmxnG9G9VSOTp+QSSxGfvVfIyvC2kjdciuXqEV3YJ -FuJlYB9ueaxxdVoy1hTRE2n5uM+lEXVrdSAfDy6GB/SksBrgUEferNI2x4n22qoK -FkOhMOxYgj6ua55knuFQxgqRvvuaiud59HlwKiI7u7RjnBGNvCjfT/ngKeKymmcW -0ksRBxjJIzVD1OWSQmORsmM1rLiGJASkarvk4FZK8Z/ipTwJDgA7ZAqpd1nnyBYG -jMTRyDc7g+RrtD/umppUiOghCjDGSCCDRmhP4kn8hp7ZaQCb5EBydKkUR02M6GcD -l/6f+1XL87Kq5yTjJrWW/TvhIzAdyM7nx2zRZqKw7VhZR6Y0xRRuO72qC1YFE9DX -XcTMdUbFTWbad9RMCZCy8k53FdHMZbpTIANORtSDv40zrBPtUNsss051qFxvnO9C -9J71IwjMRj22rD3syz3gYE6RtnNarr1x3Nk+DuRpHvWLq8J9c/6ZfFgkcMkyDToB -O7YwKu/i7b+Mf5BWWVyOKk1jyp/zUzKHRHTIjeRBr1NraO6gRuGIBDV5WK9L7N3P -xXRbds5ZBoPuP8FWiXQOWGS1lwwwM7GpEfIzV5JGkqFXXUDVVcdPkiJaL5k8vEVF -xbTPaJwMZ586CkuFiJ4A5NdNJODoEbFvAbVnuuwdRjY95EwhO+pNx96mY7VctQH1 -m/F3PpQ5jTx8zVbScV1aSac9u7stdv8A4K6uz60ElU1ruxF9pmms3OzjWvuOf0/p -WPBo3pt2bO+huB/tsCfUUw9ZpDsDnio4JVljV1OVYAg+lOkAZSp4I3pqZhOsRR9W -cMIzBI+hGH1KfP2q+VA0WlhkGsd1yxjtOoP3ORHgMdxsc8CtfZTC4s4Zl2DqDSxV -kxHavo4spxcwj9jKcED8LVm69W6pZpfWEsD/AIhsfI+Bry2aNoZXjcYZCQRTrNHX -V1dSB9OBpgNKKA9D7JXvxPShETl4Dp+3hV8TuDXnvZK9+F6ssbHCTDSffwrfudO+ -MimbF9XD3fVZwjg5JwCdtsCrvsxcrLYtBw0Jxj0P+GsxLIk8+RnvWkOc7AA1P0+7 -bpl4ny/i0yaTnKn/AKqJetbNxuTwawva/pfw86XkY+SXZ/Rq3KsHTUpyCMg0Nf2i -X9tJbSfSw58jVsnlFdU93bva3MkEgw6HBqCkRaWm0vhQEsMrRSpIpwysGH2r1W3n -F1YxzIdnQMPyryYV6J2RkaToaBjkKzAe1OBkSyiacTK/fajpPA5qRg0YbvBmRsMj -Bs1KsKS9UuxIuoK7434wagt4xL3mpm+RMrvxWbaeNp0GUzdKhyTqX5Gz6f2qyGyM -x5NZ/sjK8ttdBznD5/Mf2q46rI0PTZ3TZljJH5VpPGd9eddoblbnrNw6fSDpz542 -qspWJJJPJpKSX//ZiFwEExECABwFAjz0AhACGwMECwcDAgMVAgMDFgIBAh4BAheA -AAoJECAJ33qn0z3sgX0AniODMzRDWaBQvAMgTff4HESG/jxjAKDHZQcFhDreiV7O -UZ4wKsjDkA0Z57QxUmljaGFyZCBQLiBDdXJub3cgPHJpY2hhcmRAcnBjdXJub3cu -Zm9yY2U5LmNvLnVrPoheBBMRAgAeBQI/nCfMAhsDBgsJCAcDAgMVAgMDFgIBAh4B -AheAAAoJECAJ33qn0z3sVRAAoLsQtka0AY3RhfLQOlk45KW1/hH0AJ4n8bTV8iyj -fuvsMRxXoerIX8BI0rkBjQQ5bOcoEAYAtiw2lhJ5SghGR+Kx8wjWxk9MwrdF0i0K -wLTp0ILeNpYY40nrIRU7z+Pvpf0GujQtCXNW81ufK5cwhcUNyzCd2eL0F+wjcHa/ -sk+fUUo803dgzo7CADwNHSjihQJGt5d6G2boz8IxHPjV9Pkg+pgDxVRFWFY3KE66 -chY+kx2EEh1jshE1/toclxpTVRsV5npYHadpOho2ClNAo0tmPGx0A84HiqG/Fp2Z -VHoBIeO0yIShrPiojsdyYx7qsb1G3R//AAMHBfsGE4lFR8z6u6NeP9kW+g9cuWks -GG0Gp4s0v8Mg2c0v/W+85Zdvx+8LjbygYAMksjeUYhZJJe8jov2bJWPDzoeb2G5T -mg/DYG/cjLLVrUfMoDtt4zHBvqW16lrZ2yzAydpMKy885hmc1QUAB8xyMpLx/zQR -/UUuLJHZu8FeSkfEe6o7lwq+xwEQi/M1fqebous++ay3y/tS3x2t+4O4J9hgiezP -Iof3RlN+IjVrQ0gSZMnLew3+UEI5k+G9/fS5ar6ITgQYEQIABgUCOWznKAASCRAg -Cd96p9M97AdlR1BHAAEBNIYAn0tlnu/LIRZGV/gTfFBbED5VDF2vAKCllpFbtTd4 -iyEQhSCBS+wk6SoOgg== -=yT3y ------END PGP PUBLIC KEY BLOCK----- -EOF - -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR - -if [ "$RTOOL" == "wget" ]; then - if [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET - fi - if [ ! -f "$SRC_DIR/$SIG" ]; then - wget "$SIG_URL" -O "$SRC_DIR/$SIG" || exit $ERROR_WGET - fi -fi +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -gpg --verify $SRC_DIR/$SIG $SRC_DIR/$SRC || exit $ERROR_GPG +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/mairix/$SRC" -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ACKNOWLEDGEMENTS COPYING NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| mairix: mairix (index and search engine for mail folders) mairix: mairix: Mairix is a program for indexing and searching email messages stored @@ -201,20 +173,13 @@ mairix: mairix: mairix: mairix: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="ACKNOWLEDGEMENTS COPYING INSTALL NEWS README" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/net/mail/offlineimap/offlineimap.SlackBuild b/net/mail/offlineimap/offlineimap.SlackBuild new file mode 100755 index 00000000..8f6dadd1 --- /dev/null +++ b/net/mail/offlineimap/offlineimap.SlackBuild @@ -0,0 +1,176 @@ +#!/bin/bash +# +# offlineimap.SlackBuild 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 any later version. +# +# offlineimap.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for offlineimap, by Silvio Rhatto +# requires: +# tested: offlineimap-6.0.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="offlineimap" +PKG_NAME="offlineimap" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=6.0.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="241?attachment_id=332" +URL="http://software.complete.org/software/versions/download/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi + +# Build and install package +python setup.py build install --root=$PKG + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="COPYING COPYRIGHT FAQ.html README UPGRADING" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------| +offlineimap: offlineimap +offlineimap: +offlineimap: OfflineIMAP is a tool to simplify your e-mail reading. +offlineimap: With OfflineIMAP, you can read the same mailbox from multiple +offlineimap: computers. You get a current copy of your messages on each computer, +offlineimap: and changes you make one place will be visible on all other systems. +offlineimap: For instance, you can delete a message on your home computer, and it +offlineimap: will appear deleted on your work computer as well. OfflineIMAP is +offlineimap: also useful if you want to use a mail reader that does not have IMAP +offlineimap: support, has poor IMAP support, or does not provide disconnected +offlineimap: operation. +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/net/misc/tor/slack-required b/net/misc/tor/slack-required index dd6fade5..a5db2a01 100644 --- a/net/misc/tor/slack-required +++ b/net/misc/tor/slack-required @@ -1 +1,4 @@ -libevent +# Dependency list to tor +# +# dependency [condition] [version]] +libevent diff --git a/net/misc/tor/tor.SlackBuild b/net/misc/tor/tor.SlackBuild index 8c04b2fc..3dae6fa8 100755 --- a/net/misc/tor/tor.SlackBuild +++ b/net/misc/tor/tor.SlackBuild @@ -1,123 +1,215 @@ #!/bin/bash # -# tor.SlackBuild 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 any later version. +# tor.SlackBuild 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 any later version. # -# tor.SlackBuild 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. +# tor.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for tor -# by rhatto at riseup.net +# slackbuild for tor, by Silvio Rhatto +# requires: libevent +# tested: tor-0.2.0.30 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building tor are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="tor" +# Set variables +CWD="$(pwd)" +SRC_NAME="tor" +PKG_NAME="tor" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.1.1.23} +SRC_VERSION=${VERSION:=0.2.0.30} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} -# ------- error codes for createpkg -------------- +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib -fi +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://tor.eff.org/dist/$SRC" +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.torproject.org/dist/$SRC" -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" +# Import minimized signing key from +if echo [[SIGNING KEY URL]] | grep -q -v "SIGNING KEY URL"; then + lynx -dump [[SIGNING KEY URL]] | gpg --import || exit $ERROR_GPG +elif echo 0x28988BF5 0x165733EA | grep -q -v "SIGNING KEY ID"; then + gpg --recv-keys 0x28988BF5 0x165733EA || exit $ERROR_GPG else - tarflag="z" + gpg --import << EOKEY || exit $ERROR_GPG +[[SIGNING KEY]] +EOKEY fi -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET - wget "$URL.asc" -O "$SRC_DIR/$SRC.asc" || exit $ERROR_WGET +# Download source's signature if necessary and check it +if echo [[SIGNING URL]] | grep -q -v "SIGNING URL"; then + SIGNATURE="`basename [[SIGNING URL]]`" + if [ ! -s "$SRC_DIR/$SIGNATURE" ]; then + wget "[[SIGNING URL]]" -O "$SRC_DIR/$SIGNATURE" || exit $ERROR_WGET + fi +else + if [ -s "$SRC_DIR/$SRC.sig" ]; then + SIGNATURE="$SRC.sig" + elif [ -s "$SRC_DIR/$SRC.asc" ]; then + SIGNATURE="$SRC.asc" + else + echo Trying to get signature file from $URL.sig... + if wget "$URL.sig" -O "$SRC_DIR/$SRC.sig"; then + SIGNATURE="$SRC.sig" + else + rm $SRC_DIR/$SRC.sig + echo Trying to get signature file from $URL.asc... + if wget "$URL.asc" -O "$SRC_DIR/$SRC.asc"; then + SIGNATURE="$SRC.asc" + else + rm $SRC_DIR/$SRC.asc + echo "Error getting source's signature file" + exit $ERROR_GPG + fi + fi + fi fi -gpg --keyserver subkeys.pgp.net --recv-keys 0x28988BF5 -gpg --keyserver subkeys.pgp.net --recv-keys 0x165733EA -gpg --verify $SRC_DIR/$SRC.asc $SRC_DIR/$SRC || exit $ERROR_GPG -sleep 3 +echo Checking $SRC_DIR/$SRC with gpg using $SRC_DIR/$SIGNATURE... +gpg --verify "$SRC_DIR/$SIGNATURE" "$SRC_DIR/$SRC" || exit $ERROR_GPG +echo Success. -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" -tar xvf$tarflag $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF -mkdir $TMP/package-$PACKAGE/etc/rc.d -cp $CWD/rc.tor.new $TMP/package-$PACKAGE/etc/rc.d +# Compile +make $NUMJOBS || exit $ERROR_MAKE -CWD="`pwd`" -cd $TMP/package-$PACKAGE +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL -mv etc/tor/tor-tsocks.conf etc/tor/tor-tsocks.conf.sample +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Copy init scripts +mkdir -p $PKG/etc/rc.d +cp $CWD/rc.* $PKG/etc/rc.d/ + +# Install documentation +DOCS="AUTHORS ChangeLog LICENSE README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler----------------------------------------------------------| tor: tor (An anonymous Internet communication system) tor: tor: Tor is a toolset for a wide range of organizations and people that @@ -129,24 +221,60 @@ tor: can build new applications with built-in anonymity, safety, and tor: privacy features. tor: tor: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS ChangeLog INSTALL LICENSE README; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ +# Move config files to .new to avoid overwriting any system config +for config_file in etc/tor/tor-tsocks.conf; do + mv $PKG/$config_file $PKG/$config_file.new done -# install script -echo '( chroot . /sbin/ldconfig )' > install/doinst.sh -echo '( if [ ! -f "etc/rc.d/rc.tor" ]; then mv etc/rc.d/rc.tor.new etc/rc.d/rc.tor ; fi )' >> install/doinst.sh -echo '( if [ ! -f "etc/tor/torrc" ]; then mv etc/tor/torrc.sample etc/tor/torrc ; fi )' >> install/doinst.sh -echo '( if [ ! -f "etc/tor/tor-tsocks.conf" ]; then mv etc/tor/tor-tsocks.conf.sample etc/tor/tor-tsocks.conf ; fi )' >> install/doinst.sh +# Add a post-installation script (doinst.sh) +cat << EOSCRIPT > "$PKG/install/doinst.sh" +config() { + NEW="\$1" + OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)" + OLD="\$(dirname \$NEW)/\$(basename \$OLD .sample)" + OLD="\$(dirname \$NEW)/\$(basename \$OLD .dist)" -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG + # If there's no config file by that name, mv it over: + if [ ! -r \$OLD ]; then + mv \$NEW \$OLD + elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then + # toss the redundant copy + rm \$NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} +mkgroup() { + GROUP="\$1" + if ! grep -qe "^\$GROUP:" etc/group; then + echo Creating group \$GROUP... + chroot . /usr/sbin/groupadd \$GROUP + fi +} + +mkuser() { + USER="\$1" + if [ ! -z "\$2" ]; then + GROUP="\$2" + else + GROUP="\$USER" + fi + if ! grep -qe "^\$USER:" etc/passwd; then + echo Creating user \$USER... + chroot . /usr/sbin/useradd \$USER -g \$GROUP + fi +} + +config etc/rc.d/rc.tor.new ; config etc/tor/torrc.sample ; config etc/tor/tor-tsocks.conf.new +EOSCRIPT + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/net/p2p/nicotine+/nicotine+.SlackBuild b/net/p2p/nicotine+/nicotine+.SlackBuild new file mode 100755 index 00000000..3fa17a48 --- /dev/null +++ b/net/p2p/nicotine+/nicotine+.SlackBuild @@ -0,0 +1,144 @@ +#!/bin/bash +# +# nicotine+.SlackBuild 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 any later version. +# +# nicotine+.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for nicotine+, by Silvio Rhatto +# requires: +# tested: nicotine+-1.2.9 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="nicotine+" +PKG_NAME="nicotine+" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.2.9} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/nicotine-plus/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Build and install package +python setup.py build install --root=$PKG + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="COPYING MANIFEST" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------| +nicotine+: nicotine+ (soulseek client clone) +nicotine+: +nicotine+: Nicotine is a SoulSeek client written in Python, based on the +nicotine+: PySoulSeek project by Alexander Kanavin. It features, among other +nicotine+: things, a completely rewritten graphical user interface which uses +nicotine+: the PyGTK-2 toolkit and a less strict user request policy. +nicotine+: +nicotine+: This version is the forked one distributed at +nicotine+: http://nicotine-plus.sourceforge.net +nicotine+: +nicotine+: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/net/p2p/nicotine/nicotine.SlackBuild b/net/p2p/nicotine/nicotine.SlackBuild index 800e29e8..64cb000a 100755 --- a/net/p2p/nicotine/nicotine.SlackBuild +++ b/net/p2p/nicotine/nicotine.SlackBuild @@ -1,60 +1,144 @@ #!/bin/bash # -# nicotine.SlackBuild 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 any later version. +# nicotine.SlackBuild 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 any later version. # -# nicotine.SlackBuild 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. +# nicotine.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# SlackBuild script to call nicotine.build with correct settings +# slackbuild for nicotine, by Silvio Rhatto +# requires: +# tested: nicotine-1.0.8 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building nicotine are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="nicotine" -VERSION=${VERSION:=1.0.8} +# Set variables +CWD="$(pwd)" +SRC_NAME="nicotine" +PKG_NAME="nicotine" ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.0.8} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -rm -rf $TMP/$PACKAGE -mkdir -p $SRC_DIR/$PACKAGE $TMP/$PACKAGE $REPOS +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -export PACKAGE VERSION ARCH BUILD SRC_DIR TMP REPOS +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://nicotine.thegraveyard.org/$SRC" -if which simpletrack &> /dev/null; then - simpletrack $PACKAGE.build -else - slacktrack -b $REPOS -x $TMP,$SRC_DIR,/dev -jefkzp "$PACKAGE-$VERSION-$ARCH-$BUILD.tgz" "./$PACKAGE.build" +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Build and install package +python setup.py build install --root=$PKG + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="CHANGELOG COPYING KNOWN_BUGS MAINTAINERS MANIFEST PKG-INFO README README.import-winconfig TODO TRANSLATORS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +nicotine: nicotine (soulseek client clone) +nicotine: +nicotine: Nicotine is a SoulSeek client written in Python, based on the +nicotine: PySoulSeek project by Alexander Kanavin. It features, among other +nicotine: things, a completely rewritten graphical user interface which uses +nicotine: the PyGTK-2 toolkit and a less strict user request policy. +nicotine: +nicotine: +nicotine: +nicotine: +nicotine: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP/$PACKAGE + rm -rf "$PKG_WORK" "$PKG" fi diff --git a/net/proxy/privoxy/privoxy.SlackBuild b/net/proxy/privoxy/privoxy.SlackBuild index 58b169fd..2f0a34b5 100755 --- a/net/proxy/privoxy/privoxy.SlackBuild +++ b/net/proxy/privoxy/privoxy.SlackBuild @@ -1,48 +1,246 @@ #!/bin/bash # -# privoxy.SlackBuild 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 any later version. +# privoxy.SlackBuild 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 any later version. # -# privoxy.SlackBuild 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. +# privoxy.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# SlackBuild script to call privoxy.build with correct settings +# slackbuild for privoxy, by Silvio Rhatto +# requires: +# tested: privoxy-3.0.9-beta # -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="privoxy" -VERSION=${VERSION:=3.0.3} -ARCH="${ARCH:=i486}" -BUILD=${BUILD:=2rha} -SRC_DIR=${SRC:=$CWD} +# Set variables +CWD="$(pwd)" +SRC_NAME="privoxy" +PKG_NAME="privoxy" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=3.0.9-beta} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc/privoxy"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -rm -rf $TMP/$PACKAGE -mkdir -p $SRC_DIR/$PACKAGE $TMP/$PACKAGE +# Creating build user and group +if ! grep -qe "^$PKG_NAME:" /etc/group; then + groupadd $PKG_NAME +fi +if ! grep -qe "^$PKG_NAME:" /etc/passwd; then + useradd $PKG_NAME -g $PKG_NAME +fi -export PACKAGE VERSION ARCH BUILD SRC_DIR TMP REPOS +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION-src.tar.gz" +URL="http://downloads.sourceforge.net/ijbswa/$SRC" -if which simpletrack &> /dev/null; then - simpletrack $PACKAGE.build -else - slacktrack -b $REPOS -x $TMP,$SRC_DIR,/dev -jefkzp "$PACKAGE-$VERSION-$ARCH-$BUILD.tgz" "./$PACKAGE.build" +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi + +# Configure +autoheader || exit $ERROR_CONF +autoconf || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Copy init scripts +mkdir -p $PKG/etc/rc.d +cp $CWD/rc.* $PKG/etc/rc.d/ + +# Install documentation +DOCS="AUTHORS ChangeLog LICENSE Makefile README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +privoxy: privoxy (A Web proxy with advanced filtering capabilities) +privoxy: +privoxy: Privoxy is a Web proxy based on Internet Junkbuster with advanced +privoxy: filtering capabilities for protecting privacy, filtering Web page +privoxy: content, managing cookies, controlling access, and removing ads, +privoxy: banners, pop-ups, and other obnoxious Internet junk. Privoxy has a +privoxy: very flexible configuration and can be customized to suit individual +privoxy: needs and tastes. Privoxy is useful for both stand-alone systems and +privoxy: multi-user networks. +privoxy: +privoxy: +EODESC + +# Move config files to .new to avoid overwriting any system config +for config_file in etc/privoxy/config etc/privoxy/trust; do + mv $PKG/$config_file $PKG/$config_file.new +done + +# Add a post-installation script (doinst.sh) +cat << EOSCRIPT > "$PKG/install/doinst.sh" +config() { + NEW="\$1" + OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)" + OLD="\$(dirname \$NEW)/\$(basename \$OLD .sample)" + OLD="\$(dirname \$NEW)/\$(basename \$OLD .dist)" + + # If there's no config file by that name, mv it over: + if [ ! -r \$OLD ]; then + mv \$NEW \$OLD + elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then + # toss the redundant copy + rm \$NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +mkgroup() { + GROUP="\$1" + if ! grep -qe "^\$GROUP:" etc/group; then + echo Creating group \$GROUP... + chroot . /usr/sbin/groupadd \$GROUP + fi +} + +mkuser() { + USER="\$1" + if [ ! -z "\$2" ]; then + GROUP="\$2" + else + GROUP="\$USER" + fi + if ! grep -qe "^\$USER:" etc/passwd; then + echo Creating user \$USER... + chroot . /usr/sbin/useradd \$USER -g \$GROUP + fi +} + +mkgroup privoxy ; mkuser privoxy ; config etc/privoxy/config.new ; config etc/privoxy/trust.new +EOSCRIPT + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP/$PACKAGE + rm -rf "$PKG_WORK" "$PKG" fi diff --git a/net/proxy/tsocks/tsocks.SlackBuild b/net/proxy/tsocks/tsocks.SlackBuild index 63b7e303..971803ad 100755 --- a/net/proxy/tsocks/tsocks.SlackBuild +++ b/net/proxy/tsocks/tsocks.SlackBuild @@ -1,117 +1,167 @@ #!/bin/bash # -# tsocks.SlackBuild 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 any later version. +# tsocks.SlackBuild 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 any later version. # -# tsocks.SlackBuild 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. +# tsocks.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for tsocks -# by rhatto at riseup.net +# slackbuild for tsocks, by Silvio Rhatto +# requires: +# tested: tsocks-1.8beta5 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building tsocks are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="tsocks" +# Set variables +CWD="$(pwd)" +SRC_NAME="tsocks" +PKG_NAME="tsocks" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.8beta5} -BUILD=${BUILD:=2rha} -SRC_DIR=${SRC:=$CWD} +SRC_VERSION=${VERSION:=1.8beta5} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 - -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://ftp1.sourceforge.net/tsocks/$SRC" +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/tsocks/$SRC" -if echo $VERSION | grep -q "beta"; then - cd $PACKAGE-`echo $VERSION | sed -e 's/beta.*//'` -else - cd $PACKAGE-$VERSION +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH -fi +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION-$ARCH.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION-$ARCH.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="COPYING ChangeLog FAQ TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| tsocks: tsocks (a transparent SOCKS proxying library) tsocks: tsocks: tsocks' role is to allow these non SOCKS aware applications (e.g @@ -123,20 +173,13 @@ tsocks: tsocks: tsocks: tsocks: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="COPYING ChangeLog FAQ INSTALL TODO" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/net/www/gnash/gnash-0.8.3.diff b/net/www/gnash/gnash-0.8.3.diff new file mode 100644 index 00000000..7e9eb16d --- /dev/null +++ b/net/www/gnash/gnash-0.8.3.diff @@ -0,0 +1,69 @@ +--- configure.old 2008-07-01 00:28:27.000000000 -0300 ++++ configure 2008-07-01 00:34:13.000000000 -0300 +@@ -36489,38 +36489,38 @@ + if test x"${nspr}" = x"yes"; then + + # Check whether --with-nspr_lib was given. +-if test "${with_nspr_lib+set}" = set; then +- withval=$with_nspr_lib; with_nspr_lib=${withval} +-fi +- +- if test "${ac_cv_path_nspr_lib+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 +-else +- +- if test x"${with_nspr_lib}" != x ; then +- { echo "$as_me:$LINENO: checking for libnspr library in specified directory" >&5 +-echo $ECHO_N "checking for libnspr library in specified directory... $ECHO_C" >&6; } +- if test -f ${with_nspr_lib}/lib$name.a -o -f ${with_nspr_lib}/lib$name.${shlibext}; then +- tmp="`(cd ${with_nspr_lib}; pwd)`" +- ac_cv_path_nspr_lib="-L${tmp} -l$name" +- { echo "$as_me:$LINENO: result: yes" >&5 +-echo "${ECHO_T}yes" >&6; } +- else +- { { echo "$as_me:$LINENO: error: ${with_nspr_lib} directory doesn't contain library $name." >&5 +-echo "$as_me: error: ${with_nspr_lib} directory doesn't contain library $name." >&2;} +- { (exit 1); exit 1; }; } +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } +- fi +- fi +- +-fi +- ++#if test "${with_nspr_lib+set}" = set; then ++# withval=$with_nspr_lib; with_nspr_lib=${withval} ++#fi ++# ++# if test "${ac_cv_path_nspr_lib+set}" = set; then ++# echo $ECHO_N "(cached) $ECHO_C" >&6 ++#else ++# ++# if test x"${with_nspr_lib}" != x ; then ++# { echo "$as_me:$LINENO: checking for libnspr library in specified directory" >&5 ++#echo $ECHO_N "checking for libnspr library in specified directory... $ECHO_C" >&6; } ++# if test -f ${with_nspr_lib}/lib$name.a -o -f ${with_nspr_lib}/lib$name.${shlibext}; then ++# tmp="`(cd ${with_nspr_lib}; pwd)`" ++# ++# { echo "$as_me:$LINENO: result: yes" >&5 ++#echo "${ECHO_T}yes" >&6; } ++# else ++# { { echo "$as_me:$LINENO: error: ${with_nspr_lib} directory doesn't contain library $name." >&5 ++#echo "$as_me: error: ${with_nspr_lib} directory doesn't contain library $name." >&2;} ++# { (exit 1); exit 1; }; } ++# { echo "$as_me:$LINENO: result: no" >&5 ++#echo "${ECHO_T}no" >&6; } ++# fi ++# fi# ++# ++#fi ++ ac_cv_path_nspr_lib="-L/usr/lib/seamonkey -lplds4 -lplc4 -lnspr4 -lpthread -ldl" + + if test x$cross_compiling = xno; then + if test x"$PKG_CONFIG" != x -a x"${ac_cv_path_nspr_lib}" = x; then + $PKG_CONFIG --exists libDOWN && ac_cv_path_nspr_lib="`$PKG_CONFIG --libs-only-l libDOWN`" +- $PKG_CONFIG --exists nspr && ac_cv_path_nspr_lib="`$PKG_CONFIG --libs-only-l nspr`" ++ $PKG_CONFIG --exists seamonkey-nspr && ac_cv_path_nspr_lib="`$PKG_CONFIG --libs-only-l seamonkey-nspr`" + $PKG_CONFIG --exists lib$name && ac_cv_path_nspr_lib="`$PKG_CONFIG --libs-only-l lib$name`" + $PKG_CONFIG --exists $name && ac_cv_path_nspr_lib="`$PKG_CONFIG --libs-only-l $name`" + { echo "$as_me:$LINENO: checking for libnspr library" >&5 diff --git a/net/www/gnash/gnash.SlackBuild b/net/www/gnash/gnash.SlackBuild index 3809e9bb..dc62ae2f 100755 --- a/net/www/gnash/gnash.SlackBuild +++ b/net/www/gnash/gnash.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for gnash, by Rudson R. Alves -# requires: -# tested: gnash-0.8.2 +# requires: agg boost ffmpeg +# tested: gnash-0.8.3 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="gnash" PKG_NAME="gnash" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.8.2} +SRC_VERSION=${VERSION:=0.8.3} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -40,8 +40,8 @@ PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" -CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --with-plugindir=$LIBDIR/mozilla/plugins --x-libraries=$LIBDIR"} -NUMJOBS=${NUMJOBS:="-j4"} +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --with-plugindir=$LIBDIR/mozilla/plugins --x-libraries=$LIBDIR --enable-nspr --enable-media=ffmpeg --with-ffmpeg-incl=/usr/include --with-nspr-incl=/usr/include/seamonkey/nspr --with-nspr-lib=/usr/lib/seamonkey --with-boost-incl=/usr/include/boost/boost "} +NUMJOBS=${NUMJOBS:="-j3"} # Set system libraries' path and optmization flags based on $ARCH LIBDIR="$PREFIX/lib" @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -77,7 +78,7 @@ mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR # Dowload source if necessary SRC="$SRC_NAME-$VERSION.tar.bz2" -URL="ftp://mirrors.kernel.org/gnu/gnash/0.8.2/$SRC" +URL="ftp://mirrors.kernel.org/gnu/gnash/0.8.3/$SRC" if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET @@ -86,9 +87,41 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np0 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np0 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np0 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np0 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np0 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np0 || exit $ERROR_PATCH + else + patch -Np0 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi + # Configure CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ @@ -110,7 +143,7 @@ make install DESTDIR="$PKG" || exit $ERROR_INSTALL ) # Install documentation -DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog ChangeLog-0.8.0 ChangeLog-0.8.1 INSTALL NEWS README TODO" +DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog ChangeLog-0.8.0 ChangeLog-0.8.1 ChangeLog-0.8.2 ChangeLog-0.8.3 INSTALL NEWS README TODO" mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR for doc in $DOCS; do if [ -f "$doc" ]; then @@ -122,9 +155,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/net/www/gnash/slack-required b/net/www/gnash/slack-required new file mode 100644 index 00000000..28c07572 --- /dev/null +++ b/net/www/gnash/slack-required @@ -0,0 +1,6 @@ +# Dependency list to gnash +# +# dependency [condition] [version]] +agg +boost +ffmpeg diff --git a/net/www/mplayerplug-in/mplayerplug-in.SlackBuild b/net/www/mplayerplug-in/mplayerplug-in.SlackBuild index 6afe3d0d..0dbdc797 100755 --- a/net/www/mplayerplug-in/mplayerplug-in.SlackBuild +++ b/net/www/mplayerplug-in/mplayerplug-in.SlackBuild @@ -1,144 +1,185 @@ #!/bin/bash # -# mplayerplug-in.SlackBuild 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 any later version. +# mplayerplug-in.SlackBuild 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 any later version. # -# mplayerplug-in.SlackBuild 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. +# mplayerplug-in.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for mplayerplug-in -# by rhatto at riseup.net +# slackbuild for mplayerplug-in, by Silvio Rhatto +# requires: +# tested: mplayerplug-in-3.55 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building mplayerplug-in are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="mplayerplug-in" +# Set variables +CWD="$(pwd)" +SRC_NAME="mplayerplug-in" +PKG_NAME="mplayerplug-in" ARCH=${ARCH:=i486} -VERSION=${VERSION:=3.31} +SRC_VERSION=${VERSION:=3.55} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} -GECKO_VERSION=${GECKO_VERSION:=1.7.13} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc --localstatedir=/var --enable-gmp"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/$PACKAGE/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -GECKO="gecko-sdk-i686-pc-linux-gnu-$GECKO_VERSION.tar.gz" -GECKO_URL="http://releases.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla1.7.13/gecko-sdk-i686-pc-linux-gnu-1.7.13.tar.gz" +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/mplayerplug-in/$SRC" -if [ "$RTOOL" == "wget" ]; then - if [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET - fi - if [ ! -f "$SRC_DIR/$GECKO" ]; then - wget "$GECKO_URL" -O "$SRC_DIR/$GECKO" || exit $ERROR_WGET - fi +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$GECKO || exit $ERROR_TAR - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --libdir=$LIBDIR --with-gecko-sdk=../gecko-sdk || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ChangeLog DOCS LICENSE README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| -mplayerplug-in: mplayerplug-in -mplayerplug-in: -mplayerplug-in: -mplayerplug-in: + |-----handy-ruler-----------------------------------------------| +mplayerplug-in: mplayerplug-in (browser plugin to play media from websites) mplayerplug-in: +mplayerplug-in: This plug-in gives Mozilla the ability to play media from a website +mplayerplug-in: the net without reading the source html and getting the url manually. +mplayerplug-in: Media is played embedded in the page or in a separate window depending +mplayerplug-in: on how the author of the webpage intended the media to be seen. mplayerplug-in: mplayerplug-in: mplayerplug-in: mplayerplug-in: mplayerplug-in: -mplayerplug-in: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="ChangeLog DOCS INSTALL LICENSE README" +EODESC -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/others/generic/generic.SlackBuild b/others/generic/generic.SlackBuild index b75bb8a4..bb7048cd 100755 --- a/others/generic/generic.SlackBuild +++ b/others/generic/generic.SlackBuild @@ -1,7 +1,7 @@ ################################################### ## Generic template for SlackBuilds ## -## Version 0.8.5 - Luis ( luis at riseup d0t net) +## Version 0.8.6 - Luis ( luis at riseup d0t net) ## ################################################### #!/bin/bash @@ -49,7 +49,7 @@ REPOS=${REPOS:=$TMP} PREFIX=${PREFIX:=[[PREFIX]]} PKG_SRC="$TMP/$SRC_NAME-$SRC_VERSION" CONF_OPTIONS=${CONF_OPTIONS:=[[OTHER CONFIGURE ARGS]]} -NUMJOBS=${NUMJOBS:=-j4} +NUMJOBS=${NUMJOBS:=-j3} # Set system libraries' path and optmization flags based on $ARCH LIBDIR="$PREFIX/lib" diff --git a/others/unclassified/exempi/exempi.SlackBuild b/others/unclassified/exempi/exempi.SlackBuild new file mode 100644 index 00000000..78527980 --- /dev/null +++ b/others/unclassified/exempi/exempi.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# exempi.SlackBuild 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 any later version. +# +# exempi.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for exempi, by Alexandre Vieira de Souza +# requires: +# tested: exempi-2.0.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="exempi" +PKG_NAME="exempi" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.0.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://libopenraw.freedesktop.org/download/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------------| +exempi: exempi by Slack.Sarava +exempi: +exempi: Exempi provides a library for easy parsing of XMP metadata. It is +exempi: a port of Adobe XMP SDK to work on UNIX and to be built with GNU +exempi: automake. It includes XMPCore and XMPFiles. +exempi: +exempi: +exempi: +exempi: +exempi: by avs +exempi: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/patches/glib2/glib2.SlackBuild b/patches/glib2/glib2.SlackBuild new file mode 100644 index 00000000..a365b92c --- /dev/null +++ b/patches/glib2/glib2.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# glib2.SlackBuild 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 any later version. +# +# glib2.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for glib2, by Rafael Diniz +# requires: +# tested: glib2-2.16.3 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="glib" +PKG_NAME="glib2" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.16.3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j3"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://ftp.gnome.org/pub/GNOME/sources/glib/2.16/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------------| +glib2: glib2 (library of C routines) +glib2: +glib2: GLib is a library which includes support routines for C such as lists, +glib2: trees, hashes, memory allocation, and many other things. +glib2: +glib2: +glib2: +glib2: +glib2: +glib2: Patch from slack.sarava.org +glib2: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/patches/gnutls/gnutls.SlackBuild b/patches/gnutls/gnutls.SlackBuild new file mode 100755 index 00000000..77b0f943 --- /dev/null +++ b/patches/gnutls/gnutls.SlackBuild @@ -0,0 +1,197 @@ +#!/bin/bash +# +# gnutls.SlackBuild 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 any later version. +# +# gnutls.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gnutls, by Silvio Rhatto +# requires: +# tested: gnutls-2.4.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gnutls" +PKG_NAME="gnutls" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.4.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=" --sysconfdir=/etc --localstatedir=/var --infodir=/usr/info --mandir=/usr/man --enable-static=no --enable-guile=no"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="ftp://ftp.gnutls.org/pub/gnutls/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Import minimized signing key from +if echo http://josefsson.org/key.txt | grep -q -v "SIGNING KEY URL"; then + lynx -dump http://josefsson.org/key.txt | gpg --import || exit $ERROR_GPG +elif echo [[SIGNING KEY ID]] | grep -q -v "SIGNING KEY ID"; then + gpg --recv-keys [[SIGNING KEY ID]] || exit $ERROR_GPG +else + gpg --import << EOKEY || exit $ERROR_GPG +[[SIGNING KEY]] +EOKEY +fi + +# Download source's signature if necessary and check it +if echo [[SIGNING URL]] | grep -q -v "SIGNING URL"; then + SIGNATURE="`basename [[SIGNING URL]]`" + if [ ! -s "$SRC_DIR/$SIGNATURE" ]; then + wget "[[SIGNING URL]]" -O "$SRC_DIR/$SIGNATURE" || exit $ERROR_WGET + fi +else + if [ -s "$SRC_DIR/$SRC.sig" ]; then + SIGNATURE="$SRC.sig" + elif [ -s "$SRC_DIR/$SRC.asc" ]; then + SIGNATURE="$SRC.asc" + else + echo Trying to get signature file from $URL.sig... + if wget "$URL.sig" -O "$SRC_DIR/$SRC.sig"; then + SIGNATURE="$SRC.sig" + else + rm $SRC_DIR/$SRC.sig + echo Trying to get signature file from $URL.asc... + if wget "$URL.asc" -O "$SRC_DIR/$SRC.asc"; then + SIGNATURE="$SRC.asc" + else + rm $SRC_DIR/$SRC.asc + echo "Error getting source's signature file" + exit $ERROR_GPG + fi + fi + fi +fi + +echo Checking $SRC_DIR/$SRC with gpg using $SRC_DIR/$SIGNATURE... +gpg --verify "$SRC_DIR/$SIGNATURE" "$SRC_DIR/$SRC" || exit $ERROR_GPG +echo Success. + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING* ChangeLog INSTALL NEWS README THANKS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------------| +gnutls: Gnutls (Transport Layer Security) +gnutls: +gnutls: This is the GNU TLS library. More up to date information can be found +gnutls: at http://www.gnu.org/software/gnutls/ and http://www.gnutls.org/ +gnutls: +gnutls: +gnutls: +gnutls: +gnutls: +gnutls: +gnutls: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/patches/libgcrypt/libgcrypt.SlackBuild b/patches/libgcrypt/libgcrypt.SlackBuild new file mode 100755 index 00000000..612a793a --- /dev/null +++ b/patches/libgcrypt/libgcrypt.SlackBuild @@ -0,0 +1,197 @@ +#!/bin/bash +# +# libgcrypt.SlackBuild 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 any later version. +# +# libgcrypt.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for libgcrypt, by Silvio Rhatto +# requires: +# tested: libgcrypt-1.4.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="libgcrypt" +PKG_NAME="libgcrypt" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.4.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=" --infodir=/usr/info --enable-shared=yes --enable-static=yes"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="ftp://ftp.gnupg.org/gcrypt/libgcrypt/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Import minimized signing key from +if echo [[SIGNING KEY URL]] | grep -q -v "SIGNING KEY URL"; then + lynx -dump [[SIGNING KEY URL]] | gpg --import || exit $ERROR_GPG +elif echo 1CE0C630 | grep -q -v "SIGNING KEY ID"; then + gpg --recv-keys 1CE0C630 || exit $ERROR_GPG +else + gpg --import << EOKEY || exit $ERROR_GPG +[[SIGNING KEY]] +EOKEY +fi + +# Download source's signature if necessary and check it +if echo [[SIGNING URL]] | grep -q -v "SIGNING URL"; then + SIGNATURE="`basename [[SIGNING URL]]`" + if [ ! -s "$SRC_DIR/$SIGNATURE" ]; then + wget "[[SIGNING URL]]" -O "$SRC_DIR/$SIGNATURE" || exit $ERROR_WGET + fi +else + if [ -s "$SRC_DIR/$SRC.sig" ]; then + SIGNATURE="$SRC.sig" + elif [ -s "$SRC_DIR/$SRC.asc" ]; then + SIGNATURE="$SRC.asc" + else + echo Trying to get signature file from $URL.sig... + if wget "$URL.sig" -O "$SRC_DIR/$SRC.sig"; then + SIGNATURE="$SRC.sig" + else + rm $SRC_DIR/$SRC.sig + echo Trying to get signature file from $URL.asc... + if wget "$URL.asc" -O "$SRC_DIR/$SRC.asc"; then + SIGNATURE="$SRC.asc" + else + rm $SRC_DIR/$SRC.asc + echo "Error getting source's signature file" + exit $ERROR_GPG + fi + fi + fi +fi + +echo Checking $SRC_DIR/$SRC with gpg using $SRC_DIR/$SIGNATURE... +gpg --verify "$SRC_DIR/$SIGNATURE" "$SRC_DIR/$SRC" || exit $ERROR_GPG +echo Success. + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS BUGS COPYING* ChangeLog INSTALL NEWS README README.SVN THANKS TODO VERSION" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------| +libgcrypt: libgcrypt (General purpose crypto library) +libgcrypt: +libgcrypt: Libgcrypt is a general purpose crypto library based on the code +libgcrypt: used in GnuPG. +libgcrypt: +libgcrypt: +libgcrypt: +libgcrypt: +libgcrypt: +libgcrypt: +libgcrypt: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/patches/libpng/libpng.SlackBuild b/patches/libpng/libpng.SlackBuild index 77a67f06..a218cb32 100755 --- a/patches/libpng/libpng.SlackBuild +++ b/patches/libpng/libpng.SlackBuild @@ -31,7 +31,7 @@ fi # default settings PACKAGE="libpng" ARCH=${ARCH:=i486} -VERSION=${VERSION:=1.2.18} +VERSION=${VERSION:=1.2.29} BUILD=${BUILD:=1rha} SRC_DIR=${SRC:=$CWD} TMP=${TMP:=/tmp} @@ -95,14 +95,6 @@ if [ "$ARCH" == "x86_64" ]; then zcat $CWD/libpng.libs.diff.gz | patch -p1 --verbose || exit $ERROR_PATCH ln -sf scripts/makefile.linux ./Makefile - # makefile.linux breaks on trying to deal with MMX on AMD64. - # If we use automake, the Makefile doesn't deal with certain - # exported functions we need (e.g. png_read_destroy) - # We *could* patch libpng to use 64 bit safe MMX instructions, but - # the tested and recommended way appears to be to disable the MMX - # instructions on AMD64 - zcat $CWD/libpng.mmx-x86-only.diff.gz | patch -p1 --verbose || exit 1 # Patch from Mandriva - ./configure --prefix=/usr --libdir=$LIBDIR || exit $ERROR_CONF else diff --git a/patches/libxml2/libxml2.SlackBuild b/patches/libxml2/libxml2.SlackBuild new file mode 100755 index 00000000..d6119176 --- /dev/null +++ b/patches/libxml2/libxml2.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# libxml2.SlackBuild 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 any later version. +# +# libxml2.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for libxml2, by Silvio Rhatto +# requires: +# tested: libxml2-2.6.32 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="libxml2" +PKG_NAME="libxml2" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.6.32} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="ftp://xmlsoft.org/libxml2/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog Copyright NEWS README TODO TODO_SCHEMAS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +libxml2: libxml2 (XML parser library) +libxml2: +libxml2: Libxml2 is the XML C parser library and toolkit. XML itself is a +libxml2: metalanguage to design markup languages -- i.e. a text language where +libxml2: structures are added to the content using extra "markup" information +libxml2: enclosed between angle brackets. HTML is the most well-known markup +libxml2: language. Though the library is written in C, a variety of language +libxml2: bindings make it available in other environments. +libxml2: +libxml2: +libxml2: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/patches/libxslt/libxslt.SlackBuild b/patches/libxslt/libxslt.SlackBuild new file mode 100755 index 00000000..b9d7d82f --- /dev/null +++ b/patches/libxslt/libxslt.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# libxslt.SlackBuild 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 any later version. +# +# libxslt.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for libxslt, by Silvio Rhatto +# requires: +# tested: libxslt-1.1.24 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="libxslt" +PKG_NAME="libxslt" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.1.24} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="ftp://xmlsoft.org/libxslt/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog Copyright FEATURES NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +libxslt: libxslt (XML transformation library) +libxslt: +libxslt: XSLT support for libxml2. (XSLT is a language used for transforming +libxslt: XML documents) +libxslt: +libxslt: +libxslt: +libxslt: +libxslt: +libxslt: +libxslt: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/patches/openssl/certwatch.gz b/patches/openssl/certwatch.gz Binary files differnew file mode 100644 index 00000000..06cd1d8c --- /dev/null +++ b/patches/openssl/certwatch.gz diff --git a/patches/openssl/doinst.sh-openssl-solibs.gz b/patches/openssl/doinst.sh-openssl-solibs.gz Binary files differnew file mode 100644 index 00000000..a8a303fc --- /dev/null +++ b/patches/openssl/doinst.sh-openssl-solibs.gz diff --git a/patches/openssl/doinst.sh-openssl.gz b/patches/openssl/doinst.sh-openssl.gz Binary files differnew file mode 100644 index 00000000..aa74c81a --- /dev/null +++ b/patches/openssl/doinst.sh-openssl.gz diff --git a/patches/openssl/openssl.SlackBuild b/patches/openssl/openssl.SlackBuild index 979ebf37..a94ecc4a 100755 --- a/patches/openssl/openssl.SlackBuild +++ b/patches/openssl/openssl.SlackBuild @@ -1,16 +1,4 @@ #!/bin/bash -# -# openssl.SlackBuild 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 any later version. -# -# openssl.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA # Copyright 2000 BSDi, Inc. Concord, CA, USA # Copyright 2001, 2002 Slackware Linux, Inc. Concord, CA, USA # Copyright 2005 Patrick J. Volkerding, Sebeka, MN, USA @@ -45,7 +33,7 @@ elif [ -f /etc/slackbuildrc ]; then fi PACKAGE="openssl" -VERSION=${VERSION:=0.9.7l} +VERSION=${VERSION:=0.9.8h} ARCH=${ARCH:=i486} BUILD=${BUILD:=1rha} SRC_DIR=${SRC:=$CWD} @@ -57,159 +45,511 @@ PACKAGE_EXT="gz" SRC="openssl-$VERSION.tar.$PACKAGE_EXT" URL="http://www.openssl.org/source/$SRC" -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# ------- error codes for createpkg -------------- +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40 SRC_DIR="$SRC_DIR/$PACKAGE" mkdir -p $SRC_DIR if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then rm -f $SRC_DIR/$SRC.asc - wget "$URL" -O "$SRC_DIR/$SRC" - wget "$URL.asc" -O "$SRC_DIR/$SRC.asc" + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET + wget "$URL.asc" -O "$SRC_DIR/$SRC.asc" || exit $ERROR_WGET fi gpg --import << EOGPG -----BEGIN PGP PUBLIC KEY BLOCK----- Version: PGP Key Server 0.9.6 -mQGiBD+T8ZcRBAC5vVAcK1C/RIgL4tzwfU4k3vWEGHt4Ukt4nIctAMYJkfuzq9FS -AL4c4xEpVTHRxDXNoSC+ialnJfX5qfhjrixE7wRR01TG7kvpbr76v8x88+LiBpwN -QTZlsz2OmbHeeWRxnCOgw79+5umLOWRmjDY9om6+8JbG4DtCiZokq4UoRwCgyFrG -T8ov4iBf0lUkd+/lS5MmPT8D/0fRaM3LrT8/3kWBZd9bT6UwqK9c3AT1JthZH5GI -5Bl4xL2JcL0paLLDbGRErIf+BrAHEioYdFlR3f4GlFEs6n9LwBfew/46Tz5Z42is -R5eSmYpPgv8cSl+fhw0ff78TQ8hoOlTCwzB2aLcdLlQB+j7joqk2zITLuYkyntyY -xle8A/9XFMEOg90bbqgUyBI8OF/aYFRLDffGd2BEJcytC5dgPJv+/RRn0QSlUAyq -jiws1JAV3Q9fvJMhxg6aO4/6Ab+lK1SwlTC71r24kxv+nQsot495b4AS4ns54MeY -7Zot7/zrgQ7MjXutb/oOg1le1hjTS2ONJjGv2aNUxpYtiZqzc7QfUmljaGFyZCBM -ZXZpdHRlIDxsZXZpdHRlQGxwLnNlPokBHAQQAQIABgUCQjymlQAKCRCi0pt78pXH -WfILB/9Ti9I34nli2O37oWFek1A5hVxCuh5T7vOjtQ501yi0YG+SJIqKprZD96Oh -Tc49qQhOaXWD6SSyVxZPuj2tTYPRe07qZol1Fn6SA2QgBNix2nNLNeDhaJny+gdT -JGRgcURcBR31hTsWFb3abGk7TBZpbw1Zy3CFJM/n5XJQwQbOOWJISFIfllJe359j -ffaYP51BOaRGYsakSHfJfShm6ASDpnCb7Pj4t6xamVPrghftmXOpV5V1DcTDin4W -Xi/iK9hA8X8/fJva6alJ7xvOXIiAWbL9yiQyVQInjGm30PECnD6IU4zBX9rA+LLj -DzCXI5gWFcwKGzF4A+BqTP+x7GPTiEYEEBECAAYFAkKQuxgACgkQi9gubzC5S1z3 -owCgn7u/b8zXjf8xt6D1dspy5LusNwIAoITRPt3eYwD6X76lhavRJvbelvXIiEYE -EhECAAYFAkPYEwwACgkQOaMLcr2S8YSALgCdH1DrjK2v6BhC57Za7a7bp9lZbakA -oIecfRB1e2sLSCVNg6JT60dFPUPIiEYEEhECAAYFAkPYExYACgkQOaMLcr2S8YS5 -wwCcDM+QznStikChAoCGXBNTjuTuYZEAniE1Hut9Cqpr7AdUvFc7jjeII2r0iJwE -EwECAAYFAkJM+8YACgkQ7q1M/UmlY9nGfwP+MHyp4UlQwNYQUM1ENj5UP5Io3xFt -QdEbyaXX5+eHGWHGlbUZidbemTG0Lk25gHuRPwNWbX6hUde0Sxn1SwPsqhA4F3Je -i5mvwIclrOAXt1rA7bXxTe4f0vPR8r88Ci5ObZ4v0pgbTzAD2SuwkrfX6onBo7af -0v12WyU+OTmN8daJAhwEEwECAAYFAkJa4rIACgkQquPmzmahRGg4gxAAzFma8T3U -9EKbUw43a+1wOQ9rPyg665CRfLTjBa+s1XPeUguirnRYKQM90g9b12cnVsCg6XNx -l+Kg2SZ2UzOdbuvIkH+wcamw2xrGKWK/m2UZVlQ+fj51PS4QjJ/p+mBu4jdDYcVK -J9YrPK9X9Kl2jDTHO4T0j7ViOWtqNhUHr6EqSeaVhMiGnRR3/2aXCZh8Em9io7ss -YvVrJAtbptkNAfO8fc0AJc/xHMZYgrwaS4zGO5Ilf7E2ra/doWYLg9auuKs6rv21 -HmuAf90dJo8qMLZpiuQTiLTOAZDcL5wfsfWklXVpImVyvZHHbyPh2bqZp2a9ztub -TS1AJ5cCSq7Qd1TAJ36hPPyl41dqHtvCiKzxtUTgeKsChLme0dGhwEzM5i8fN7L8 -+8k/a1GBtPGPZJHMx+CjZd+c6Q5W1UqEZtZeiGbSLrsc1wz391aD7wKMt2uHdy65 -41rLWgZ29lvGzH/M3mZj13jyFauO0nbdYWoYBLzE1bYScpGM+kPh4J1TB3G6fCuN -NgtoQY3Y30drP7BZoQPhm8I0d1hvw+/qIO7voVPdPwfxwcDH3Q3vifwEO74+obK3 -VB9Teelm1GuOmpmq4sB0EenwKuOT/x9ACDFAtNu+23i3ku/pmnnTVlk0Z80S2sCq -vaQRKljpoziZ1/NxHN4vWHyAMSTxwkDe1w2IRgQTEQIABgUCQlriXAAKCRAYWdAf -Z3uh7GkYAKCAPD3fbfppX2kem3wZ+pEnCYr59QCgh+w3dHA5IO94Yoldea4qOLW1 -JraIRgQTEQIABgUCQlrieQAKCRCBwvfr4hO2kqw4AJ4m/OrsWYukwhIHfbeivjxW -i3jXeACfUqdl34TuVjGNBLqBju6QLgO/Fx+IRgQTEQIABgUCQlrilQAKCRBrcOzZ -XcP0c5F9AKDjzYkwo2tnhdobBqHTYey49t7gQwCdGAFezw4OVhWAo1CiXcHIJs05 -1+WIXgQTEQIAHgIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAUCQjyIlQAKCRCnr554 -9wlFOzL5AJ4/Q66TSctpsVz7CHSwmD3DKJQGBgCgsYZduBOSmro4QNMyplc7s755 -jluIXgQTEQIAHgIbAwYLCQgHAwIDFQIDAxYCAQIeAQIXgAUCQpYRkAAKCRCnr554 -9wlFO90xAJ9vPJdwKtv7DRHjAFYzozCTww8b2ACdEPD6pi4uLzXgKtmtLbMwnptK -WKuIZAQTEQIAJAUCP5PyQwIbAwUJAeEzgAYLCQgHAwIDFQIDAxYCAQIeAQIXgAAK -CRCnr5549wlFO0KdAKC39VTsm6AoiAclGqOVPMbJvoozZQCdGoJNFZa8UDuAsb3+ -wNY+Mqdap/20JVJpY2hhcmQgTGV2aXR0ZSA8bGV2aXR0ZUBvcGVuc3NsLm9yZz6J -ARwEEAECAAYFAkI8ppUACgkQotKbe/KVx1kyrgf/WscI5eTUUPNEwWeX7miwMfXR -y+U9MAxgKFTqVpqPiM4ZEJ/z/7yr6AspQmmh9I0oOKXp0YRgzavftBVsE7B5EfyP -4dy5B4K7AF4+TXYJre9154ogB9r+U3HTYDUJAX4KSu0CXJ/6iu2O9vgIVQwT4S+x -n/SRBuU9HFw/axCsNV5VfucFEm3TXgiGd2urGHtW2xsF1jiSFKoqZl3ucRAUIyJg -z5Tu4EfM17s+3CrwG0i1vOwzjGchMFCq7BTYRouutls5yMMa1nH+XOojY812c3GK -hl5PDzcN6lNg/eqrKAwK9wlq8YZtrmJHiE/UHQl8dL3ZVwZ63Fhzib/revQjKYhG -BBARAgAGBQJCkLsYAAoJEIvYLm8wuUtcGKIAn2kocBh8whznWT/Hc8qb05sGkKm0 -AJ9GYHEcFzEEdTJJGq1Q25zCjvw/JohGBBIRAgAGBQJD2BMMAAoJEDmjC3K9kvGE -gC4AnR9Q64ytr+gYQue2Wu2u26fZWW2pAKCHnH0QdXtrC0glTYOiU+tHRT1DyIic -BBMBAgAGBQJCTPvGAAoJEO6tTP1JpWPZSFYEAJFpGBWD4GKkvVYyNDqIBki4flmw -UpNVeMsrh46CYRmj30bSmgYgJaeW+AsfqGCK/M9Lsw7itX2lwNwQqv5ef1CavZmM -61K2qg5NvMTyd0i5Wz6cXXjNyDi0VWua9mlbcN5rxuQ+70FdNJZvkkmFYaSE2meq -6p+Fx9HVc6KdYH1xiQIcBBMBAgAGBQJCWuK0AAoJEKrj5s5moURoVzMQAInFp73E -eruDwDXu2+wMp8j/U38YXn9urfEFHXU8V5XJI2lPGx52lAKrFZdfB3T+WXGzQhD0 -u+eZNjmFBn1o6hmAstZ800/PKq83OHxlp46FxjLZ39tkqmkRpWNzXlsYDl7nEQb/ -SMRdwLa6VCWO3w/37CRqjqsE2X9r66udwcGzHhxmvt8ovhTfjCK5jcownVSM5TCK -zF3bnH22UdN4j0KuZrVV3KavQHnIeeXAAfiHGapnsXJDe8nHVryo5fCdbPWpFLDZ -h+gQX/Bqn0wsJTM8tVtHkePpiVO98Y/6IpZV0Rr9pPCPGWYCtlXYBFmuhHb3Ruek -k42G0v/1slFPfRYb5C/f5G/+Yhg1+m37K3+B9/8i6b4H4964F76aDwhOcP3SjLvR -KER+I+fR6rpOeH7H0wAyXvOm5W4ZbNQ647Wt1c/urScYgF6fS50MRfDak+8HRTxB -Y88ZPM3NBP0YPtMckB9gG8VFpFCRrcRjOdVQvUsKc5QDaavLByjESzBMZCGRRHcL -hOoK2T12+2deY5F3X9nvOF3Yra9NZrS4ZuYPmGJkkGXfm3MPT8GArqKkik4x5dfz -mMpyzLF8l0+70tekHEp2GwjbmMJuqhxrb+QCuVVmRjQjsZ5JRi7aizKaZUvriP1q -bU+LIbfpyIdHKkXRMMqMwHEMcFY/RJbaz4ZTiEYEExECAAYFAkJa4lwACgkQGFnQ -H2d7oew3DgCePtMnWqEdPCtb8KnfcadZ3DnqI0AAoIvSG5CRnCdgSbyUiXcIEX+t -Oc32iEYEExECAAYFAkJa4noACgkQgcL36+ITtpLr0gCfSuXhzTRvPHRTJKehkh2m -YZYTw8IAn3JomkcurEehYU/8TOd9Yv2xlhQIiEYEExECAAYFAkJa4pUACgkQa3Ds -2V3D9HN4FwCfeyPKu8icMqk9XVSWMYd2Ti09ffMAnjmUMO7qqtCohvXPYbdjgIDS -Kw1wiF4EExECAB4CGwMGCwkIBwMCAxUCAwMWAgECHgECF4AFAkI8iI4ACgkQp6+e -ePcJRTvD6wCguZBUlPqFDBBe/JPallz8hQD5eTsAn1bpP2RKZ82qD14kjdLQP4Kd -6zzciF4EExECAB4CGwMGCwkIBwMCAxUCAwMWAgECHgECF4AFAkKWEZAACgkQp6+e -ePcJRTt8DQCghwRswzDVI4mMkxHHL25N7VU+8jgAoLjXT6abchXw3Yt78OThDam9 -nk96iGQEExECACQFAj+T8lsCGwMFCQHhM4AGCwkIBwMCAxUCAwMWAgECHgECF4AA -CgkQp6+eePcJRTv8zwCeKoTy01uOrRfK4JsukggpPqXrvjAAn2Ovc7iunYASMz9j -0DhMTAg1m6JLtCVSaWNoYXJkIExldml0dGUgPHJpY2hhcmRAbGV2aXR0ZS5vcmc+ -iQEcBBABAgAGBQJCPKaNAAoJEKLSm3vylcdZX3AH/RyxnnH+ofdF+uOtFWPco9J6 -i5Bou0c7ck++VfFGKU0KqaMAHfSGBXe3wlE7dO9YGDL8SXeoPPi6pDgDjBQwWfcD -P4pf+2vTk1dUwdcs4G6n1I6zcVtl7OrHZnhyeOKqFRDpFVsBK2UONnm47VTniyew -WzcAZEIeHrF9e95pW9S5oCLujFhgFruPopEcm9Vra/HMuHMS+RE9foXe3ZvQN332 -iyZqOE1U9BA4XfFuLLzPCIsUs6GPghyg9YFZtR/aYJwarMERlZ/we6Qp4iHz0nsd -LmgCEcOXFliA4wZuswQH81AztlzYNMBcwdWGQp1KPmtX2whj6Pee0U8hboyL5tKI -RgQQEQIABgUCQpC7FQAKCRCL2C5vMLlLXDkFAJ4vyNfsPt4SqTsIOQPhUsILAPjM -uACbBkoG+Wybsigsfusslr8pz1Pr8iaIRgQSEQIABgUCQ9gTFgAKCRA5owtyvZLx -hPS8AJ93BGLefJ6NQ+iPz6wyS9cXyY+xFwCgyjo5ZofWVpDTSRRUBy/aMeu9nPuI -nAQTAQIABgUCQkz7kQAKCRDurUz9SaVj2alrA/4tXzj8JNHiXedZBArOoC8nnbUS -eMbZSXmV5bIjtXhuDPH99EEK7u3mOT5wPSeUB2p58xzAnNUOVIOS24GXKgtSwg3J -hTaBwDFf3qlE4bzaFJPAAQ2AMH9RY9XgNG0eIbvoD6gUmCiE1uQNwQwQ4t3LY8MM -q9bGNVYBJW3A5b6RoYkCHAQTAQIABgUCQlrirwAKCRCq4+bOZqFEaBxlD/46fbco -iPE8hJbmNuqNimXJZhE6ME17AdsaplbTFOjAaO9dIo57DfGDyGIsgrdsnqa8o3pD -9zptv3P9N/aDrSMyhdEAZXrfQfmj2S9Te3CNOhyKHT5ntsJtUYnT+LXrgej0vA8V -KK1Lt3emjJ2btNODui/BTecmAD0qERy6VGYstEeUo1U3njKGWr0wBaJZgiaWUbnN -fkacbr8agm4+VT+c3hJUU1HlSCAQY/DlE/TXBV8UjcwkgTYIgcVTIXig7RnZGebA -YPf4j0+voa1rD64791R+CefVHq5uvvahCqiFB2fCJ9WIYzS0R5ECECNxn/n7xHxj -yo9PiO1C02Fuxfd03K1V0HCxxiB/A5r5RcCYkR3915bT1HrUAAI3YVekcu/Lxk6x -0liAIs5o6GFQVhVrWBbbQwjz1RZc9+IWY/V4V2AClV843ASOThWvX2eacro4mJ3j -y240itG3ljA1c97PtmYbYhOJOwlwhGQBet2CHJBaOBqPAOVMts+vnfz9H5NWUEqJ -3xNAO4Nk3Wbd1Wd5EbUl3F64XDe3Jiivc/YqwIxUgIEtFGudiCCJn6oL360WJ+Gf -5Gh7siyf8X1Qju9cLiTYWB8byEP/FW98z8Lzpq6RiO1ozxSKRWxGcA3XysAbOz34 -EoKU11Ox11zfneXe934MdkWTnNl0Ax6E++63YohGBBMRAgAGBQJCWuJcAAoJEBhZ -0B9ne6HsscgAoIutMM9ufkf8IGNOxggqx0PKnbo0AJ9mR28UgXZ5vWmuPgr8MnL8 -q4R3Q4hGBBMRAgAGBQJCWuJ5AAoJEIHC9+viE7aSXuMAni9xQOR98wsBN7/ElQZP -pJOxJTvVAJsE7/NF0JsLH8NaXQzBce5JDd9vEYhGBBMRAgAGBQJCWuKVAAoJEGtw -7Nldw/RzXcMAoMZfw2ISflPnQEeJer/BtvrstDw5AKCAkbQmMDzfd6CY3h9E1f0S -2BHgzIheBBMRAgAeAhsDBgsJCAcDAgMVAgMDFgIBAh4BAheABQJCPIiVAAoJEKev -nnj3CUU7jj4An00ybqwiQn60qhcZOSZnK26Og4tfAJ0YdY2YojjBBGJSNMiHRN1w -DSEAeoheBBMRAgAeAhsDBgsJCAcDAgMVAgMDFgIBAh4BAheABQJClhGJAAoJEKev -nnj3CUU7K14An2XcFSO38LFim7ihbwEeTbX90qQHAKCHST1auSRutD4JaAjoa2yy -Yaw9mIhkBBMRAgAkBQI/k/GXAhsDBQkB4TOABgsJCAcDAgMVAgMDFgIBAh4BAheA -AAoJEKevnnj3CUU7+EwAmwZ+dl0hDw3bi97Dhh2roWbE8oWMAJ9MsHVDZYofEXGo -j6yixKfxl8MlQLkCDQQ/k/G2EAgAveqxdc+BRyB5Oe56+v9nwf4mxfHgxs3nAOfY -EBQa8TefH+K/AtrLdruc+TCv+rLdRDuzrtFSiVTg/sY98k7A6PzTo54hnSem0R/4 -iIG430UyhjfAbSWL/mAkoADo9/PD7UJE0uvvSWqY4+LjSkPf8Dta50EzcMVid0Pj -F0dEp/gyHD3+9IDKTnLgrSIz4oKb4cY/wjYiDB+Kwp57f9XHvyCD6JJq/fbTBpK6 -9x2GBb/Lt6ms5oVlQ19TM13Ya+TOsE/eV6GfqhJooX+Z9soKDFRw49zlegJYS415 -0jbxL6/ZDK+GbP4i1RYvP7Twf1Y3ozFN69bvT6oUwssc1C3odwADBQgAsZFE6c0n -qf+zxWysJERgnfv8BVV/ZXq3T4KC0pUqDu8VT6xdURn0Yfgb7KWN644jiJFpMgO5 -xVybz6Q4Ti2WjZRJiZ2vuxiqDcxkNodz7Sik3PW/wvt4FT2qCOZwYMwtCK0drWTh -rLLpCdT9vJr+leRdQB/hvC3UKBOrJrvl2X1FBGBlH/ucPTzJuIQz6zENgPt9ewD1 -a/RISa0Q0XsGpEM7EznRnTBellHWBUbRAZtAHnc/hW/ynjvNQ4UwDgZ/7SHRWvBe -kM5pvzfgmFhvY0D1SCmz76KhiTpeMwJUZUp4XKSil6gkCjumTvPyYYG/MdaSBvmw -xdydjOJPeopowohJBBgRAgAJAhsMBQJClhIjAAoJEKevnnj3CUU79/IAoJ5oKNsH -/idN19rlt61VJllm2R/WAJ9uyWcqpOAThvzO/FIVHiEDmJAT6Q== -=N1Yk +mI0DMxFj8gAAAQQA6WhM5TR/jDsUNEwzqQD/pdrNfEn8cfx2yZvoTtG5h9WVex2Q +LDFQE6TJb4BiGQdthTCcHmoGgVTIutssa7AodbUqcDCBt5ktMfmepAukDREsZVm/ +e3MiYpR3LLEGmFlYLgh4SBRuX1xz6mI6wQnxDMXuCerBaj8q7q1M/UmlY9kABRG0 +Fk1hcmsgQ294IDxtYXJrQGMyLm5ldD6JAJUDBRA1/Rjj7q1M/UmlY9kBAfwzBADc +i7X+/fq9+cOGULYBE9Tr4VxjG4T9JxE5BeoR/2JdOWefnfGtpHgusO/Ii0yOqC9V +9SunEZfhut5E4Q3Fhz011aQaXjGLc2zVcO0fCAZOdue/lUd5xXdupZfVScHv2arQ +Sd3nameuFAdNVkt6npYp6GRiLHX1aD17VBKfMbL2WYkCFQMFED6kWILNY9HdhPkm +TwECvtwP/iGf6TbQTIjkujYW5xVvnGVM7NqMAiICDsDOkkPcrm8PhqTViJrQHGWr +U6Xre51jdJj/lGByCr/YhicUxUO44MttQ52x5JFhQd+oP/OMCvO4FJZIPx9paUX4 +RzimHr+MW9B4K1rbKcRKTjBXTqaLl5zrA4i5N77NDW4Or2PBqD57vCple+THgv7o +WdU1ebnWniayK8L4edZ5OAXIUziOqZjyYyGd6wXu5wo7pFsycP27FjTmerMq2nky +Cl5PHcFZ9+65BuuF+P/DBRgLOa/EM30yU6oNMII/9Umswj5nhL7yE8EZQM2KwmBS +p5fW9/mvZPKbdZit/JNmh7JzmmOCXiFtKUxjHJ/yzIuYOHrSz+eVRGa5JVDvWNsm +i9iar40b1rzW67t6JXwu9YvHwdMNr5t1TD0qg3xbYa8cMKbVNO0l+P9XPJ6PrDS3 +3oK28ED0Y5c/oFgD5yl1LxeJoGI2RXiSRUKRLasoIXaDhABtbK6AGyhsXP3DSNCU +jREXAaHxqRp71tX3W/KKJiahYWAQtGwdry7dRHUl0mbplWUZIyuoVEDwsJCCFZcG +QdKCVPrWot+HQzM/UVqv82SmNNpTBnbq0wCVlvWEjA8Qkiv1q5R2TlSg5LTG0PXQ +fWucZesgZnAXJIx1JGSD3TDjtLTR0omcz/7Ogshk0i7Pq9Ztf/3AiQCVAwUwP/7O +wO6tTP1JpWPZAQHn9QP8DsaxtiTlp36JiX/FFM9z0K/x4Ic2DBaNrxx+Houl+Ue7 +Jcfq3yRogEGr0K+oP7e8OQZb6xinDlyeFSKwGn5hLwZDrP0m4gQTQooN1PFy4uBb +JtyO6sCBA0D/sIMP/yhO/j0TIJbw1EGcC21GdN00/At5GicXcgpxVHfB7stYNnOJ +AhwEEAECAAYFAkF/LBAACgkQquPmzmahRGh1Xg/9Hzk7/7yH6o24wrrTnTczVsbE +vz037xDbJOwTv3lxkX9BIrOsVPzC3LiROhSfA+Zcyoptb5qzmDVYJ1K7EHpTCQcF +pXWqvYokHgLjyF5440HGDyjkR1DTSgUjAZ3UOPNlc7r8WneeQHqNO4UWBT7F6VPt +cLJdN6F/ucDzt72IbTo1l3D6WNEnlnlxbLlq378fpaugBvb2LyFapSG4s8gnkWyT +8bal9vZc4h/ELDr4OdD8zrqXzFOR6Xw/bmZmmnHQR9uUwJ0QEIhWEFoAgSoQ6g80 +eiJUPoOYA51c/85mQdJEXVTcu2dhy5kjgeMEjxTRnZXb+L7afY3cWpC+aakt1ykK +EIQ9I7y0nYJ0pziXr7nVaKDUDCEs40LVNtnBd6L+IePPZ9Mng0kymWCuKUA89p+B +wIQ3Cmgxz1yE6kiOy/HBQl6xetg9JbCWku9f/RSEl8O+4XC5lBWd9eSsmCDgwZes +B/9lSlrt8qnYD8H0eZR4e0hmEPLgXRiLQMc4IZtWrzRl6ejTVoQq23OBkjtfaFt6 +9TDyIyaww+3igqJkVNIVTeSQco39rPauve7bwhZ4wu315EpJX7YlPnF52FfZOOwi +Z86/I02W8FzTi4kd9QKTvm8wOdL6UY7IWwpR437M22E6HCuyWGl5ngnoGgN+Ndcn +h1N/6PtNhAFwCEtcDV+IRgQQEQIABgUCO9CTnwAKCRBVlt0M6b9lPRO1AJ41uuX4 +2r22KYa0wQPQEs6wgzWtWgCfRyYZ/mwhh2l3phacCs1MNb+18iWJAEYEEBECAAYF +Aj3dKwkACgkQVZHiwGZkwHjrLwCeNSSWj0EHcfbDiVhUM3o4soLtBnUAoLV1U5hB +nqJYgdrzqeyQhfi+G2WgiQBGBBARAgAGBQI94XDpAAoJEDLsF1kwoh1VUK8AnikK +B5AAr/GULEWHDZp6sMEc93KEAJ9RpmQEdKuzrQNRG2zMT6Ts7xMV6IkARgQQEQIA +BgUCPqRX2gAKCRAxhs0ETwnwVSlvAKCkFfJMhy8bEMfOpknpYE//SvXKiQCfY34b +zc8lBnYwuCCGw4UjcdC1WXOIRgQQEQIABgUCQiut5wAKCRDmG6SJFeu5q/n0AJsG +9YDoDypuN7pYYvdtORrCbeDwEgCdHGFDFDWAICDnBxLIWr3FbKi9ZfaIRQQSEQIA +BgUCQFiGxQAKCRDIgd1HSuerR54aAKCfTrkm3w17KpoM2OBKNMefkIHegwCXbJpp +WaHSNZQjw6JEBRomFfETkYhGBBMRAgAGBQI9DyzcAAoJEEq61lpJwpzCznYAoMnU +KJowCPxfaM1CEbt5/VQlOaaUAJ0QrowZcGEP8dsfvjnF+/F/C0y3ZYhGBBMRAgAG +BQI93REmAAoJEEzETQAR34fp8PcAn3nWBPZntvVu/33wic9F88Vj58CBAJ9ap25z +QJ2iAZiNZwBWGosMUuyi+ohGBBMRAgAGBQI+U5aSAAoJENjDuVLpGrm5wakAn19H ++FsME+6pOX88oS/I8wdxpxs/AKCfi8znKAHS989o/8+IB+L0Aj1J54hGBBMRAgAG +BQI/egclAAoJEBhZ0B9ne6HsxPIAnjyFgDBUTNDfLGMDBRqe6ylRdnbeAJ91zA6l +Vvnj4FvW1jdhED5rVhZtP4hGBBMRAgAGBQI/wcWSAAoJEDYVIteCq3vRggMAoKC7 +qznvT6OR/i4YMqck4OdyB00UAJ92X5n89ANw4zdHre511XnqXv3/J4hGBBMRAgAG +BQJABH++AAoJEIHC9+viE7aSJogAn1bvaogGFGb3YBz7EuCfTgMsA8AwAJ9L7pRq +AtaeCOxX5YI++Ez0LJOUXIhGBBMRAgAGBQJAC1JDAAoJEGtw7Nldw/RzmD0AoO1u +zGhzzCy8hmZ8S8honUbc9HtxAJ97WJkzvER3QPi7jyqoNsLf99JzU7QWTWFyayBD +b3ggPG1jb3hAYzIubmV0PokAlQMFEDRypQTurUz9SaVj2QEBAPED/R0o1TC6IXzl +TtLR3C0QwXg350ZwcYE3hez9rvKgfnjni6gcxzZhP4ETlrmVzqZMXgqk9Bht6F6p +khJlTrQ7CSvdrCr7U3STgBqveVECN7dSMeojR5FSX6NdUZCclNoi+lxUdfed50t9 +8ShnW1Or++SlQrtyU3tZAxAzsjFQ3UZliQCVAwUQN58E7TGmPZbsFAuBAQHY1wP/ +b0v/5PBNeWa4L+Rx25soKdawL0gzUI/Cey03h73t5pBKAaS2v45JFeB5xGPBZZhT +ujffIUb62jdnpsgtGO3r4W4Xf70KPOvLwXQeRj20GHPRNYAidJBEyPSHIe/DXZTv +QiKVY+JppduO/aig9WvqiwYtc42nxq24tAjf72Ynv0aJAD8DBRA6ynJd/W+IxiHQ +pxsRAn41AJ0TE+0HYlNdTzXjrX9iCsziPoIuYgCgkNNAQ9v4KCRrNzsqqATqRmyb +pEKJAJUDBRA61iXnms08wKmfdd0BAacGA/9EqsT2tIdhJTYBgCKaLffwmFnG2n3N +k52rTdI8sQWv1bNj4VjDbVl0ITqCzCPRnKMzRIl7PVEPnHtsRLYc7AiljMUJoAvy +FaAUc8AmJ8CV+rdiTbeBncYviwMOrB4cGK+INvi2cFZ/jJzE6cS0IfGQvnvVOuO0 +bEsQ4WWlUBv5vokAPwMFEDrWKObdumS6LDEtLxECYd8AniafVeerYuG405ntW6/J +PW/SUBdpAKCnen2pD3hHEEhbneGcXSAN4JYe2okCFQMFED6kWILNY9HdhPkmTwEC +94IP/Ryk3u2h41n1o5wSiCmAD5Xy+5l2fuNfvEJUm8jyG1cqT/zPzPNdHrs+JmkS +lTtYHbUAdS/7rLhbjFIaPhY7/W11pVLB7Bo0XGRAZFUVlrdRYirl/4WOFJL7rRx0 +8X8GtVmuD7nQuR9wnY3KLy6jbVhLOnTfTSsAGEHZDCu1vQEG9wwN1jSLRVRPxQzy +XYKA0LqHXG465syIHdgiCtrD8cPxx4FhUzKc/nfuTCihCuTRVMfZycoo+yepXQ8q +Gbjjv7sjoa0mTc258z2lBjh9WcsAiFuY0rlCsXE2/9PfJhsSaU+8YS6uIbdmorlM +/AL1wT8uqq1hF6cmdt0v1wlbUDTgyI2+ade5vsCm2EjtVmx3n3xG98ieJ9yUTks2 +PCaBlp1Px4NbMoXWIHNlmvD8Tv6OQO2R/+ncJGE4UD7K33NQ4wSw0MetSytPbFzQ +dbSUXf5n7I2OYVZ6edQrsJ9iNvrLY98+piUx04duil9UZQqVrxz0+hlZvkJTrXly +hs+MD18/Og19vNMzmc23DdEcTLpY3cqBZmE8wN7zLGH5yH+34KaZ3ATuWyU2BmnF +YGiA3Qfv15TcAfNgFj4aX/YnKN0S6qZbUeCTNMY9QDUPhzN7J6d9EvhJzozGdZ16 +lMAatTv3V+a+R1A8UKd64DO3IPVd9V5lvDtoJUwZC5bK8I46iQCVAwUwP/7OyO6t +TP1JpWPZAQEMMgP+O4Xqe5bEOm644k+SqHdwcF4S+FptgLOrnGMGF5SOjV6HCz8l +GI8U7UKdjFpsdL0BZhXHySrOPsnqJrxgcrzFBg6K9OEoUjRoBAwskd8BPLkS5wJR +LDgKzuhxcThVFFtMXPePx0mHDQmnZOH6lTOKHdtCG7pAW3bHOCjbOisj24SJAhwE +EAECAAYFAkF/LBMACgkQquPmzmahRGhcyhAAxQPS4xY+KvV352ctr1DuGM6xENQ3 +gMW4aKnWwb6tdUlnxdziwrenpf5f389Hhy7f6oDljjmq70o/P5QqZ4G/raE7CSRA +j7Mlkjfs2UYGFKigVbvKq3TwgcGcp1ThnJ2FFuPqr8RzNAtLmLnZzMwrMnP0dalD +ZB+L6goF3a9DQI4IdG7wMXxvQ8tEIvnT1TiW5aaZyNRV+jrJGQhQl5wkLEDGGlfC +qGkp90JsTxFvEZK6QZHJRlHracn4ZcV7TVN0NYgmBHId25oBaZLON5vj6HSbqmMC +ihJe+KoIp+ic7uEsHewbDsWoH7u53451LZ1DIwhN17pM/AFB7zy/q2nCOvazs6bQ +x8H8wY9F6MpImiMBSSiYsTrYDUfE4g6qhoDnkRKn5HjlMetM2FYGZ6YqsEjAJZ1E +LokdF5/s0FZ/SCrZDkCjF0++65nmFXS4C/dgZJnK4lqmSPnbspfcmSUlOKRlQ4Kf +sHI1ui516uC3S5JK2fcMj8MlPMNzFq2vCIOVTkC67qSQPEEdXmnCEd3RQkcMTeho +rgItfshB5wFFcHnkAYrztXIXobZPtGFGfb2skOdeU6DuR6nd1vTDiUEe06lp3V52 +FKebLhPkLTk3b4FzC8JZg8WpjUn1QkWy4/j5Nj3flg6x2Q0vW6ZNPdZJToOwsxpx +8VtcbnfHoKdi3VyIRgQQEQIABgUCOjcVuwAKCRDe3YS5RDds3E3+AKC6fAZPreRs +dDRv5/OzcI3ozjadxwCfbEf0ShLygKRRgU9Yo1/XdCiSQ2yIRgQQEQIABgUCOl4t +JgAKCRAjbz4VJTe1Ubh+AJ4zuIl+pHzAipWjKWAy5nn5GsM+RQCcDynXECFq/ylQ +0nTrJFJ3RI6y0ZmIRgQQEQIABgUCO9CTnwAKCRBVlt0M6b9lPVA7AJ99GXT9WU50 +04DzPOGgVgnG2eL2xQCfbVuBzx7xm0XaAVLrmWk8G1Uv0XCIRgQQEQIABgUCPB/k +ZgAKCRBudrHI8aOrvRpwAKCwsMfQSuQh/HJl4ElTuBwAt40G2gCcDLMhFwFxhtJN +a1kGWs2qkRf2Fn2JAEYEEBECAAYFAj3dKv4ACgkQVZHiwGZkwHg/7QCg4ASyAyVB +m9NCU53Hq7bMqKyziRgAoODvdotzHuK4xYKnBt+RAxOonyKJiQBGBBARAgAGBQI9 +4PDVAAoJEDLsF1kwoh1VchEAnjI3X9jH+zHbYaeM8rzQPf/LjNWLAKCG1H1wBkfh +D6qDcMABF/VrMF7jkYkARgQQEQIABgUCPqRX2gAKCRAxhs0ETwnwVa6gAKCl45uG +vpcGKv/T+zC645eqbdNj0ACgloG9dKOa1m9elcJPWTRQ9+2hiRCIRgQQEQIABgUC +Qiut5wAKCRDmG6SJFeu5qwQxAKCT1l/tYLkt1juNlpf2yBQJ3QYPTwCeK30CIZWJ +bo0Gtmlhv/UPnVRCkmeIRgQSEQIABgUCQFiGxQAKCRDIgd1HSuerR6MlAJ0UTnZI +lRVlyBfu8in1Bpoz8kTSggCbBLbbi2Z7ryzftwwu34hRXXVgyHCIRgQTEQIABgUC +PQ8s3AAKCRBKutZaScKcwi0wAJ9duhlMD4DOVcNkq5VcIieX3gC8HQCgyUXU9iiF +VqTJXHN3XQngN8Hz+YGIRgQTEQIABgUCPd0RJQAKCRBMxE0AEd+H6UXvAJ9i7ZjE +V9xbLRNEavi5DP7FvkqSzACfX9mr/SsVt0tvCcjXLmTC7SFj4zyIRgQTEQIABgUC +PlOWkgAKCRDYw7lS6Rq5uXOPAJ0XBekPz3gBlUdCAAq5PrMhdJTbWACgrFrY2vLi +RJXVx8qRVJxBdsQC9XWIRgQTEQIABgUCP3oHJQAKCRAYWdAfZ3uh7Px7AKCOVwkr +fw7Io4sQKwVK0T+k+GkksgCdF2ii9fDFJ/QP8+h47Rvw8GfT+l2IRgQTEQIABgUC +P8HFkgAKCRA2FSLXgqt70RbtAJ45F98zx1LOgWEm88Zsy0bFkmJvlACfSB9WUEgl +OkzJBqk562xScNM1aTWIRgQTEQIABgUCQAR/vgAKCRCBwvfr4hO2kpq9AJ99HI/J +uWXddSx961rClVS9q/7c1ACfbHhqk5fpcZiWux+2Y7R8CXxfQ56IRgQTEQIABgUC +QAtSQwAKCRBrcOzZXcP0cw41AKCZc+W+8iCdDFx9S6KIRQ1e2WC4uQCgtBFf+JcN +KtXSGoxOz7T6u8BDJqu0F01hcmsgQ294IDxtYXJrQGF3ZS5jb20+iQCVAwUQNC9h +Me6tTP1JpWPZAQH+EwP+LHqkBr7hmAVA1EBzt8L4ji4Za9egjw3zC2CImL//wpzW ++O29PKUs8pUEOzLWKGxtU6MPc1QSQf3lM0jdCFV4LAk+XZ7caAWXbneGPwlqL2yc +ePvmleNBerQ3FD8lFKsQCqsUzv7JEs+zvMPCwyhzY7Hl6ariOhVrezJlQTBbsvGJ +AJUDBRA0cqUE7q1M/UmlY9kBAQDxA/0dKNUwuiF85U7S0dwtEMF4N+dGcHGBN4Xs +/a7yoH5454uoHMc2YT+BE5a5lc6mTF4KpPQYbeheqZISZU60Owkr3awq+1N0k4Aa +r3lRAje3UjHqI0eRUl+jXVGQnJTaIvpcVHX3nedLffEoZ1tTq/vkpUK7clN7WQMQ +M7IxUN1GZYkBFQMFEDSxC7XWVFscz8EA9QEBViEH/0bcjPEcNNUXUFx+XwNoy2kJ +cA/1RtXZcagHCylUCCke+4gT3X3K1i8nsRoEJpbblUxrOVNVz3+3X39tTT+/WoJb +w/YZZfNi+cGUMmzactqOv+uhD6eDlhdf1huyYbgkX8udx/fNxEWZ6hg+GHgWnyxy +PaBgIsWfRv/nBbMT3Xty7+yI/9R8KXjQByUImwZKXatvSsnv/jx4BNB0zEmqWFzf +2FUwqRBcxOOmJw/wY82fxNVApb3LFmVaKj0eOhwEVUDbvjH6Ef1kgQDo+uQ7eaAW +U3C6EO08g3HeILy4Xcy1KPpG6Bk47Ry73rGgFii0lrSmOhvCMu0efjLNIXpSxWiJ +AD8DBRA02GubUX4eqU/cq8ERAgUbAKCO913wXBCqiBfQBT5F6koRZRRvbQCffJ+Y +14jFEx+cfCdDIUjjD0l4/diJAJUDBRA2VRWaYlyoKdWSjeUBAeplA/9UIUQI73sv +Y85udqTPAkPHuWs5p+xjmOWZSNeRmt0RAq8MF6OLqaW0GGpBJ+w0uYCzgReg/uYI +EhrgdCJcG4//Qw3+uAP2ddiZDTYrf8NE2tzkctGEIt7hrhYfQVSWp9Po2A5ZSe77 +9IrMP6CaIbE51YdN3wXkoyz4gqoqBoRshokAlQMFEDefBO0xpj2W7BQLgQEB2NcD +/29L/+TwTXlmuC/kcdubKCnWsC9IM1CPwnstN4e97eaQSgGktr+OSRXgecRjwWWY +U7o33yFG+to3Z6bILRjt6+FuF3+9Cjzry8F0HkY9tBhz0TWAInSQRMj0hyHvw12U +70IilWPiaaXbjv2ooPVr6osGLXONp8atuLQI3+9mJ79GiQA/AwUQOspyV/1viMYh +0KcbEQI3fwCgkl6kpk5685Z6YGMDBEkIikMXzssAnjblMtKuuWvgv2sgu7eheoof +fm3FiQA/AwUQOspyXf1viMYh0KcbEQJ+NQCdExPtB2JTXU81461/YgrM4j6CLmIA +oJDTQEPb+Cgkazc7KqgE6kZsm6RCiQCVAwUQOtYl55rNPMCpn3XdAQGnBgP/RKrE +9rSHYSU2AYAimi338JhZxtp9zZOdq03SPLEFr9WzY+FYw21ZdCE6gswj0ZyjM0SJ +ez1RD5x7bES2HOwIpYzFCaAL8hWgFHPAJifAlfq3Yk23gZ3GL4sDDqweHBiviDb4 +tnBWf4ycxOnEtCHxkL571TrjtGxLEOFlpVAb+b6JAD8DBRA61ijm3bpkuiwxLS8R +AmHfAJ4mn1Xnq2LhuNOZ7VuvyT1v0lAXaQCgp3p9qQ94RxBIW53hnF0gDeCWHtqJ +AJUDBRA7GlanaDk/TNILou0BAVJrBAC21HKwrPq8H6Gk8HAz6Asxi6WYKgloHxkn +nCbXspnkJIkHqI8SLFaMNuEc9rA3hoUEdGBfhkmzGZWvGViFmAvgsIU7LH7FnHkj +pQZ51LlWR0KUbTgOkj3blZNphq7sNw66ZN66FFzWVGOtkR8l4YvfMgNyjS8JbaxC +3QzA5xF8iIkCFQMFED6kWIPNY9HdhPkmTwECSQwP/jVC3qEpWUJ+nOCQ6lQuvm4z +44zWMV08RzQzt8fT443vW1ZJRxljXCQamhQUyK6Zk6479Oc8uKfdSbejyIQOhTVH +LGfrFbQUUNVZW1POlEVrPY6lI3UfscKQB6n0gZ8oR1q6bZk363RtrF8XVLXIMhrA +et0vCoKxe8t0HMe/vFft+9Rg1F2OZVcReK9R/0DqMbK+Hp/ZFq70VPKUOEAM3v/E +5jowfQxeVtZR+m976ilSWkW1fS+hEEhCF2TrtFduc2M8sPyJaRIpHLg3311rRKpS +yt8oLtsDL8tFgCQrhkzbidNIisKWWZvjTnlqS8s0E8f7In+fAaSRPBz53iAxMe0P +SBMF89T+NNdh4aeKUnW6oOgLyRFiPIQ+QWLP/Epoj5pChQEVWLbUA9WJmJNrXUfj +vh4mQtPiU/8F20W1aZfimGN25wncQNynCOVCinvX3nTtiJEimFqHVMZgqYFIdK5t +jNm3txFy78WDbP+grpiWWO/ef2SitGnmb6wMuR5Sc+aqB0pGP7CKpUAfC7eJU+WD +tl5XpktqjVBjn/cCkJa1MjEq8I4sl5fcfs4kmLOmoGjjIRv/ag0RTUcftUhSLmUB +d7lmy3glsRhO/M1AvM++or2nAMlCJMeWsF2TNqFQaWSsbSDaePIssb6FSBwepthV +xJsdRgjntWmjQA+V3StqiQCVAwUTQJ93jBsIDEUnGa81AQEaAQP9E61JHRPRkC2p +GzYtbbtSLoBIcDkkRrmDegGfoLXhEijNxFiTKsdu0LQYz8rfbZkWH9bV3Xb99b0H +CIxDIlZ/hECvncOFJtzMLesHUcSa6LundtCbIFHhS/v36RBHrUEUzNinsNg1J6xb +78T4gS5+qw3VVMKaCvutKR3yEgZotEKJARUDBRNCX9AzRU0ZVEdB/5kBARo7B/0V +RMky44acC07ue1JQacpAu4q0k9oPORUpgrhGNZi+t27CrrvDzcjdRjp4TnyHZj67 +r9jkO+OR/HPSX/Sud33BM+orGWNwlNz0LmL6dXvsk4T5VvVBw6yqffIIVpweYbK3 +ET9XDc7vrsN02G3V/X0LZAJ37QFJZncQYRkGiKM3kQMlepyieFdMVrzxCt7kH+G4 +MAVXKGZnxhnHrd8kijSwW+csxpI2sD+q8zWk4/ild2aywYu6T0UIqytSSgMLRR52 +5pfH0hHswnDlhMoVrS+sPWdvnVS0V/3dsYk1mB8REcOdeVKRo4FH3JHD8Bk60b3I +KGVoilZIspGfRUELriWJiQIcBBABAgAGBQJBfywOAAoJEKrj5s5moURoRQ4QAMI6 +MBt1T+8t0DwXrUxCWUgjGV4Nv3clowsb2n6ur+kyrSCWN1UFeLtPVet4qAKKgiKh +tE/L+QIIf+tHjdOmipX5/QMmAINxOKUz23JowPNxGirKjjjuvbxMQRny0b84YrS5 +OxNJlRqrq2fC/0dy4oc66xOybK7OKAhEKWzuqs4O38V2zSPqFDTyr+D6sFillg1K +1BdFVCLgHWZ6aL9AIAdg24dwe6WAhTOxkPtNiNaqmQ48TtPXe2qxZ6ssztUxP3ub +PtUQCb51StpAkQHzMy4du+3hzdvaDhoDp3zoBVFjlXjghPqoHTbGH9CH1/SxyabM +FPZRk/DsZvtj9yzM2zaWUGuPE2gtsC59TNLRQUDPX9zxIfXNbMkVQOW4Q+nMCSq+ +cQvkgVj3mVHmM0jJ2loe3X2QQeVKqyk419MzQ+dLH6+pd2ClT4Nxj31RKbTGebdF +UZoWUCCeANFj1w2FyxeGp6jH6uYHAXIP9YajoCsKntEhu3hYY0cZ+WKQNcWvARBh +bk5MFVF9Ef0tlDO2ZH18aeSupAKiWShfq5C+SRRuaA7YdCNXSxH/Xqa4sGZ9Odqy +ePzlEkIO4Bs3I44w6VvnS1KcExT1PCrYTWMuQyux85YFBEDzr0pppo4VAypIkdnA +maEIRVj/SVuMJe+vW7rVAf7gFdsEYH4UToGM3WRdiQBGBBARAgAGBQI2treyAAoJ +EBPfD2hdwuxYIP0AoJK8ShF0Im36lJ3FZFNM2rxHXkF9AKC7fkMG1me1Je2GiIe4 +5Tahdoes9IkARgQQEQIABgUCOG/pBQAKCRAXWVXOQ77mqABMAKCgO+LVARom7t/X +mRw4w4TO9IkM9gCgh2URPU7tqECsr+WuVfC/v/7evVWIRgQQEQIABgUCOjcVtAAK +CRDe3YS5RDds3Dz/AJ9UaB2vKuteTC+gm80f028DPbmCegCg3ZM1Rt2WMDS/wHW7 +nQJ/xnyg8PuIRgQQEQIABgUCOjcVuwAKCRDe3YS5RDds3E3+AKC6fAZPreRsdDRv +5/OzcI3ozjadxwCfbEf0ShLygKRRgU9Yo1/XdCiSQ2yIRgQQEQIABgUCOl4tHgAK +CRAjbz4VJTe1UVx0AJ9MQMyjIUgLk2qqYpJGMd6d+C9RIgCdE5M8p4pPDNML2iQU +JlmBiWrQsVqIRgQQEQIABgUCO8wKhAAKCRChUPwthaj3i+wvAJ0a+3dLzfhNVttf +F4yLRaJy8ONqkwCeMVKz7Enbos1EJzrs3UfMdseMhMiIRgQQEQIABgUCO9CTnAAK +CRBVlt0M6b9lPSdNAJ92qffxJFFh4gbf4sg+oF04Ovf0nACaA4fb83aGMDZn/hAw +6OtDiAiCkA+IRgQQEQIABgUCO9CTnwAKCRBVlt0M6b9lPVA7AJ99GXT9WU5004Dz +POGgVgnG2eL2xQCfbVuBzx7xm0XaAVLrmWk8G1Uv0XCIRgQQEQIABgUCPB/kUQAK +CRBudrHI8aOrvQMKAKCgzQs5Z5l33X3yx105EjCgHwFA5ACcDu9No3tcnEIOCHnF +hKz1uh8zIE6JAEYEEBECAAYFAjxqpMoACgkQu+iXKGr9sujpfQCgvJAlUnChTbdR +NOAl6TmteV+kQPoAoIV3lfgP1vxphc7ypid0iCCbRYjYiQBGBBARAgAGBQI8aqUD +AAoJECGRgM3bQqYOhyIAoJme17J7e/2F2o7SvfzBDu2vw6kvAJ9T+oJax4TjAJpl +OlVsEb6rtgUt1okARgQQEQIABgUCPd0rKgAKCRBVkeLAZmTAeF0pAJ9mJT2NZdTN +vmKk0yHnviv1fLUsKgCghZaHV3m2YKtay7GDlZLSR8Ns8B2JAEYEEBECAAYFAj3g +8KkACgkQMuwXWTCiHVVOtQCfTEkzIy3COXq7heHViNOKIxZdHC0An1vCcjM/Nx40 +4IiztPWcf1THtoTLiEYEEBECAAYFAj4r+nYACgkQZjW2wN6IXdNchwCdHVrtTjPS +C4tSP/Oo4UdEMnL9Dc4Anj7ti/5sSrYpqR3k4JfzsLpP1STiiQBGBBARAgAGBQI+ +pFcNAAoJEDGGzQRPCfBVKhMAoKShW6L8xFb+MZOLGrQ57A5eBwBDAKDjhGoyIyHY +Eu3/YomOQOtQx9Ro/4hGBBARAgAGBQJCK63nAAoJEOYbpIkV67mr7DgAn16nUBNs +RZoRy1mbJ03y0P8jTvbQAKDLqMJtFKz+DfRxF0PN3qXxrP8wzYhGBBARAgAGBQJD +mISxAAoJEFQUZr6xLcGbNsAAoMOxM3OY5Z/dXlRHwIMcTvRjM+dwAJ0aVJv5/hKC +PcNGKKcA+3aLoBpLmIhGBBARAgAGBQJDmI2lAAoJEDebzld4aIv1RKQAn1VlfJQ+ +Zn/aGX97fIZvgVRi9805AJ93TGM7Omr9CCZHOnLZz4fTPbLgdYhGBBARAgAGBQJI +P+UcAAoJEJ6pE3mBTTdr0qYAn19RVF2F9/CPFcghZTod0cM3cAkFAJ9dEIvqwgIk +CRw6nhNJaFie+KxcLohGBBIRAgAGBQJAWIbAAAoJEMiB3UdK56tHb7oAoIwZQxqR +cFTOZ3mNiKSv1KzMVc2CAKCHXNW5B0B8OJhNTsBTHP8VYWFxxohGBBIRAgAGBQJA +YtEkAAoJECbcEWqoXz32yBQAnRH/bkM074aA8IhuSm258MSdFQlCAJ9Wgjdx3vrI +jkaSM3E21bR8kGGVRIhGBBMRAgAGBQI9DyzZAAoJEEq61lpJwpzCdLsAoLHgWIjQ +8euCIIh4k2FDUFtgMCp9AKDUY2SM/+HMgV4YYDkT4vpSLkpnFIhGBBMRAgAGBQI9 +pELwAAoJEIvYLm8wuUtcB6sAoJoSfvcCiMcItoVRsc1aR0jjkqXCAJ94bp/CcLS7 +WZsbSxr4G5bMWCoja4hGBBMRAgAGBQI93REdAAoJEEzETQAR34fpK7kAnjvm87Om +dDAOUcHCmgsIXVYibRH0AJ4kynpr2eFEdBHGiYNnpRh3qK5qxYhGBBMRAgAGBQI+ +U5aKAAoJENjDuVLpGrm54p4An3Gb/2j4EXeKrzFjs59827BqowhnAJ0RVJdZEJmb +OmMFpwBo7LhD9gBVLYhGBBMRAgAGBQI/egclAAoJEBhZ0B9ne6HsM+AAni/tnDZr +Zwl1uualOOVJnPw75ZUmAJ9Mm5xujIHrcOvarJ2AfJNq8Wt1ZIhGBBMRAgAGBQI/ +wcWSAAoJEDYVIteCq3vRFtsAoOnFKKYO7VRxGVOD0QiLR2LcBrAOAJ4vl4jWkNNB +zjEby0kt0nqm9WO45YhGBBMRAgAGBQJABH++AAoJEIHC9+viE7aSlEQAn0jJOYsh +0BaCzK7uCiHwV4KvMiZqAJ9fru1ModJdUTN/16dRG0imAJKhCIhGBBMRAgAGBQJA +C1JDAAoJEGtw7Nldw/RzI4IAn1xUC9quEoyAbYUvgj0OaEhIlccvAKC26LisG96K +wErSP1Tg+ixXxSkc3IhGBBMRAgAGBQJA9TxWAAoJEF5UgINlDViCpzMAni3HC2SC +Xda/KKfpWxac/RdGUzJ5AJ0QC3u11GHeAD4JrM0pLKTBLUxMlYhGBBMRAgAGBQJB +WMVYAAoJEObKgOUdJeNXa0QAoJlmX4rq4joxNtmA8PHgknGmUug9AJ9JFa3n6SA6 +O/SVUex+5sS2Ol00rohGBBMRAgAGBQJBjuccAAoJEFuWgBDgT5qJCewAn3x8pxFw +1xYeOiu3aEwprGZWc2tiAJ0VX1RQrs2NLSZVATLWg5x8xzt9FYhJBDARAgAJBQI+ +DTRdAh0AAAoJEIvYLm8wuUtcIYgAnjJSBE2O1tJTiSrPIW0Jb+kh/xsXAJ9E+4NA +rWqdnQFdM58AzjEzlLeV9rQZTWFyayBDb3ggPG1hcmtAdWt3ZWIuY29tPokAlQMF +EDMRY/LurUz9SaVj2QEB83kD/jdJ0A2z81nqi7LEC8oRZI8Oc2QcjetI/KdufuiR +Ku0V4JDdXB7QHR+SzMEQBn3NufH+z/UsqeuJR/LOF1mEl+Rl/GAPDLqzqyZqBhay +bP8sVp4PMbcSPbRVJ7qCGx6pw+xwkvTo9SDXcskLgsWWBhwIMR4aXzU2bft97TEh +SGU0iQA/AwUQM9vDiGfM5V5WR8xwEQI3uQCg3I89jtujpNviFZQgARGzVf6Eu1MA +n1WN+fCGzkxNwr/2K51xZ5h8PWp8iQA/AwUQOspyZ/1viMYh0KcbEQKIIwCgoRWV +UPW16urENfzQ8T3OPRr2xoMAoP09unnhIUsA/yPH5EgbXGrS/9PdiQIVAwUQPqRY +gs1j0d2E+SZPAQK8Cg//WwGDf4tsPUyuZ+Lb9i0zwVoVjC792tIyvh9Q+shxna4l +m9k2ddmzErvSeXyRe3A4ct8sgBZh1f0bXUQk2x3X0knri762rFpeQ3lvUPG0g/Ok +ZD2AQLrHl/u93Hhm5ojpyZMU8amB4iqPwVgX3VuMLep46RfzAFQ1rf4JMdmvh2EQ +cHD/80IE0Cazh0s4hvejrFwwhiUVKZRVZlcZ6m4uCulQZzD6T7eYHfU8ijXIiMqo +eu/glQjg2YUoe55E4GS8G0I6ALKChE7GZ7PpTXuHoTMLdcSfLQQUfLaptIUsDQyS +EJM8euhYtpn+G9xnaX5dMeDSZDNzIQ18x/qgLfqClr1dVjirjknwfdyyEzgvhX+H +UpMhfkSRN5qd5rQncp5GyqWT74luilto7i6m8drmNnlFKnrzal3mXvH+/QLXwMpM +BQY8tvLWCWL5nmzvRfXjvd29/CeP7x9c2s6eMac0oFV+Ib8/Qex4FRq9GF4fH8lP +WsxZ6jPHuH4bdMDPrtz8TJFeEPCy4P/pKfWCioJGBm5NRdltNRTA61PgMTeVUK7G +dwd066ywo38Hf6YITohU+BSAtPrwRuq6wNCMt52UN3+vAsDkmxBIaW/xK9j0r+LQ +GYCTMnUSv6f0jh+BHZz8xwkdoptU6QGupVm4FbOD44cROqyelIbJB74+mdGm5imJ +AJUDBTA//s647q1M/UmlY9kBAfuJBACdJkVfhC2TlOtNvj3CNKKHnPCSg+g84kTh +9kwKPoPEWoiEHItk/BqSJY7+vdy26eUDWLsr4OzrWvWOYiuKFReSkrk7uL7mPieJ +GYNCYOGO+LIA/8q2mMkCBF86BY54DxF3KMZ5X8LpvrjgxY+iT4ty2OoF3cSLiylp +yt/DwQ59QokCHAQQAQIABgUCQX8sFQAKCRCq4+bOZqFEaNdNEAChi7q/CjEDxowk +UXw6EpsrMlfs2QnbmXRZBDzrzhXuYas3sYkvhJl9PTl8KKBQzk31qcsn8oWc4pOh +ozwwoVj6kXQQdrVOObhxLKcp/wh4L2giWcMzNB9uBbIUTp7ak1wIlnwq74kvyuRH +gMxYBJ3reMKMcEMbHfBVoS99Br1GGXbBpBKtbtQODyJWB22VHJylTCsAXKQ5ktL4 +aPbStyJ9NFBvs/o214O/JNGtR0ySAOmuN8ytBwfRW1gb8PrpwSU8v6j7OU8Hapk+ +325A1/o3Acbram8bbL+1DQ1KXkkwvK627apjqBEV6wMCouznNu6ERpapZWVlE+Mt +MgRKE3QoBYitvPz+mbqd5ttznLkWaN1uupMAYXfpNBFXRKlSXatOzRpFgwf8KJE2 +3d0YI7NmzQKhWyfwQ+0hNHCUnMfuQSnpH8wGBjNH+AFo0sLe+EyTyqa8++eRsTqj +ZRscXezdl2PuPOdKxY9VBYLx1TNcorgceajF7a0faViuQaR6IDiMYpoYqzXDGuMy +aAlUELzLUPUmoGrTJkK0ltPL+ZGGAk/BC5DhD9SbxT3oPgHEZkJQZwsVN4dVacC+ +T/uZkImspNW2vf6nZ/tGtvUUDTbskRdUCaLZ5xefnz+gFiLGI31DU9OdxeZbetVt +f6mZNtToVzXnyq+PIFbT3xqNxHwRLIhGBBARAgAGBQI6NxW7AAoJEN7dhLlEN2zc +H1IAn28uZU7W7ipawo7DoSabb1FkZRefAJ42HaWNrSqcEgBDYfXZvjStCH/fZ4hG +BBARAgAGBQI6Xi0mAAoJECNvPhUlN7VRZLIAmgPOIx8kd25qU4kpz4yOc0j88XDl +AJ4l9DGjandMt1qBGzGvlDJGO2kTNohGBBARAgAGBQI70JOfAAoJEFWW3Qzpv2U9 +9k8An0LioH7vUEx2iYnE0bIQVBWPvijKAJ9S+N7/BbX+E0QbGSWzuVsEdwQ5+YkA +RgQQEQIABgUCPd0q9AAKCRBVkeLAZmTAeKSUAJ9+5U7gj4AkDWNTQbi0JCExB4x0 +qwCfWqNJjzdo6lHBzf4rvkZdEQ2f8paJAEYEEBECAAYFAj3hcQIACgkQMuwXWTCi +HVWMbgCg/33EcsjhDPVl+ediUO2TuJ2MoYwAoNuZqoMB2EJTWLkq14ha6zkM1X8D +iQBGBBARAgAGBQI+pFfaAAoJEDGGzQRPCfBVc1UAoNXysAgyr0VizQx9vxK8UiY0 +PjiXAKCbX62nB/F+RMvyRRrZ55P+F+xSwohGBBARAgAGBQJCK63nAAoJEOYbpIkV +67mr554AoKo+Q/nsymocXLStgtQC+7AQZymxAJ9Jd5iHZf4R3hVDl5phQH7IyuuW +34hGBBIRAgAGBQJAWIbFAAoJEMiB3UdK56tH20gAoIu80L4lRxsuMc3Kl1aRjTP6 +O4BmAJ9X4sdddtYTkk+Zh+xEA3igOWX0XohGBBMRAgAGBQI9DyzcAAoJEEq61lpJ +wpzCbCoAoMC94ZeKg1Tl12jD90iistw2IJRzAKCHfR2PAJYxjWzJvWc7PPT1lj9Z +D4hGBBMRAgAGBQI93RElAAoJEEzETQAR34fpgOUAniSAl9TMx7RA2l68XRjJm4hn +c6nrAJ459a49JmI/JfaqGI542+1o89/1aohGBBMRAgAGBQI+U5aSAAoJENjDuVLp +Grm57l4AoIoEEnqZZxBfh+ASmqwJ00iAg1KVAJ9Z8jzAKJ80r46e72IoSUws5IB/ +DYhGBBMRAgAGBQI/egclAAoJEBhZ0B9ne6HsPhIAn0iiaKPZzu2Gixl4Kro8l30d +D+MeAJ9YjO/fjFQ9DUqpd0ZxdevGZofvCIhGBBMRAgAGBQI/wcWSAAoJEDYVIteC +q3vR77AAniRLS5k06FMwFf8zhjJlRjAwbcdjAJ4gJxs1LSLVzzBlmUU4QrYDLham +ZIhGBBMRAgAGBQJABH++AAoJEIHC9+viE7aSm5kAnjIDS7K9MrIrOElA+lwnDsOo +GWZAAJwJudIPx1JBZwxijdDxcmid7k7PSYhGBBMRAgAGBQJAC1JDAAoJEGtw7Nld +w/RzeqMAn2xXXajj2GxDDMNZqkNzBjZME1nhAJ91PzI0flS5S7bSUpzSmjIDW29Z +RrQZTWFyayBDb3ggPG1qY0BhcGFjaGUub3JnPokAlQMFEDnhoc/urUz9SaVj2QEB +J/UEALArEG/mixNmkkiIqx2Kb8/Ysc61T3U17yTFN2vvxDzpwdLPxXQTED8VYqQ4 ++AQcAidxci00fS3eka1RsBxi5PzfRjs4mAtl0RazNBxuynvaeUrRx5npIVET+i4O +VyfJqKi7byXgkaW22qLTzI7otxfexAPzANpCGhSgJ73CD95qiQA/AwUQOspycv1v +iMYh0KcbEQIywwCg8ZGLF8wA0B3ArQ7AWNrIwfQZXQ8AniQ/tTGVHcORT/nBM5l0 +Yv/NFEcmiQCVAwUQOstTJRsIDEUnGa81AQHdeAP/Yz1flyCqMi2bi8f0KOQAQ699 +iHQqMNPL39YDSZUNxe9X1FkYwydaZIqDXINmngDyVYRCSTpXFkQzBbU9O2wWU4DI +RBPZCJFC1Lq0VOPxf1pnprQ95gXk/JLbSG8nNheluiCR6YEW1QOax9dOhKg7pTPU +Tep5NhggwHTWkiZe92mJAhUDBRA+pFiDzWPR3YT5Jk8BAtE/D/9xk6zix7wK3TeP +Lpmp/pXX/n3GIWhE6AePnSpX80CIfcYRNXwCWVVs9sQlcuOC3iHT807mTAnupg/u +q7O+2jwAy/OoFGL5ylZRPaJafLCwRPdquJvm3b5CJ9cYCiJ2prqlh2/7gQpSe3DL +r4pLKoobRVrIma3H06OmXZyYS3cIJmDEnmIqdCnAbfW1G59C92yR8YMjPimGa3yJ +MKONtxPdhrjKMZjHJEH1WrX/7TobPl1h8LszOuFfKGYUiQD6qPaiCN5XRl7X3e/H +stY7vxs8drtvyeSg35HApn/AJw286ei0hpbOAWsxXYePx5RVZVwwAvgniN8HpheS +yEpj9L6IFYZUY88x7yu9upXCS+Jgiu/vlXXQuVk3XaorStNeivivjIifq2+QP/Zm +JbHaCrmr1RnTWM9A7dotnGEU06PXd9u3wTpDbp3wffhp79VqGzuXr0slIOHjJgG/ +N4De9s3NT7AAldckJyBom37rGacYirc/p/CjvUyXjbI6HsMuc2GfQeMzD7QejrW4 +4PXAGnxm3KFwi4CjJNk1JMx5MviYaBi6GseUGTrNb3dSCD8+RNLGrQfFY1+rjqWG ++pjcDmxqdo3Hfyst+ui7PrECD9E0fNYE5pQB6jMiJ4YqTf+GVMTCa8nJKII4kGuK +dk3MKDUfyqAIMh+u7u69SfCJa/wxv4kBFQMFE0Jf0DtFTRlUR0H/mQEBA3cH+wZG +sQDeor3w9X0ceBYRTV68O87rsn0GtdX2CUCmNmd5kTMzKcIn77ra91gvfGSN91EF +5EWs8+sg7gcFCiCTbeKriOjXeL+c47X+cEjoa1cLFMJeXnOyhL7oC2KYSt2yLStN +uMomfNzhoifUzlI5VPE7eS9e65vSc+IpCToZBmHZHGseF5QS8ITDzCjqkyVObgSe +j0C7fcB1tpyLnKlyOiij5R4AZw2f+8BMEcGSWyzQBCSBq175dOduEReTkv92e5rp +UtcWd65ZsziXD51JY8qykJzvyZziTE42jwaLAPi7LRBsqi/xX+1oPcpBuWxoIDJL +1LNWtPCcqG7Xo9xAoFCJAhwEEAECAAYFAkF/LBgACgkQquPmzmahRGiFKA//fkXV +fkSyx/Ft30SvBmByA+6H9+sy5GXOgQe2dC0zBPTww0UX8/0lJ4k1Ei2KwcWW8kZu +hWm8thgRsCmZwtrw6WVV3URRh3JMX27xm4EhVKMvC+xqkCY5v7poMS0HFGvCfVk8 +RNxMJQMN0iLKKOaU0/1rMTzNnqA+Cif0laeBoGNKNF9OD69vfEaf/3U3t2SEiDQY +VjqVuqU0+XVv4jXBnlwtY1XY67OWyIcLn60IkbAAVfsSW5s6foFaBfXDtMvXWelR +gvSn1LQ7/QVolUS7wLgbkqoaQkJQhEM8rI10fBACMIMhKmJ/1DvpXZkUG1pSMNRH +smn0T8GMZG9nL13yOfahbhJrmBsY6vHyU/m+6+KIOd02i/jMPOPJ3pPQvlQ90K7p +0ZephIPJtYYHlVM5RXCwazXsm5rlNB5LrUY1Cje++VdbxlkvHN59CInKFkYBEWDm +hfSdzUEwqPYdgrart/xey7Y+w8SAkcbd65ef9pKI8WTB5UwkrgUyFUg8Q9pv/my4 +D29HexTQoWXip5Jg6ohACzFkACr/qVLwWdHSKI3SKaH16P0T99B1Fep6t3hY6v9I +Eh71gl6Saca3ag5zw+XyJnt7ntLOYf/l625/MTFFWcT8Wc2mXZ9bOszfZNxYhoLF +xt4fs21jq4DyiAPsWml6caHYJkhAa9i57FjsYbWIRgQQEQIABgUCO9CTnwAKCRBV +lt0M6b9lPV0GAJsHzqlmk8CRTdG8//Ty5cSUTtCfmQCgh1DC9y9jdcqkdAl0ztgu +NHw47DKIRgQQEQIABgUCPB/kZQAKCRBudrHI8aOrvYRhAJ9/pPQ+0ztsbMg846Zv +IjTy+wcAdACfYq5t8HIDupDyzKs9Wnb61S+blbeIRgQQEQIABgUCPFF21QAKCRCh +UPwthaj3i/d9AKDuHK4d07k7T27iXNWG6EsdPoZZQACg6e5+mTFgZHFG9odW3gcn +tfazsc+JAEYEEBECAAYFAjxqpM0ACgkQu+iXKGr9suh4ogCcDqexb2yOkYbOIy7T +u5a8hhV+pI8AoKJwbmokFHTc/IqC68yBuaVoF9TDiQBGBBARAgAGBQI8aqUQAAoJ +ECGRgM3bQqYObkIAnit3UaYBa0kRSiZk8L0rkjXdpL33AJ4kccIPIHN/D3OWbXiL +rkNSmmaQH4kARgQQEQIABgUCPd0rHwAKCRBVkeLAZmTAeAXVAKDMuq+O1UGD4XcI +Ndva1TbgtTo6lwCdE8Aym++ehBmhI+8TYRy+yIRkbOmJAEYEEBECAAYFAj3g8L4A +CgkQMuwXWTCiHVWgTgCgx6iYyMaR2nsbkU2DaI7AUhfwDcEAniOSsZOIpFfyOSs/ +pPiXCpWlRXsviEYEEBECAAYFAj4r+n0ACgkQZjW2wN6IXdOJSwCfRv0IhvT1jMOA +yXJGN0xPZqkjUXIAn0TV92IVHMyRSCCfjPGUhZIOERx/iQBGBBARAgAGBQI+pFcN +AAoJEDGGzQRPCfBVnLQAn37Yfz7gDbt4iLiybCWRbyVmmYiXAKC5EUQ4qUkNrI23 +bBj+/57ppshFe4hGBBARAgAGBQJCK63nAAoJEOYbpIkV67mr6SgAoLf6RZAkMNg5 +BCi4WMRnn62O/S08AJkBjrIHgkaCM0BtDNMkZXd0dbwSwIhGBBARAgAGBQJDmISx +AAoJEFQUZr6xLcGb6p4AoIr8/C7/tVGYW5xewnXZ1TE+xuLlAJ4s/AO0jwfQfFJj +kxvE2hPKM3Zk94hGBBARAgAGBQJDmI2lAAoJEDebzld4aIv1//UAoNvPQ6cJDYz5 +YLrYwUL1qq6+P7WWAJ9EBXP5EWqKp5iRJcqtKqq6gNZUDYhGBBARAgAGBQJIP+Uc +AAoJEJ6pE3mBTTdrCM8AniNzwdK0egOyNW9YEVpKozeykQxpAJ97VliYhhnXCO24 +tKJAcnPRVmqdEohGBBIRAgAGBQJAWIbFAAoJEMiB3UdK56tHySkAn1dmTX67d5OP +JFW2633X0rQ9rswsAJ9g+XOCnaNUmG57GK+WmbExEpPDOIhGBBIRAgAGBQJAYtEk +AAoJECbcEWqoXz32tooAmwW+pG8Ctz4ENRRk1MnDrSTSK9XlAJ4yJUSa/4RCFF0H +E4KB0uD9RN7YcIhGBBMRAgAGBQI9DyzcAAoJEEq61lpJwpzCP+MAoMdNBnr7sjBq +H0op6s+4cLkfGyzQAJ92C1bBq+3q8n152E+fsf7t2PUubYhGBBMRAgAGBQI9pELy +AAoJEIvYLm8wuUtcMRMAn2qBlINeKeWKrkTMITDn3EcidWKwAJ9aEyBHy7UGTevr +9e4BUdmK/r1gk4hGBBMRAgAGBQI93RAXAAoJEFz9N/rMeMiTlLAAnjBVm8cqj672 +t7grsUZJ30Urgi+NAKDyJ2cDfXsLMUfpz2WcTrovxHwT8IhGBBMRAgAGBQI93REl +AAoJEEzETQAR34fp3HoAnA2860a7hYXqbR6s9au8ZSJYljYrAJ9uTk/NEGBCbMTg +kwDbFoUkee+AqYhGBBMRAgAGBQI+U5aSAAoJENjDuVLpGrm5wo0AnRROvia4b1ZO +EEJSV5alEC/ZnSQCAJ4nz4q0wi5eLXfV2dtwx+jz/V89RIhGBBMRAgAGBQI/egcl +AAoJEBhZ0B9ne6Hs3yQAn0+aZiFvTJhmqkqUNrarb2E9L4I2AJ9PGTSke5P6j9Kh +SmHh0eNdm4/bbIhGBBMRAgAGBQI/wcWSAAoJEDYVIteCq3vROGkAn0LCooDX1yq6 +Z81HxIknF5Ji1JMTAJwLlOYkw65hM6QuM7Se1QZdcscN/ohGBBMRAgAGBQJABH++ +AAoJEIHC9+viE7aSZ/sAnRzgSosC9+V6lgHIRfOQ1AWCutBjAJwJHHgIHbOq2xVK +HD5SLcmpEkWSCohGBBMRAgAGBQJAC1JDAAoJEGtw7Nldw/RzXnIAoP3Qq84Yd0pB +GY1S+iAghKLvsgx/AJ96bQF4+XyfkEgXanyvdXy9CHKQr4hGBBMRAgAGBQJA9TxX +AAoJEF5UgINlDViCb1gAoK+K2DOOgKERH3bdorIy/WIawhNPAJ9R4s/neXOT82fz ++9yv4SNk+xzsQohGBBMRAgAGBQJBWMVZAAoJEObKgOUdJeNX8/MAn2BzGi5+0awo +L9XdNbl/+RxO2CKkAJ9AhydDWW8sFVY2thmpIfIG6H4NEIhGBBMRAgAGBQJBjucc +AAoJEFuWgBDgT5qJeQwAn2/H2/w16IU7s8903nWqlxqSsog0AJ9sm96+wHrh7TgH +cQ+KlBia+nS+hIhJBDARAgAJBQI+DTRdAh0AAAoJEIvYLm8wuUtcnqgAn2kYIHE9 +tlar53PWKGdMd7LG++xcAJ9cTxMVNTvDED1wuA0zc3OEozNpSLQZTWFyayBDb3gg +PG1qY0ByZWRoYXQuY29tPokAlQMFEDnhofnurUz9SaVj2QEBJxcD/017e1bFJGNc +ISL2dIvINhnXnzHxL6B66exG+8+1pFkR8e/EvgEvXHMs2+AqDfUxkb1PNSoq/u/m +/VpJGEWoObuSkiwiqUYrmXcJGElUQyHMLDKSLQQhG4PkeSp0T2yX+Fk+5F3vIOdK +53jsD21zXqB5QD7TjCLSGkU+BiLuLGX6iQA/AwUQOspyeP1viMYh0KcbEQLMNwCg +qnAhaObs1O1xKJvNh571+5Ejw7QAniKjp8xzGwK6ZgwHJJy8XJrI6dieiQIVAwUQ +PqRYgs1j0d2E+SZPAQL6Cg//SJ5zFcNZwmpsqLNopZYa0/L4b3gRN0rsHMBD5BaB +GF7m05bS7LCZhTt9tNn5m1h0Az7a+NcGFAfKNpoKq1OTzCb2KH2JGYXri2upgoEb +ZS0OUr5ZR3HIwx3ku7wGl7pVVjXBpKXl85JnEXgoKOlm6uIwqpji2uQfpYX8MMio +z74sda/FBU9Tzi1zbsYu0WramkqKwwVWdGW7BxrBHYsO2Z242+M6VQHbekuT28cb +VIJ1Xd0vP/dF3fzQcibs6+W/LRSDyb5Z5UbbWLs0MlX2oEFkDQx5A6meEhB99jM9 +/WbHHifcatg59vHWnNPkkuAJTr7wpi6LPKJdtmkuYg8IGq6n7FjhhjCtAvwdgWeC ++PAjpkAzsGACj/u3TCSBt8pp0mifY0DReF6pLcUfZpmQSMwtu3ymCvsWkZ5qTdPd +mc26A9iWnTjpNWNN3l92YFvWrHbA423crDNBL3yH/OAGNdLGcJ/f1rW3xzt/oRZ6 +0Y5sVzt/jUIf1SgK4Sw56jH/XaoS65Il2Ll3eAG2O6ULCg08krEkTEUhpG8OKnmN +zrmyPuyc/8RqTmML2WmpyJmwyR6y1n4ruG1QDhuUqVeDbuvMjoUyVGQnxfOGMVyZ +0BrNs2/Y5uM0FPUHF6kTjPwuWranlBleVH+dRzMxo6d493LLYB2NGPKLSa6ezpfS +YLOJAJUDBRNAn3eRGwgMRScZrzUBAVimA/0ccmqUiNBWDF8AeNK6P/P6sFZ+54Fz +/WMyij3gJVpWIyxiVFxd98H13QpL0rJTsFAbHhWeOeAuTu7BtRGHwbXmB0Qhw3mm +7UwQwc1lixWvPTX2uIiiWfFvinxIwd+7VA7Lz9TCjFvLwp964Bq6GCXIyMSpmZfd +4ClAHr4csOGJxIkBFQMFE0Jf0DtFTRlUR0H/mQEBgDQH/2gLOGumxjRRASPT1DRI +xIZp5Fp1tABWgEvZj+exb+13uwOr3X/Lv3M0mo8JVlUVMXbsBVtMtq4kLj/Y0xim +htFdb7nv7xJwrO9A4q6Els46Zr6mh9eRBFl9AxGixAzhjTvrdfM/RDEateA2+RuI +YmmepkHnvvEYZ0C5q5pqvo/og5hxdvJHV05URXXxbF10NmK0K/aZ27xSv5A2MLFr +K7Xo0qn2pIO99+dH7tZBQAlJJ0u3U2IAEX6dW7OYR1p1cajhkJx+6I32bWixF/kU +3xflXk5UFKm6PVPMQPdIvSS5LnzUSN2iqgHqGllr4CxeTPP3IyJlBJ0jcYa9EP8G +wUSJAhwEEAECAAYFAkF/LAUACgkQquPmzmahRGhwHg/8CHAOtHqWKHhqXsWlkUPX +D8IXHdbUw/WRdw4ZXV4wK0pehrzzLFhLaLDd3NBnMe9LeH0F/YARg89Rn4f2bIxw +w+HprCFLcUgiomziQn/hSyAnwztc+r6p6qrEf4dLGMN1WXpx+6OeGLG51qMatbWD +kdtDjQ8PIWO5ifB6eb5oj+HiNoJ62d+exuto3AIylmrq+EvzCdVyqmsYHxjHhUER +AsRyzjxP9o9Kdv7KE+S3WCxTcdXdfatP1WAd5Du5WbJMUbX8u/B/458ap/l87Uxd +Y1nRXqVrwEhT/vrM1YPxymcf3vBbgjZTajsddVwDzRLRtmYq2vnBSinpDt6OdLkF +EHoizFdEf80wowDtBh/EG51NdF5c+SFLce3WNgHfgqYSe8vrJXhb9mHJpLw3zLZj +BiPbiS4xLsNWIGla8AUnhwZCgxxzTjKVZ6nRLp1IbvC40ZMhfGObWLCGH4wOt0tt +ex/EQet9ZUY8NTsy9ZSaJIEykIImXQYpUq1+l4BVNaB5+YdVbf6kIPz/CWgDKY9l +918dw2O/t5qpWB+NmyqQH6/jEelwOaaUhvu07X86Uw0GZKKTVunkzB00j6I2MEIB +YjlSIanFPfflxKZC2+7dFh4qfUMgGfb+JOSBqBdHuPtksBna8K28CI3h7/Acb2+9 +RIRbn6/GZyd6yj4XPp3TR6uIRgQQEQIABgUCO8wKigAKCRChUPwthaj3i4gqAKC6 +7ZkCrpAZWQKPJdwTw6zn6GsyVwCfQyoy5lGIuGBu0je6You3NEakk36IRgQQEQIA +BgUCO9CTnwAKCRBVlt0M6b9lPaepAJ95aOucDKsv12xvkYHiZa0EJNL+bQCfXsy1 +VOaFbX5x+ibwGRb4vLLnUYaIRgQQEQIABgUCPB/kZgAKCRBudrHI8aOrvZfSAJ9n +Um/M6Ou0o4uDyNKOL351kFsnmACgw9lilXurgbdtBaAZ48jLqZfpwxOJAEYEEBEC +AAYFAjxqpM0ACgkQu+iXKGr9sujtBwCg31cMbdi4Ss+TTJEv67WyP3QhESEAnjHw +1kOrI07bSP408fAEqueiGTeZiQBGBBARAgAGBQI8aqUQAAoJECGRgM3bQqYOd7gA +njjBoLwHHHraqbH0WwmWjbUxaD4XAJ93AQPTJjb6QIqCsPdVBVK41zu9IYkARgQQ +EQIABgUCPd0rFAAKCRBVkeLAZmTAeO8UAKDIqfxLevuzssGdhFEba0NPtU0NNgCg +poqPDTAvdGsf4ZIO9aOeMbzertOJAEYEEBECAAYFAj3g8MUACgkQMuwXWTCiHVVB +BQCfetJylp/yjm8BQo5Sa0SBe2Xu1tsAn37Q+GA59Ayb/apg2B57n+0wWQICiEYE +EBECAAYFAj4r+n0ACgkQZjW2wN6IXdPS4ACcD2SWANWId+IS+gxm8+jtgoxYDyIA +oLpoGnL5yrUX9V5lb5dTiQLBW7mQiQBGBBARAgAGBQI+pFcNAAoJEDGGzQRPCfBV +KN4AnikRahLcHkIHIaU4rRxjNy3BQjVlAKDJ/eUong1iNx8DJ76WIRp7MtVjBYhG +BBARAgAGBQJCK63iAAoJEOYbpIkV67mr/xcAniZFpL6HbGWe0VUYvnLanDIBgR95 +AJ9x5Dm+bCcIUkfqxi7ZpBkrwXtaaYhGBBARAgAGBQJDmISvAAoJEFQUZr6xLcGb +1UsAmQEEssiSDbFtiWQu0OM+rl0ztsmnAJ4kY2ondUEZWsdct3QS8ZE0hpLBSIhG +BBARAgAGBQJDmI2YAAoJEDebzld4aIv1ye4AnAg8HsS7zwUF+TZUgeF/442ACHmA +AJsEV9gKLJeLtiPiJN2+ikcd81845IhGBBARAgAGBQJIP+UWAAoJEJ6pE3mBTTdr +zT8An3yF7p8M592smPGc384BBPRFaf8wAJ0c8/HwopOQw8MgGs4aEfGe0d/3CYhG +BBIRAgAGBQJAWIbFAAoJEMiB3UdK56tHLKEAn1wokVVNh7P8J/+NDQD70rHwWm23 +AKCfPxSRh2PytUAg2WKBmsva4xPTQ4hGBBIRAgAGBQJAYtEeAAoJECbcEWqoXz32 +UBIAn07wew+6lzSTaeX3ZR4/x2oLFoCxAJ4uLgHVuC4JifULAHE0fmZnl/iuHIhG +BBMRAgAGBQI9DyzdAAoJEEq61lpJwpzC6T8An2TMEEKSqg5gbrA4qvFSYt2K+L2Y +AJwLn+ijrxMydaKSlxY1k3xJVUNdGYhGBBMRAgAGBQI9pELyAAoJEIvYLm8wuUtc +2CkAoJ28MIz2gmDGXQgk09DwLtT3ueF0AKCi2E5JRcmmGpMBJwkc7ZdDzs0/I4hG +BBMRAgAGBQI93RElAAoJEEzETQAR34fpwH4AnR7/FFpwfa9JvI2KGKlTUheKuZDu +AJ43qmr+w2y+NseyMqCdSsyWCETfFYhGBBMRAgAGBQI+U5aSAAoJENjDuVLpGrm5 +cVYAmwVR1P1T8R+iVKS2rpgZ9qfZ6JbRAJ46neZUV8300hVOsNbHF0LAdAVRVohG +BBMRAgAGBQI+02l5AAoJELe3RcLFV1VCLjgAn2/Zf5VI/cYJhxK+oedWkilvxfGF +AKCCG/BqSo2m2wmj3kWLh0ExAbPT0ohGBBMRAgAGBQI/egcdAAoJEBhZ0B9ne6Hs +R58AoICX/kZv7fIgkL9cwb2KXszHR/0aAJ0foJT25uZSv+3vfqVr6MKx1VctGohG +BBMRAgAGBQI/wcWPAAoJEDYVIteCq3vRQywAn1X65SzANKEQS0Rw+kQUPDNLCVXB +AKDObzsyYC++VungE1WYoiW6XplXPIhGBBMRAgAGBQJABH+2AAoJEIHC9+viE7aS +aBkAnjiMq5SsQWE1TFCkRhMDu3sLukdSAKCFhl2WBiOhZ8nhlZglIgYwRMo+LYhG +BBMRAgAGBQJAC1I7AAoJEGtw7Nldw/RzC+4An1jgbx5Td3XjH84CgJafCoGmqUIk +AKCphv6vi5DuEG8iy7H4bnUD+VJqt4hGBBMRAgAGBQJA9TxUAAoJEF5UgINlDViC +GE8AoL9TKZFL9L+hF0i86Oovm9dkzjKyAJ9xsCZ2nnIn2cYoFcf7nUCQgLM0rohG +BBMRAgAGBQJBWMVWAAoJEObKgOUdJeNXxDMAnRZlZgT4gORKzP6eGASoOVdmY6aO +AJ9xoDnTO6cKtWjwYTitFbszTOD7xYhGBBMRAgAGBQJBjucXAAoJEFuWgBDgT5qJ +/uAAn3fzRuRD0CyOmC7FlhvjEtyEM3a+AKCUl1Sm1qWIvc+chF9zRcnW3TuxlYhJ +BDARAgAJBQI+DTRdAh0AAAoJEIvYLm8wuUtce+wAoKnnM7ZQlnk6Jt9nt4cttNHo +UrreAJ9zaKwZWP2exTw20WO2hn3DqQQAbrQnVGhhd3RlIEZyZWVtYWlsIE1lbWJl +ciA8bWFya0B1a3dlYi5jb20+iQCVAwUQNGFfj5dgIMVmPTs/AQH1SQP+Ps74i6sE +/HubCUY4Ww8dseRWarz+FJyFDe7rttHTEBjESFsaIbb22UFYIt/jSS3HXpi11v72 +9VNgBl2oNzboiP6Pe4F4kNMN/0y/maENtRQz1spfxNdT2RY3YQ5P7boNNm+GNH84 +vLc8gpDvlxh52he8lu3JRVIizxJ9nZrUVgqJAEYEEBECAAYFAj3dKukACgkQVZHi +wGZkwHik2ACgkYCcgp4vbyZejRyqhHylEr06aV8An22CfdklGu38/U9tbXA2C+nY +3VrjtgAAABdNYXJrIENveCA8bWFya0Bhd2UuY29tPokAlQMFEDQvYTHurUz9SaVj +2QEB/hMD/ix6pAa+4ZgFQNRAc7fC+I4uGWvXoI8N8wtgiJi//8Kc1vjtvTylLPKV +BDsy1ihsbVOjD3NUEkH95TNI3QhVeCwJPl2e3GgFl253hj8Jai9snHj75pXjQXq0 +NxQ/JRSrEAqrFM7+yRLPs7zDwsMoc2Ox5emq4joVa3syZUEwW7LxiQEVAwUQNLEL +tdZUWxzPwQD1AQFWIQf/RtyM8Rw01RdQXH5fA2jLaQlwD/VG1dlxqAcLKVQIKR77 +iBPdfcrWLyexGgQmltuVTGs5U1XPf7dff21NP79aglvD9hll82L5wZQybNpy2o6/ +66EPp4OWF1/WG7JhuCRfy53H983ERZnqGD4YeBafLHI9oGAixZ9G/+cFsxPde3Lv +7Ij/1HwpeNAHJQibBkpdq29Kye/+PHgE0HTMSapYXN/YVTCpEFzE46YnD/BjzZ/E +1UClvcsWZVoqPR46HARVQNu+MfoR/WSBAOj65Dt5oBZTcLoQ7TyDcd4gvLhdzLUo ++kboGTjtHLvesaAWKLSWtKY6G8Iy7R5+Ms0helLFaIg/AwUQNNhrm1F+HqlP3KvB +EQIFGwCgjvdd8FwQqogX0AU+RepKEWUUb20An3yfmNeIxRMfnHwnQyFI4w9JeP3Y +iD8DBRA6ynJX/W+IxiHQpxsRAjd/AKCSXqSmTnrzlnpgYwMESQiKQxfOywCeNuUy +0q65a+C/ayC7t6F6ih9+bcWIRgQQEQIABgUCOG/pBQAKCRAXWVXOQ77mqABMAKCg +O+LVARom7t/XmRw4w4TO9IkM9gCgh2URPU7tqECsr+WuVfC/v/7evVWIRgQQEQIA +BgUCOjcVtAAKCRDe3YS5RDds3Dz/AJ9UaB2vKuteTC+gm80f028DPbmCegCg3ZM1 +Rt2WMDS/wHW7nQJ/xnyg8PuIRgQQEQIABgUCO8wKhAAKCRChUPwthaj3i+wvAJ0a ++3dLzfhNVttfF4yLRaJy8ONqkwCeMVKz7Enbos1EJzrs3UfMdseMhMiIRgQQEQIA +BgUCO9CTnAAKCRBVlt0M6b9lPSdNAJ92qffxJFFh4gbf4sg+oF04Ovf0nACaA4fb +83aGMDZn/hAw6OtDiAiCkA+2AAAAGU1hcmsgQ294IDxtamNAYXBhY2hlLm9yZz6J +AJUDBRA54aHP7q1M/UmlY9kBASf1BACwKxBv5osTZpJIiKsdim/P2LHOtU91Ne8k +xTdr78Q86cHSz8V0ExA/FWKkOPgEHAIncXItNH0t3pGtUbAcYuT830Y7OJgLZdEW +szQcbsp72nlK0ceZ6SFRE/ouDlcnyaiou28l4JGlttqi08yO6LcX3sQD8wDaQhoU +oCe9wg/eaog/AwUQOspycv1viMYh0KcbEQIywwCg8ZGLF8wA0B3ArQ7AWNrIwfQZ +XQ8AniQ/tTGVHcORT/nBM5l0Yv/NFEcmiQCVAwUQOstTJRsIDEUnGa81AQHdeAP/ +Yz1flyCqMi2bi8f0KOQAQ699iHQqMNPL39YDSZUNxe9X1FkYwydaZIqDXINmngDy +VYRCSTpXFkQzBbU9O2wWU4DIRBPZCJFC1Lq0VOPxf1pnprQ95gXk/JLbSG8nNhel +uiCR6YEW1QOax9dOhKg7pTPUTep5NhggwHTWkiZe92mIRgQQEQIABgUCO9CTnwAK +CRBVlt0M6b9lPV0GAJsHzqlmk8CRTdG8//Ty5cSUTtCfmQCgh1DC9y9jdcqkdAl0 +ztguNHw47DK2AAAAGU1hcmsgQ294IDxtamNAcmVkaGF0LmNvbT6JAJUDBRA54aH5 +7q1M/UmlY9kBAScXA/9Ne3tWxSRjXCEi9nSLyDYZ158x8S+geunsRvvPtaRZEfHv +xL4BL1xzLNvgKg31MZG9TzUqKv7v5v1aSRhFqDm7kpIsIqlGK5l3CRhJVEMhzCwy +ki0EIRuD5HkqdE9sl/hZPuRd7yDnSud47A9tc16geUA+04wi0hpFPgYi7ixl+og/ +AwUQOspyeP1viMYh0KcbEQLMNwCgqnAhaObs1O1xKJvNh571+5Ejw7QAniKjp8xz +GwK6ZgwHJJy8XJrI6dieiEYEEBECAAYFAjvMCooACgkQoVD8LYWo94uIKgCguu2Z +Aq6QGVkCjyXcE8Os5+hrMlcAn0MqMuZRiLhgbtI3umKLtzRGpJN+iEYEEBECAAYF +AjvQk58ACgkQVZbdDOm/ZT2nqQCfeWjrnAyrL9dsb5GB4mWtBCTS/m0An17MtVTm +hW1+cfom8BkW+Lyy51GG +=r/SQ -----END PGP PUBLIC KEY BLOCK----- EOGPG -gpg --verify $SRC_DIR/$SRC.asc $SRC_DIR/$SRC || echo WARNING: Could not check signature or WRONG signature found. -sleep 3 +gpg --verify $SRC_DIR/$SRC.asc $SRC_DIR/$SRC || exit $ERROR_GPG if [ "$ARCH" == "x86_64" ]; then LIBDIR=/usr/lib64 @@ -241,21 +581,22 @@ relink() { } cd $TMP -tar xvf$tarflag $SRC_DIR/$SRC +rm -rf $PKG1 $PKG2 openssl-$VERSION || exit 1 +tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR cd openssl-$VERSION -# Use .so.0, not .so.0.9.7: -zcat $CWD/openssl.soname.diff.gz | patch -p1 --backup --verbose --suffix=.orig || exit +# Use .so.0, not .so.0.9.8: +zcat $CWD/openssl.soname.diff.gz | patch -p1 --backup --verbose --suffix=.orig || exit $ERROR_PATCH # Fix CAN-2005-2969 (SSL 2.0 rollback bug): for vulnerable in 0.9.7g 0.9.7f 0.9.7e 0.9.7d 0.9.7c 0.9.7b 0.9.7a 0.9.7 0.9.8; do if [ "$VERSION" == "$vulnerable" ]; then - zcat $CWD/patch-CAN-2005-2969.diff.gz | patch -p0 --backup --verbose --suffix=.orig || exit + zcat $CWD/patch-CAN-2005-2969.diff.gz | patch -p0 --backup --verbose --suffix=.orig || exit $ERROR_PATCH fi done if [ "$ARCH" = "i486" ]; then # Build with -march=i486 -mcpu=i686: - zcat $CWD/openssl.optsx86.diff.gz | patch -p1 --backup --verbose --suffix=.orig || exit + zcat $CWD/openssl.optsx86.diff.gz | patch -p1 --backup --verbose --suffix=.orig || exit $ERROR_PATCH fi chown -R root.root . mkdir -p $PKG1/usr/doc/openssl-$VERSION @@ -268,9 +609,20 @@ find $PKG1/usr/doc/openssl-$VERSION -type f -exec chmod 644 {} \; # MDC-2: 4,908,861 13/03/2007, not included. # IDEA: 5,214,703 25/05/2010, not included. # RC5: 5,724,428 03/03/2015, not included. -./config --prefix=/usr --openssldir=/etc/ssl no-mdc2 no-idea no-rc5 shared -make -j4 -make install INSTALL_PREFIX=$PKG1 +./config --prefix=/usr --openssldir=/etc/ssl no-mdc2 no-idea no-rc5 shared || exit $ERROR_CONF + +make depend || exit $ERROR_MAKE + +# Use -j1 here if you know what's good for you. +make || exit $ERROR_MAKE + +make install INSTALL_PREFIX=$PKG1 || exit $ERROR_INSTALL + +# Add a cron script to warn root if a certificate is going to expire soon: +mkdir -p $PKG1/etc/cron.daily +zcat $CWD/certwatch.gz > $PKG1/etc/cron.daily/certwatch.new +chmod 755 $PKG1/etc/cron.daily/certwatch.new + mv $PKG1/etc/ssl/openssl.cnf $PKG1/etc/ssl/openssl.cnf.new if [ "$ARCH" == "x86_64" ]; then @@ -299,9 +651,9 @@ done cd $PKG1 chmod 755 usr/lib/pkgconfig mkdir -p install -zcat $CWD/doinst.sh.gz > install/doinst.sh +zcat $CWD/doinst.sh-openssl.gz > install/doinst.sh cat $CWD/slack-desc.openssl > install/slack-desc -makepkg -l y -c n $REPOS/${NAME1}.tgz +makepkg -l y -c n $REPOS/${NAME1}.tgz || exit $ERROR_MKPKG # Make runtime package: @@ -326,9 +678,9 @@ find $PKG2/usr/doc/openssl-$VERSION -type d -exec chmod 755 {} \; find $PKG2/usr/doc/openssl-$VERSION -type f -exec chmod 644 {} \; cd $PKG2 mkdir -p install -zcat $CWD/doinst.sh.gz > install/doinst.sh +zcat $CWD/doinst.sh-openssl-solibs.gz > install/doinst.sh cat $CWD/slack-desc.openssl-solibs > install/slack-desc -makepkg -l y -c n $REPOS/${NAME2}.tgz +makepkg -l y -c n $REPOS/${NAME2}.tgz || exit $ERROR_MKPKG if [ "$CLEANUP" == "yes" ]; then rm -rf $TMP diff --git a/patches/openssl/openssl.soname.diff.gz b/patches/openssl/openssl.soname.diff.gz Binary files differindex c45092b0..c02ce5e1 100644 --- a/patches/openssl/openssl.soname.diff.gz +++ b/patches/openssl/openssl.soname.diff.gz diff --git a/patches/pcre/pcre.SlackBuild b/patches/pcre/pcre.SlackBuild new file mode 100755 index 00000000..e1415131 --- /dev/null +++ b/patches/pcre/pcre.SlackBuild @@ -0,0 +1,197 @@ +#!/bin/bash +# +# pcre.SlackBuild 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 any later version. +# +# pcre.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for pcre, by Silvio Rhatto +# requires: +# tested: pcre-7.7 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="pcre" +PKG_NAME="pcre" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=7.7} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--enable-utf8 --mandir=/usr/man"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/pcre/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Import minimized signing key from +if echo [[SIGNING KEY URL]] | grep -q -v "SIGNING KEY URL"; then + lynx -dump [[SIGNING KEY URL]] | gpg --import || exit $ERROR_GPG +elif echo FB0F43D8 | grep -q -v "SIGNING KEY ID"; then + gpg --recv-keys FB0F43D8 || exit $ERROR_GPG +else + gpg --import << EOKEY || exit $ERROR_GPG +[[SIGNING KEY]] +EOKEY +fi + +# Download source's signature if necessary and check it +if echo [[SIGNING URL]] | grep -q -v "SIGNING URL"; then + SIGNATURE="`basename [[SIGNING URL]]`" + if [ ! -s "$SRC_DIR/$SIGNATURE" ]; then + wget "[[SIGNING URL]]" -O "$SRC_DIR/$SIGNATURE" || exit $ERROR_WGET + fi +else + if [ -s "$SRC_DIR/$SRC.sig" ]; then + SIGNATURE="$SRC.sig" + elif [ -s "$SRC_DIR/$SRC.asc" ]; then + SIGNATURE="$SRC.asc" + else + echo Trying to get signature file from $URL.sig... + if wget "$URL.sig" -O "$SRC_DIR/$SRC.sig"; then + SIGNATURE="$SRC.sig" + else + rm $SRC_DIR/$SRC.sig + echo Trying to get signature file from $URL.asc... + if wget "$URL.asc" -O "$SRC_DIR/$SRC.asc"; then + SIGNATURE="$SRC.asc" + else + rm $SRC_DIR/$SRC.asc + echo "Error getting source's signature file" + exit $ERROR_GPG + fi + fi + fi +fi + +echo Checking $SRC_DIR/$SRC with gpg using $SRC_DIR/$SIGNATURE... +gpg --verify "$SRC_DIR/$SIGNATURE" "$SRC_DIR/$SRC" || exit $ERROR_GPG +echo Success. + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING INSTALL LICENCE NEWS NON-UNIX-USE README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------------------| +pcre: pcre (Perl-compatible regular expression library) +pcre: +pcre: The PCRE library is a set of functions that implement regular +pcre: expression pattern matching using the same syntax and semantics as +pcre: Perl 5, with just a few differences (documented in the man page). +pcre: +pcre: The PCRE library is used by KDE's Konqueror browser. +pcre: +pcre: +pcre: +pcre: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/patches/php/php.SlackBuild b/patches/php/php.SlackBuild index 4240d7a1..4cf904f0 100755 --- a/patches/php/php.SlackBuild +++ b/patches/php/php.SlackBuild @@ -26,18 +26,31 @@ # Changed by rhatto at riseup.net to fit slack.sarava.org needs # -# needs a function from simplepkg, but slightly changed +# needs a function from simplepkg function default_version { # get version from /etc/slackware-version - if [ -f "$1/etc/slackware-version" ]; then # TODO: this changes :/ - cat $1/etc/slackware-version | awk '{ print $2 }' | sed -e 's/.0$//' | tr -d . + if [ -f "$1/etc/slackware-version" ]; then + cat $1/etc/slackware-version | awk '{ print $2 }' | sed -e 's/.0$//' + elif [ -f "$1/etc/slamd64-version" ]; then + cat $1/etc/slamd64-version | awk '{ print $2 }' | sed -e 's/.0$//' + elif [ -f "$1/etc/bluewhite64-version" ]; then + cat $1/etc/bluewhite64-version | awk '{ print $2 }' | sed -e 's/.0$//' + elif [ -f "$1/etc/sflack-version" ]; then + cat $1/etc/sflack-version | awk '{ print $2 }' | sed -e 's/.0$//' else - echo "none" + aaa_base="`basename $(ls $1/var/log/packages/aaa_base-[0-9]* 2> /dev/null)`" + echo `package_version $aaa_base` fi } +function distro_version { + + default_version | tr -d . + +} + if [ -s "slack-required" ]; then echo Recomended and required packages for building php are: cat slack-required | sed -e 's/^/\t/' @@ -60,7 +73,7 @@ fi PACKAGE="php" PHP_SERIES=${PHP_SERIES:=5} -VERSION=${VERSION:=5.2.5} +VERSION=${VERSION:=5.2.6} PINE=${PINE:=4.64} ARCH=${ARCH:=i486} BUILD=${BUILD:=1rha} @@ -81,15 +94,15 @@ SRC="$PACKAGE-$VERSION.tar.bz2" URL="http://br.php.net/distributions/$SRC" # pear modules -DB="DB-1.7.11.tgz" +DB="DB-1.7.13.tgz" HTTP="HTTP-1.4.0.tgz" MAIL="Mail-1.1.14.tgz" -SMTP="Net_SMTP-1.2.10.tgz" -SOCKET="Net_Socket-1.0.8.tgz" +SMTP="Net_SMTP-1.3.1.tgz" +SOCKET="Net_Socket-1.0.9.tgz" PARSER="XML_Parser-1.2.8.tgz" RPC="XML_RPC-1.5.1.tgz" TAR="Archive_Tar-1.3.2.tgz" -GETOPT="Console_Getopt-1.2.2.tgz" +GETOPT="Console_Getopt-1.2.3.tgz" TEMPLATE="HTML_Template_IT-1.2.1.tgz" PEAR="http://pear.php.net/get" @@ -177,7 +190,7 @@ mkdir -p $TMP cd $TMP # changed since slackware 12.0 -if (( `default_version` >= 120 )); then +if (( `distro_version` >= 120 )); then mkdir -p $PKG/etc/httpd mkdir -p $PKG/etc/php # A trick from DaMouse to enable building php into $PKG. @@ -277,7 +290,7 @@ php_configure() { if [ "$PHP_SERIES" == "5" ]; then - if (( `default_version` >= 120 )); then + if (( `distro_version` >= 120 )); then $CONFIG_FILES="--with-config-file-scan-dir=/etc/php --with-config-file-path=/etc/httpd" $SNMP="--with-snmp=shared,/usr" $MBSTRING="--enable-mbstring=shared" @@ -451,7 +464,7 @@ php_configure() { # Make the Apache module version of PHP: echo "***START APACHE MODULE***" -if (( `default_version` >= 120 )); then +if (( `distro_version` >= 120 )); then php_configure --with-apxs2=/usr/sbin/apxs || exit $ERROR_CONF else php_configure --disable-static --with-apxs=/usr/sbin/apxs --enable-discard-path || exit $ERROR_CONF @@ -540,7 +553,7 @@ mkdir -p $PKG/etc/apache cp -a php.ini-dist php.ini-recommended $PKG/etc/apache if [ "$PHP_SERIES" == "5" ]; then - if (( `default_version` >= 120 )); then + if (( `distro_version` >= 120 )); then cp -a $CWD/mod_php$PHP_SERIES-apache2.conf.example $PKG/etc/apache/mod_php.conf.example else cp -a $CWD/mod_php$PHP_SERIES-apache1.3.conf.example $PKG/etc/apache/mod_php.conf.example @@ -555,7 +568,7 @@ chown root:root $PKG/etc/apache/* # This can go now. rm -f $PKG/etc/apache/httpd* -if (( `default_version` >= 120 )); then +if (( `distro_version` >= 120 )); then # Session directory for PHP: mkdir -p $PKG/var/lib/php chmod 770 $PKG/var/lib/php diff --git a/sci/astronomy/stellarium/slack-required b/sci/astronomy/stellarium/slack-required new file mode 100644 index 00000000..7bc3ca67 --- /dev/null +++ b/sci/astronomy/stellarium/slack-required @@ -0,0 +1,5 @@ +# Dependency list to stellarium +# +# dependency [condition] [version]] +boost +qt4 diff --git a/sci/astronomy/stellarium/stellarium.SlackBuild b/sci/astronomy/stellarium/stellarium.SlackBuild index 79796293..39a9ecae 100755 --- a/sci/astronomy/stellarium/stellarium.SlackBuild +++ b/sci/astronomy/stellarium/stellarium.SlackBuild @@ -1,108 +1,164 @@ #!/bin/bash # -# stellarium.SlackBuild 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 any later version. +# stellarium.SlackBuild 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 any later version. # -# stellarium.SlackBuild 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. +# stellarium.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for stellarium -# by rhatto at riseup.net +# slackbuild for stellarium, by Silvio Rhatto +# requires: boost qt4 +# tested: stellarium-0.9.1 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building stellarium are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="stellarium" +# Set variables +CWD="$(pwd)" +SRC_NAME="stellarium" +PKG_NAME="stellarium" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.8.2} +SRC_VERSION=${VERSION:=0.9.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/$PACKAGE/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/stellarium/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Configure +cmake . + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------| stellarium: stellarium (A 3D astronomical sky renderer) stellarium: stellarium: Stellarium is a free GPL software which renders realistic skies in @@ -114,20 +170,13 @@ stellarium: stellarium: stellarium: stellarium: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/sci/electronics/gtkwave/gtkwave.SlackBuild b/sci/electronics/gtkwave/gtkwave.SlackBuild index 117c0cd7..c3b48ab2 100755 --- a/sci/electronics/gtkwave/gtkwave.SlackBuild +++ b/sci/electronics/gtkwave/gtkwave.SlackBuild @@ -33,7 +33,7 @@ CWD="$(pwd)" SRC_NAME="gtkwave" PKG_NAME="gtkwave" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=3.1.9} +SRC_VERSION=${VERSION:=3.1.12} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1ls} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME diff --git a/sci/libs/fftw/fftw.SlackBuild b/sci/libs/fftw/fftw.SlackBuild index 3a9a6ef7..523bed15 100755 --- a/sci/libs/fftw/fftw.SlackBuild +++ b/sci/libs/fftw/fftw.SlackBuild @@ -1,112 +1,217 @@ #!/bin/bash # -# fftw.SlackBuild 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 any later version. +# fftw.SlackBuild 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 any later version. # -# fftw.SlackBuild 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. +# fftw.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for fftw -# by rhatto at riseup.net +# slackbuild for fftw, by Silvio Rhatto +# requires: +# tested: fftw-3.1.2 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building fftw are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="fftw" +# Set variables +CWD="$(pwd)" +SRC_NAME="fftw" +PKG_NAME="fftw" ARCH=${ARCH:=i486} -VERSION=${VERSION:=3.1.2} +SRC_VERSION=${VERSION:=3.1.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--enable-shared --enable-float"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://www.fftw.org/$SRC" +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi - -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" -fi +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.fftw.org/$SRC" -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --enable-shared -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR --enable-shared --enable-float -make || exit 32 -make DESTDIR=$TMP/package-$PACKAGE install - -CWD="`pwd`" +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -cd $TMP/package-$PACKAGE +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Thanks to Kyle Guinn <elyk at 3@gmail.com> for the section below, +# obtained from http://slackbuilds.org/slackbuilds/12.1/libraries/fftw/fftw.SlackBuild +# Small changes by Rhatto + +# compile fftw3 +CFLAGS= \ +CXXFLAGS= \ +FFLAGS= \ +./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --libdir="$LIBDIR" \ + --localstatedir=/var \ + --mandir=/usr/man \ + --infodir=/usr/info \ + --docdir=/usr/doc/fftw-$PKG_VERSION \ + --enable-shared \ + --disable-static \ + --enable-threads || exit $ERROR_CONF +make $NUMJOBS || exit $ERROR_MAKE +make install-strip DESTDIR="$PKG" || exit $ERROR_INSTALL +make clean || exit $ERROR_MAKE + +# compile fftw3f +CFLAGS= \ +CXXFLAGS= \ +FFLAGS= \ +./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --libdir="$LIBDIR" \ + --localstatedir=/var \ + --mandir=/usr/man \ + --infodir=/usr/info \ + --docdir=/usr/doc/fftw-$PKG_VERSION \ + --enable-shared \ + --disable-static \ + --enable-threads \ + --enable-float || exit $ERROR_CONF +make $NUMJOBS || exit $ERROR_MAKE +make install-strip DESTDIR="$PKG" || exit $ERROR_INSTALL +make clean || exit $ERROR_MAKE + +# compile fftw3l +CFLAGS= \ +CXXFLAGS= \ +FFLAGS= \ +./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --libdir="$LIBDIR" \ + --localstatedir=/var \ + --mandir=/usr/man \ + --infodir=/usr/info \ + --docdir=/usr/doc/fftw-$PKG_VERSION \ + --enable-shared \ + --disable-static \ + --enable-threads \ + --enable-long-double || exit $ERROR_CONF +make $NUMJOBS || exit $ERROR_MAKE +make install-strip DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS CONVENTIONS COPYING COPYRIGHT ChangeLog NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------------| fftw: fftw (the fastest fourier transform in the west) fftw: fftw: FFTW is a C subroutine library for computing the discrete Fourier @@ -118,18 +223,13 @@ fftw: most applications. fftw: fftw: fftw: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in AUTHORS CONVENTIONS COPYING COPYRIGHT ChangeLog INSTALL NEWS README TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/sci/libs/lapack/lapack.SlackBuild b/sci/libs/lapack/lapack.SlackBuild new file mode 100644 index 00000000..d68259ca --- /dev/null +++ b/sci/libs/lapack/lapack.SlackBuild @@ -0,0 +1,160 @@ +#!/bin/bash +# +# lapack.SlackBuild 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 any later version. +# +# lapack.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for lapack, by Rudson R. Alves +# requires: +# tested: lapack-3.1.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="lapack" +PKG_NAME="lapack" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=3.1.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME.tgz" +URL="http://www.netlib.org/lapack/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +cp INSTALL/make.inc.gfortran make.inc +sed -i 's/RANLIB = ranlib/RANLIB = echo/' make.inc +sed -i 's/lib: lapacklib tmglib/lib: blaslib lapacklib tmglib/' Makefile + +# Compile +make clean +make all || exit $ERROR_MAKE + +# Install +mkdir -p $PKG/$LIBDIR +cp blas_LINUX.a lapack_LINUX.a tmglib_LINUX.a $PKG/$LIBDIR +( + cd $PKG/$LIBDIR + ln -s lapack_LINUX.a liblapack.a + ln -s blas_LINUX.a libblas.a + ln -s tmglib_LINUX.a libtmglib.a +) + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="COPYING README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------------| +lapack: lapack by Slack.Sarava +lapack: +lapack: LAPACK is a library of Fortran 77 subroutines for solving +lapack: the most commonly occurring problems in numerical linear algebra. +lapack: It is freely-available software, and is copyrighted. +lapack: +lapack: +lapack: +lapack: +lapack: +lapack: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/sci/mathematics/octave/octave.SlackBuild b/sci/mathematics/octave/octave.SlackBuild index cdc29063..eb25c614 100644 --- a/sci/mathematics/octave/octave.SlackBuild +++ b/sci/mathematics/octave/octave.SlackBuild @@ -10,13 +10,13 @@ # 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for octave, by Rudson R. Alves # requires: gcc flex bison gperf -# tested: octave-3.0.0 +# tested: octave-3.0.1 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="octave" PKG_NAME="octave" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=3.0.0} +SRC_VERSION=${VERSION:=3.0.1} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rra} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -41,7 +41,7 @@ REPOS=${REPOS:=$TMP} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} -NUMJOBS=${NUMJOBS:="-j7"} +NUMJOBS=${NUMJOBS:="-j4"} # Set system libraries' path and optmization flags based on $ARCH LIBDIR="$PREFIX/lib" @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -86,7 +87,7 @@ fi # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $8 }'`" +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -110,7 +111,7 @@ make install DESTDIR="$PKG" || exit $ERROR_INSTALL ) # Install documentation -DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING readme.*" +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR for doc in $DOCS; do if [ -f "$doc" ]; then @@ -122,9 +123,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/sys/boot/grub/grub.SlackBuild b/sys/boot/grub/grub.SlackBuild index c2c3c20d..a86a445f 100755 --- a/sys/boot/grub/grub.SlackBuild +++ b/sys/boot/grub/grub.SlackBuild @@ -1,104 +1,135 @@ #!/bin/bash # -# grub.SlackBuild 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 any later version. +# grub.SlackBuild 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 any later version. # -# grub.SlackBuild 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. +# grub.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for grub -# by rhatto at riseup.net +# slackbuild for grub, by Silvio Rhatto +# requires: +# tested: grub-1.96 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building grub are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="grub" +# Set variables +CWD="$(pwd)" +SRC_NAME="grub" +PKG_NAME="grub" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.97} +SRC_VERSION=${VERSION:=1.96} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib -fi +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="ftp://alpha.gnu.org/gnu/grub/$SRC" +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="ftp://alpha.gnu.org/gnu/grub/$SRC" -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION - -./configure --prefix=/usr --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README THANKS TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------------| grub: grub (GNU GRUB Legacy bootloader) grub: grub: This is the legacy (0.9x) version of GNU GRUB, the GRand Unified @@ -110,18 +141,13 @@ grub: grub: grub: grub: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -for file in AUTHORS BUGS COPYING ChangeLog INSTALL MAINTENANCE NEWS README THANKS TODO; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/sys/fs/cryptsetup-luks/cryptsetup-luks.SlackBuild b/sys/fs/cryptsetup-luks/cryptsetup-luks.SlackBuild new file mode 100755 index 00000000..920a9b43 --- /dev/null +++ b/sys/fs/cryptsetup-luks/cryptsetup-luks.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# cryptsetup-luks.SlackBuild 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 any later version. +# +# cryptsetup-luks.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for cryptsetup-luks, by Silvio Rhatto +# requires: +# tested: cryptsetup-luks-1.0.6 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="cryptsetup" +PKG_NAME="cryptsetup-luks" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.0.6} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="cryptsetup-$VERSION.tar.bz2" +URL="http://luks.endorphin.org/source/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------| +cryptsetup-luks: crypstsetup-luks (userland tool for dm-crypt) +cryptsetup-luks: +cryptsetup-luks: LUKS is the upcoming standard for Linux hard disk encryption. +cryptsetup-luks: By providing a standard on-disk-format, it does not only facilitate +cryptsetup-luks: compatibility among distributions, but also provide secure management +cryptsetup-luks: of multiple user passwords. In contrast to existing solution, LUKS +cryptsetup-luks: stores all setup necessary setup information in the partition header, +cryptsetup-luks: enabling the user to transport or migrate his data seamlessly. LUKS +cryptsetup-luks: for dm-crypt is implemented in cryptsetup. cryptsetup-luks is intended +cryptsetup-luks: as a complete replacement for the original cryptsetup. It provides +cryptsetup-luks: all the functionally of the original version plus LUKS features. +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/sys/fs/cryptsetup/cryptsetup.SlackBuild b/sys/fs/cryptsetup/cryptsetup.SlackBuild index eeb2dfd1..31a06e4c 100755 --- a/sys/fs/cryptsetup/cryptsetup.SlackBuild +++ b/sys/fs/cryptsetup/cryptsetup.SlackBuild @@ -1,109 +1,135 @@ #!/bin/bash # -# cryptsetup.SlackBuild 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 any later version. +# cryptsetup.SlackBuild 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 any later version. # -# cryptsetup.SlackBuild 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. +# cryptsetup.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for cryptsetup -# by rhatto at riseup.net +# slackbuild for cryptsetup, by Silvio Rhatto +# requires: +# tested: cryptsetup-0.1 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building cryptsetup are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="cryptsetup" +# Set variables +CWD="$(pwd)" +SRC_NAME="cryptsetup" +PKG_NAME="cryptsetup" ARCH=${ARCH:=i486} -VERSION=${VERSION:=0.1} +SRC_VERSION=${VERSION:=0.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -if [ "$ARCH" == "x86_64" ]; then - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib -fi +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -RTOOL="wget" -PACKAGE_EXT="bz2" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://www.saout.de/misc/dm-crypt/$SRC" - -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$PACKAGE_EXT" == "bz2" ]; then - tarflag="j" -else - tarflag="z" -fi +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://www.saout.de/misc/dm-crypt/$SRC" -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP - -tar xvf$tarflag $SRC_DIR/$SRC -cd $PACKAGE-$VERSION - -./configure --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL - -CWD="`pwd`" - -cd $TMP/package-$PACKAGE - -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS=" AUTHORS COPYING ChangeLog NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------| cryptsetup: crypstsetup (userland tool for dm-crypt) cryptsetup: cryptsetup: cryptsetup is a wrapper for dm-setup to create encrypted volumes. @@ -115,18 +141,13 @@ cryptsetup: cryptsetup: cryptsetup: cryptsetup: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -for file in ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/sys/kernel/kernel-satan/config-2.6.22.19-vs2.2.0.6 b/sys/kernel/kernel-satan/config-2.6.22.19-vs2.2.0.6 index a8d7bd5c..d31f3216 100644 --- a/sys/kernel/kernel-satan/config-2.6.22.19-vs2.2.0.6 +++ b/sys/kernel/kernel-satan/config-2.6.22.19-vs2.2.0.6 @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Linux kernel version: 2.6.22.19-vs2.2.0.6 -# Thu Mar 13 00:38:37 2008 +# Mon Jun 9 22:52:06 2008 # CONFIG_X86_64=y CONFIG_64BIT=y @@ -1508,7 +1508,9 @@ CONFIG_VSERVER_LEGACYNET=y # CONFIG_VSERVER_COWBL is not set CONFIG_VSERVER_VTIME=y CONFIG_VSERVER_PROC_SECURE=y -# CONFIG_VSERVER_HARDCPU is not set +CONFIG_VSERVER_HARDCPU=y +CONFIG_VSERVER_IDLETIME=y +# CONFIG_VSERVER_IDLELIMIT is not set # CONFIG_TAGGING_NONE is not set # CONFIG_TAGGING_UID16 is not set # CONFIG_TAGGING_GID16 is not set diff --git a/sys/process/anacron/anacron.SlackBuild b/sys/process/anacron/anacron.SlackBuild index fed175a0..0c5ffbfa 100644 --- a/sys/process/anacron/anacron.SlackBuild +++ b/sys/process/anacron/anacron.SlackBuild @@ -1,115 +1,177 @@ #!/bin/bash # -# anacron.SlackBuild 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 any later version. +# anacron.SlackBuild 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 any later version. # -# anacron.SlackBuild 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. +# anacron.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for anacron -# by rhatto at riseup.net +# slackbuild for anacron, by Sivio Rhatto +# requires: +# tested: anacron-2.3 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building anacron are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="anacron" +# Set variables +CWD="$(pwd)" +SRC_NAME="anacron" +PKG_NAME="anacron" ARCH=${ARCH:=i486} -VERSION=${VERSION:=2.3} +SRC_VERSION=${VERSION:=2.3} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -RTOOL="wget" -PACKAGE_EXT="gz" -SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT" -URL="http://easynews.dl.sourceforge.net/sourceforge/anacron/$SRC" +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -SRC_DIR="$SRC_DIR/$PACKAGE" -mkdir -p $SRC_DIR +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then - wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +# Creating build user and group +if ! grep -qe "^$PKG_NAME:" /etc/group; then + groupadd $PKG_NAME +fi +if ! grep -qe "^$PKG_NAME:" /etc/passwd; then + useradd $PKG_NAME -g $PKG_NAME fi -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://downloads.sourceforge.net/anacron/$SRC" -tar xvf $SRC_DIR/$SRC || exit $ERROR_TAR -cd $PACKAGE-$VERSION +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi -if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then - patch -p1 < $CWD/$PACKAGE-$VERSION.diff || exit $ERROR_PATCH +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done + +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done fi -make || exit $ERROR_MAKE +# Compile +make $NUMJOBS || exit $ERROR_MAKE -CWD="`pwd`" +# Install +mkdir -p $PKG +mkdir -p $PKG/usr/sbin $PKG/var/spool/anacron $PKG/usr/man/man5 $PKG/usr/man/man8 -mkdir $TMP/package-$PACKAGE -cd $TMP/package-$PACKAGE +cp anacron $PKG/usr/sbin +cp anacrontab.5 $PKG/usr/man/man5 +cp anacron.8 $PKG/usr/man/man8 -mkdir -p usr/sbin var/spool/anacron usr/man/man5 usr/man/man8 -cp $CWD/anacron usr/sbin -cp $CWD/anacrontab.5 usr/man/man5 -cp $CWD/anacron.8 usr/man/man8 +gzip $PKG/usr/man/man5/anacrontab.5 +gzip $PKG/usr/man/man8/anacron.8 -gzip usr/man/man5/anacrontab.5 -gzip usr/man/man8/anacron.8 +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +# Install documentation +DOCS="COPYING ChangeLog README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------------| anacron: anacron (periodic command scheduler) anacron: anacron: Anacron is a periodic command scheduler. It executes commands at @@ -121,20 +183,13 @@ anacron: installed and configured properly, Anacron will make sure that the anacron: commands are run at the specified intervals as closely as anacron: machine-uptime permits. anacron: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="COPYING ChangeLog README TODO" - -for file in $DOCS; do - cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/ -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/www/apps/trac/Trac.SlackBuild b/www/apps/trac/Trac.SlackBuild new file mode 100755 index 00000000..af9c2278 --- /dev/null +++ b/www/apps/trac/Trac.SlackBuild @@ -0,0 +1,136 @@ +#!/bin/bash +# +# Trac.SlackBuild 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 any later version. +# +# Trac.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for Trac, by Silvio Rhatto +# requires: setuptools pysqlite swig +# tested: Trac-0.11rc2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="Trac" +PKG_NAME="Trac" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.11rc2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://ftp.edgewall.com/pub/trac/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Build and install package +python setup.py build install --root=$PKG + +# Install documentation +DOCS="AUTHORS COPYING README RELEASE TESTING-README THANKS UPGRADE" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler---------------------------------------------------------| +Trac: Trac +Trac: +Trac: Trac is an enhanced wiki and issue tracking system for software +Trac: development projects. Trac uses a minimalistic approach to +Trac: web-based software project management. +Trac: +Trac: +Trac: +Trac: +Trac: +Trac: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/www/apps/trac/slack-required b/www/apps/trac/slack-required index 0036071e..76ac4c63 100644 --- a/www/apps/trac/slack-required +++ b/www/apps/trac/slack-required @@ -1,2 +1,8 @@ -pysqlite -swig +# Dependency list to Trac +# +# dependency [condition] [version]] +setuptools +pysqlite +swig +Pygments +Genshi diff --git a/www/apps/tracaccountmanager/TracAccountManager.SlackBuild b/www/apps/tracaccountmanager/TracAccountManager.SlackBuild new file mode 100755 index 00000000..910d5516 --- /dev/null +++ b/www/apps/tracaccountmanager/TracAccountManager.SlackBuild @@ -0,0 +1,150 @@ +#!/bin/bash +# +# TracAccountManager.SlackBuild 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 any later version. +# +# TracAccountManager.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for TracAccountManager, by Silvio Rhatto +# requires: +# tested: TracAccountManager-svn_version +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="TracAccountManager" +PKG_NAME="TracAccountManager" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://trac-hacks.org/svn/accountmanagerplugin/trunk`" + +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://trac-hacks.org/svn/accountmanagerplugin/trunk $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi + +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Build and install package +python setup.py build install --root=$PKG + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------| +TracAccountManager: TracAccountManager +TracAccountManager: +TracAccountManager: The AccountManagerPlugin offers several features for managing user accounts: +TracAccountManager: +TracAccountManager: * allow users to register new accounts +TracAccountManager: * login via an HTML form instead of using HTTP authentication +TracAccountManager: * allow existing users to change their passwords or delete their accounts +TracAccountManager: +TracAccountManager: +TracAccountManager: +TracAccountManager: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/www/apps/tracaccountmanager/slack-required b/www/apps/tracaccountmanager/slack-required new file mode 100644 index 00000000..91eecce2 --- /dev/null +++ b/www/apps/tracaccountmanager/slack-required @@ -0,0 +1,4 @@ +# Dependency list to TracAccountManager +# +# dependency [condition] [version]] +Trac diff --git a/www/apps/tracpageauthzeditor/TracPageAuthzEditor.SlackBuild b/www/apps/tracpageauthzeditor/TracPageAuthzEditor.SlackBuild new file mode 100755 index 00000000..43cbafb4 --- /dev/null +++ b/www/apps/tracpageauthzeditor/TracPageAuthzEditor.SlackBuild @@ -0,0 +1,150 @@ +#!/bin/bash +# +# TracPageAuthzEditor.SlackBuild 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 any later version. +# +# TracPageAuthzEditor.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for TracPageAuthzEditor, by Silvio Rhatto +# requires: +# tested: TracPageAuthzEditor-svn_version +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="TracPageAuthzEditor" +PKG_NAME="TracPageAuthzEditor" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rha} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://trac-hacks.org/svn/finegrainedpageauthzeditorplugin/0.11`" + +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://trac-hacks.org/svn/finegrainedpageauthzeditorplugin/0.11 $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi + +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Build and install package +python setup.py build install --root=$PKG + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="COPYING README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------| +TracPageAuthzEditor: TracPageAuthzEditor +TracPageAuthzEditor: +TracPageAuthzEditor: This is a simple plugin to help edit the fine grained authz permissions file. +TracPageAuthzEditor: In addition to providing a text editor is also provides a list of the current +TracPageAuthzEditor: project users, so they are readily available. +TracPageAuthzEditor: +TracPageAuthzEditor: +TracPageAuthzEditor: +TracPageAuthzEditor: +TracPageAuthzEditor: +TracPageAuthzEditor: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/www/apps/tracpageauthzeditor/slack-required b/www/apps/tracpageauthzeditor/slack-required new file mode 100644 index 00000000..8fa4d14d --- /dev/null +++ b/www/apps/tracpageauthzeditor/slack-required @@ -0,0 +1,4 @@ +# Dependency list to TracPageAuthzEditor +# +# dependency [condition] [version]] +Trac diff --git a/x11/apps/xev/xev.SlackBuild b/x11/apps/xev/xev.SlackBuild new file mode 100644 index 00000000..e3ccb444 --- /dev/null +++ b/x11/apps/xev/xev.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# xev.SlackBuild 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 any later version. +# +# xev.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for xev, by Rudson R. Alves +# requires: +# tested: xev-1.0.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="xev" +PKG_NAME="xev" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.0.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://xorg.freedesktop.org/releases/X11R7.3/src/app/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog INSTALL NEWS README" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------------| +xev: xev by Slack.Sarava +xev: +xev: Xev creates a window and then asks the X server to send it events +xev: whenever anything happens to the window (such as it being moved, resized, +xev: typed in, clicked in, etc.). You can also attach it to an existing +xev: window. It is useful for seeing what causes events to occur and to +xev: display the information that they contain; it is essentially a debugging +xev: and development tool, and should not be needed in normal usage. +xev: +xev: +xev: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/x11/libs/agg/agg.SlackBuild b/x11/libs/agg/agg.SlackBuild new file mode 100755 index 00000000..650b9c47 --- /dev/null +++ b/x11/libs/agg/agg.SlackBuild @@ -0,0 +1,154 @@ +#!/bin/bash +# +# agg.SlackBuild 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 any later version. +# +# agg.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for agg, by Rafael Diniz +# requires: +# tested: agg-2.5 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="agg" +PKG_NAME="agg" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.5} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.antigrain.com/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +sh ./autogen.sh + +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------------| +agg: agg (A High Quality Rendering Engine for C++) +agg: +agg: A High Quality Rendering Engine for C++ +agg: +agg: +agg: +agg: +agg: +agg: +agg: http://www.antigrain.com/ +agg: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/x11/libs/ecore/ecore.SlackBuild b/x11/libs/ecore/ecore.SlackBuild index 32b3f999..78c0e526 100755 --- a/x11/libs/ecore/ecore.SlackBuild +++ b/x11/libs/ecore/ecore.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# ecore.SlackBuild 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 any later version. +# ecore.SlackBuild 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 any later version. # -# ecore.SlackBuild 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. +# ecore.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for ecore -# by rhatto at riseup.net +# slackbuild for ecore, by Silvio Rhatto +# requires: eet evas +# tested: ecore-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building ecore are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="ecore" +# Set variables +CWD="$(pwd)" +SRC_NAME="ecore" +PKG_NAME="ecore" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/ecore" ]; then - cd $SRC_DIR/e17/libs/ecore - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/ecore || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/ecore +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/ecore`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/ecore $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler--------------------------------------------------------| ecore: ecore ecore: ecore: Ecore is the event/X abstraction layer that makes doing selections, @@ -111,22 +148,13 @@ ecore: ecore: ecore: ecore: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/x11/libs/ecore/slack-required b/x11/libs/ecore/slack-required index 92adf908..1e2713de 100644 --- a/x11/libs/ecore/slack-required +++ b/x11/libs/ecore/slack-required @@ -1,2 +1,5 @@ -eet -evas +# Dependency list to ecore +# +# dependency [condition] [version]] +eet +evas diff --git a/x11/libs/esmart/esmart.SlackBuild b/x11/libs/esmart/esmart.SlackBuild index 7b3de5c0..e3e3e21f 100755 --- a/x11/libs/esmart/esmart.SlackBuild +++ b/x11/libs/esmart/esmart.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# esmart.SlackBuild 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 any later version. +# esmart.SlackBuild 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 any later version. # -# esmart.SlackBuild 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. +# esmart.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for esmart -# by rhatto at riseup.net +# slackbuild for esmart, by Silvio Rhatto +# requires: eet evas ecore embryo edje imlib2 epsilon +# tested: esmart-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building esmart are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="esmart" +# Set variables +CWD="$(pwd)" +SRC_NAME="esmart" +PKG_NAME="esmart" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/esmart" ]; then - cd $SRC_DIR/e17/libs/esmart - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/esmart || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/esmart +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/esmart`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/esmart $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| esmart: esmart esmart: esmart: @@ -111,22 +148,13 @@ esmart: esmart: esmart: esmart: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/x11/libs/esmart/slack-required b/x11/libs/esmart/slack-required index 2b3955f5..7be02dfe 100644 --- a/x11/libs/esmart/slack-required +++ b/x11/libs/esmart/slack-required @@ -1,7 +1,10 @@ -eet -evas -ecore -embryo -edje -imlib2 -epsilon +# Dependency list to esmart +# +# dependency [condition] [version]] +eet +evas +ecore +embryo +edje +imlib2 +epsilon diff --git a/x11/libs/etk/etk.SlackBuild b/x11/libs/etk/etk.SlackBuild index 34d54b94..94832ebe 100755 --- a/x11/libs/etk/etk.SlackBuild +++ b/x11/libs/etk/etk.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# etk.SlackBuild 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 any later version. +# etk.SlackBuild 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 any later version. # -# etk.SlackBuild 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. +# etk.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for etk -# by rhatto at riseup.net +# slackbuild for etk, by Silvio Rhatto +# requires: eet evas ecore embryo edje imlib2 esmart +# tested: etk-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building etk are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="etk" +# Set variables +CWD="$(pwd)" +SRC_NAME="etk" +PKG_NAME="etk" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/e17" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/etk" ]; then - cd $SRC_DIR/e17/libs/etk - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/etk || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/etk +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/etk`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/etk $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler----------------------------------------------------------| etk: etk etk: etk: Etk is a toolkit based on the EFL. @@ -111,22 +148,13 @@ etk: etk: etk: etk: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/x11/libs/etk/slack-required b/x11/libs/etk/slack-required index d7daf94a..1eb3b4b5 100644 --- a/x11/libs/etk/slack-required +++ b/x11/libs/etk/slack-required @@ -1,7 +1,10 @@ -eet -evas -ecore -embryo -edje -imlib2 -esmart +# Dependency list to etk +# +# dependency [condition] [version]] +eet +evas +ecore +embryo +edje +imlib2 +esmart diff --git a/x11/libs/evas/evas.SlackBuild b/x11/libs/evas/evas.SlackBuild index f0793da9..c92123a7 100755 --- a/x11/libs/evas/evas.SlackBuild +++ b/x11/libs/evas/evas.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# evas.SlackBuild 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 any later version. +# evas.SlackBuild 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 any later version. # -# evas.SlackBuild 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. +# evas.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for evas -# by rhatto at riseup.net +# slackbuild for evas, by Silvio Rhatto +# requires: eet +# tested: evas-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building evas are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="evas" +# Set variables +CWD="$(pwd)" +SRC_NAME="evas" +PKG_NAME="evas" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/evas" ]; then - cd $SRC_DIR/e17/libs/evas - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/evas || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/evas +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/evas`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/evas $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler---------------------------------------------------------| evas: evas evas: evas: Evas is a clean display canvas API for several target display systems @@ -111,22 +148,13 @@ evas: evas: evas: evas: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/x11/libs/evas/slack-required b/x11/libs/evas/slack-required index 93a9f3bc..7644978d 100644 --- a/x11/libs/evas/slack-required +++ b/x11/libs/evas/slack-required @@ -1 +1,4 @@ -eet +# Dependency list to evas +# +# dependency [condition] [version]] +eet diff --git a/x11/libs/ewl/ewl.SlackBuild b/x11/libs/ewl/ewl.SlackBuild index 8c48cf2c..381b64f2 100755 --- a/x11/libs/ewl/ewl.SlackBuild +++ b/x11/libs/ewl/ewl.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# ewl.SlackBuild 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 any later version. +# ewl.SlackBuild 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 any later version. # -# ewl.SlackBuild 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. +# ewl.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for ewl -# by rhatto at riseup.net +# slackbuild for ewl, by Silvio Rhatto +# requires: eet evas ecore embryo edje imlib2 epsilon +# tested: ewl-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building ewl are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="ewl" +# Set variables +CWD="$(pwd)" +SRC_NAME="ewl" +PKG_NAME="ewl" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/efl" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/libs/ewl" ]; then - cd $SRC_DIR/e17/libs/ewl - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/libs/ewl || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/libs/ewl +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/ewl`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/ewl $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler----------------------------------------------------------| ewl: ewl (widget library which uses the E Foundation Libraries) ewl: ewl: The Enlightened Widget Library (EWL) provides a widget abstraction @@ -111,22 +148,13 @@ ewl: ewl: ewl: ewl: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/x11/libs/ewl/slack-required b/x11/libs/ewl/slack-required index 2b3955f5..6ad1ba91 100644 --- a/x11/libs/ewl/slack-required +++ b/x11/libs/ewl/slack-required @@ -1,7 +1,10 @@ -eet -evas -ecore -embryo -edje -imlib2 -epsilon +# Dependency list to ewl +# +# dependency [condition] [version]] +eet +evas +ecore +embryo +edje +imlib2 +epsilon diff --git a/x11/libs/gtkglext/gtkglext.SlackBuild b/x11/libs/gtkglext/gtkglext.SlackBuild new file mode 100644 index 00000000..1e1bd483 --- /dev/null +++ b/x11/libs/gtkglext/gtkglext.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gtkglext.SlackBuild 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 any later version. +# +# gtkglext.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gtkglext, by Rudson R. Alves +# requires: mesa gtk+2 +# tested: gtkglext-1.2.0 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gtkglext" +PKG_NAME="gtkglext" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.2.0} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/gtkglext/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING COPYING.LIB INSTALL NEWS README README.win32 TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +gtkglext: gtkglext by Slack.Sarava +gtkglext: +gtkglext: GtkGLExt is an OpenGL extension to GTK. +gtkglext: +gtkglext: This package is composed of GdkGLExt library and GtkGLExt library. +gtkglext: GdkGLExt library provides the GDK objects which support OpenGL +gtkglext: rendering in GTK. GtkGLExt library provides the GtkWidget API add-ons +gtkglext: to make GTK+ widgets OpenGL-capable. +gtkglext: +gtkglext: +gtkglext: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/x11/libs/gtkglext/slack-required b/x11/libs/gtkglext/slack-required new file mode 100644 index 00000000..3380a59c --- /dev/null +++ b/x11/libs/gtkglext/slack-required @@ -0,0 +1,5 @@ +# Dependency list to gtkglext +# +# dependency [condition] [version]] +mesa +gtk+2 diff --git a/x11/libs/libast/libast.SlackBuild b/x11/libs/libast/libast.SlackBuild index eb200dd4..f87e252b 100755 --- a/x11/libs/libast/libast.SlackBuild +++ b/x11/libs/libast/libast.SlackBuild @@ -1,105 +1,167 @@ #!/bin/bash # -# libast.SlackBuild 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 any later version. +# libast.SlackBuild 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 any later version. # -# libast.SlackBuild 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. +# libast.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for libast -# by rhatto at riseup.net +# slackbuild for libast, by Silvio Rhatto +# requires: +# tested: libast-0.7 # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building libast are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="libast" +# Set variables +CWD="$(pwd)" +SRC_NAME="libast" +PKG_NAME="libast" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=0.7} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/eterm" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/eterm/libast" ]; then - cd $SRC_DIR/eterm/libast - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co eterm/libast || exit $ERROR_VCS -fi +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -cd $SRC_DIR/eterm/libast +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://eterm.sourceforge.net/download/$SRC" -CWD="`pwd`" +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi -cd $TMP/package-$PACKAGE +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Patch source +patches=" + $PKG_NAME.diff $PKG_NAME-$PKG_VERSION.diff + $PKG_NAME-$PKG_VERSION-$ARCH.diff $PKG_NAME-$ARCH.diff" +for patch in $patches; do + if [ -f "$CWD/$patch" ]; then + patch -Np1 < "$CWD/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch" ]; then + patch -Np1 < "$CWD/patches/$patch" || exit $ERROR_PATCH + elif [ -f "$CWD/$patch.gz" ]; then + gzip -dc "$CWD/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + elif [ -f "$CWD/patches/$patch.gz" ]; then + gzip -dc "$CWD/patches/$patch.gz" | patch -Np1 || exit $ERROR_PATCH + fi +done -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +if echo [[PATCH URLS]] | grep -q -v "PATCH URLS"; then + for patch_url in [[PATCH URLS]]; do + patch="`basename $patch_url`" + if [ ! -s "$SRC_DIR/$patch" ]; then + wget "$patch_url" -O "$SRC_DIR/$patch" || exit $ERROR_WGET + fi + if [ "`basename $patch .gz`" != "$patch" ]; then + gzip -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + elif [ "`basename $patch .bz2`" != "$patch" ]; then + bzip2 -dc $SRC_DIR/$patch | patch -Np1 || exit $ERROR_PATCH + else + patch -Np1 < "$SRC_DIR/$patch" || exit $ERROR_PATCH + fi + done +fi -mkdir install -cat << EOF > install/slack-desc +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog CHANGELOG NEWS README TODO LICENSE" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler-------------------------------------------------------| libast: libast libast: libast: LibAST is the Library of Assorted Spiffy Things. It contains many @@ -111,22 +173,13 @@ libast: libast: libast: libast: -EOF +EODESC -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION - -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO LICENSE" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/x11/libs/qt4/qt4.SlackBuild b/x11/libs/qt4/qt4.SlackBuild new file mode 100644 index 00000000..e331502b --- /dev/null +++ b/x11/libs/qt4/qt4.SlackBuild @@ -0,0 +1,149 @@ +#!/bin/sh + +# Slackware build script for Qt 4 +# Written by Aleksandar Samardzic <asamardzic@gmail.com> +# Modified by Robby Workman <rworkman@slackbuilds.org> +# Adaptation for slack.sarava.org standard by Rafael Diniz <rafael (at) riseup (dot) net> + +PRGNAM=qt4 +VERSION=${VERSION:-4.4.0} +ARCH=${ARCH:-i486} +BUILD=${BUILD:-1} +TAG=${TAG:-rd} +SRC_DIR=${SRC_DIR:=$CWD}/$PRGNAM +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PRGNAM +REPOS=${REPOS:=$TMP} + +# Dowload source if necessary +SRC="qt-x11-opensource-src-$VERSION.tar.gz" +URL="ftp://ftp.trolltech.com/qt/source/$SRC" + + +JOBS=${JOBS:-5} + +LIBDIR=/usr/lib + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR=/usr/lib64 +fi + +set -e + +# clean up +rm -rf "$PKG" 2> /dev/null + +# create dirs +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR + +if [ ! -s "$SRC_DIR/$SRC" ]; then + wget "$URL" -O "$SRC_DIR/$SRC" +fi + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf qt-x11-opensource-src-$VERSION +tar xvf $SRC_DIR/qt-x11-opensource-src-$VERSION.tar.gz +cd qt-x11-opensource-src-$VERSION +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +export CFLAGS="$SLKCFLAGS" +export CXXFLAGS="$SLKCFLAGS" +export OPENSOURCE_CXXFLAGS="$SLKCFLAGS" +echo "yes" | ./configure \ + -prefix $LIBDIR/qt-$VERSION \ + -libdir $LIBDIR \ + -nomake examples \ + -nomake demos + +make -j $JOBS +make install INSTALL_ROOT=$PKG + +( cd $PKG/$LIBDIR ; ln -sf qt-$VERSION qt4 ) + +( cd $PKG + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +) + +mkdir -p $PKG/usr/bin +( cd $PKG/usr/bin + for file in assistant assistant_adp designer linguist lrelease lupdate moc pixeltool qcollectiongenerator qdbus qdbuscpp2xml qdbusviewer qdbusxml2cpp qhelpconverter qhelpgenerator qmake qt3to4 qtconfig rcc uic uic3 xmlpatterns; + do + ln -sf $LIBDIR/qt-$VERSION/bin/$file ${file}-qt4 ; + done +) + +# mkdir -p $PKG/$LIBDIR/pkgconfig +# ( cd $PKG/$LIBDIR/pkgconfig +# for file in Qt3Support.pc QtAssistantClient.pc QtCore.pc \ +# QtDBus.pc QtGui.pc QtNetwork.pc QtOpenGL.pc QtScript.pc \ +# QtSql.pc QtSvg.pc QtTest.pc QtUiTools.pc QtXml.pc ; +# do +# ln -sf $LIBDIR/qt-$VERSION/lib/pkgconfig/$file . ; +# done +# ) + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a GPL_EXCEPTION.TXT GPL_EXCEPTION_ADDENDUM.TXT INSTALL LICENSE.GPL* \ + LICENSE.QPL OPENSOURCE-NOTICE.TXT README changes-$VERSION \ + $PKG/usr/doc/$PRGNAM-$VERSION +( cd $PKG/usr/doc/$PRGNAM-$VERSION ; ln -sf $LIBDIR/qt-$VERSION/doc/html . ) + +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install + +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +qt4: Qt 4 (Qt4 toolkit) +qt4: +qt4: Qt 4 sets the standard for high-performance, cross-platform +qt4: application development. It includes a C++ class library and +qt4: tools for cross-platform development and internationalization. +qt4: +qt4: Homepage: http://trolltech.com/products/qt/ +qt4: +qt4: +qt4: +qt4: +EODESC + +cat << EODESC > "$PKG/install/doinst.sh" +#!/bin/sh +# Add /opt/qt4/lib Qt4 library to /etc/ld.so.conf +# or not? + +#if [ -z "$(cat /etc/ld.so.conf | grep "/opt/qt4/lib")" ]; then +# echo "/opt/qt4/lib" >> /etc/ld.so.conf +#fi +EODESC + +cd $PKG +/sbin/makepkg -l y -c n $REPOS/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG" +fi diff --git a/x11/libs/wxwidgets/wxWidgets.SlackBuild b/x11/libs/wxwidgets/wxWidgets.SlackBuild index f01b4ce8..33f58e37 100755 --- a/x11/libs/wxwidgets/wxWidgets.SlackBuild +++ b/x11/libs/wxwidgets/wxWidgets.SlackBuild @@ -1,22 +1,22 @@ #!/bin/bash # -# wxwidgets.SlackBuild is free software; you can redistribute +# wxWidgets.SlackBuild 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 any later version. # -# wxwidgets.SlackBuild is distributed in the hope that it will +# wxWidgets.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild for wxwidgets, by Silvio Rhatto -# requires: -# tested: wxwidgets-2.8.7 +# slackbuild for wxWidgets, by Silvio Rhatto +# requires: +# tested: wxWidgets-2.8.8 # # Look for slackbuildrc @@ -31,7 +31,7 @@ CWD="$(pwd)" SRC_NAME="wxWidgets" PKG_NAME="wxWidgets" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.8.7} +SRC_VERSION=${VERSION:=2.8.8} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME @@ -55,8 +55,9 @@ elif [ "$ARCH" = "i686" ]; then elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" + SLKCFLAGS="-O2 -fPIC" LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi # Set error codes (used by createpkg) @@ -83,11 +84,10 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi - # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC=`ls -l | awk '/^d/ { print $8 }'` +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" cd "$PKG_SRC" # Configure @@ -127,9 +127,9 @@ done mkdir -p "$PKG/install" || exit $ERROR_MKDIR cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. diff --git a/x11/misc/entrance/entrance.SlackBuild b/x11/misc/entrance/entrance.SlackBuild index 2200e8ef..7e112c27 100755 --- a/x11/misc/entrance/entrance.SlackBuild +++ b/x11/misc/entrance/entrance.SlackBuild @@ -1,101 +1,138 @@ #!/bin/bash # -# entrance.SlackBuild 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 any later version. +# entrance.SlackBuild 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 any later version. # -# entrance.SlackBuild 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. +# entrance.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for entrance -# by rhatto at riseup.net +# slackbuild for entrance, by Silvio Rhatto +# requires: eet evas ecore embryo edje imlib2 esmart +# tested: entrance-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building entrance are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="entrance" +# Set variables +CWD="$(pwd)" +SRC_NAME="entrance" +PKG_NAME="entrance" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/e17" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/apps/entrance" ]; then - cd $SRC_DIR/e17/apps/entrance - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/apps/entrance || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/apps/entrance +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/entrance`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/entrance $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. @@ -111,22 +148,13 @@ entrance: entrance: entrance: entrance: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/x11/misc/entrance/slack-required b/x11/misc/entrance/slack-required index d7daf94a..3a287e91 100644 --- a/x11/misc/entrance/slack-required +++ b/x11/misc/entrance/slack-required @@ -1,7 +1,10 @@ -eet -evas -ecore -embryo -edje -imlib2 -esmart +# Dependency list to entrance +# +# dependency [condition] [version]] +eet +evas +ecore +embryo +edje +imlib2 +esmart diff --git a/x11/misc/xbindkeys/slack-required b/x11/misc/xbindkeys/slack-required new file mode 100644 index 00000000..f7fdc102 --- /dev/null +++ b/x11/misc/xbindkeys/slack-required @@ -0,0 +1,4 @@ +# Dependency list to xbindkeys +# +# dependency [condition] [version]] +guile diff --git a/x11/misc/xbindkeys/xbindkeys.SlackBuild b/x11/misc/xbindkeys/xbindkeys.SlackBuild new file mode 100644 index 00000000..80e12f66 --- /dev/null +++ b/x11/misc/xbindkeys/xbindkeys.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# xbindkeys.SlackBuild 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 any later version. +# +# xbindkeys.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for xbindkeys, by Rudson R. Alves +# requires: guile +# tested: xbindkeys-1.8.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="xbindkeys" +PKG_NAME="xbindkeys" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.8.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--with-x"} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://hocwp.free.fr/xbindkeys/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS BUGS COPYING ChangeLog INSTALL NEWS README TODO" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------| +xbindkeys: xbindkeys by Slack.Sarava +xbindkeys: +xbindkeys: xbindkeys is a program that allows you to launch shell commands +xbindkeys: with your keyboard or your mouse under X Window. It links commands +xbindkeys: to keys or mouse buttons, using a configuration file. It's +xbindkeys: independant of the window manager and can capture all keyboard +xbindkeys: keys (ex: Power, Wake...). +xbindkeys: +xbindkeys: +xbindkeys: +xbindkeys: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/x11/terms/aterm/aterm.SlackBuild b/x11/terms/aterm/aterm.SlackBuild new file mode 100644 index 00000000..a5b4514f --- /dev/null +++ b/x11/terms/aterm/aterm.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# aterm.SlackBuild 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 any later version. +# +# aterm.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for aterm, by Rudson R. Alves +# requires: +# tested: aterm-1.0.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="aterm" +PKG_NAME="aterm" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=1.0.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://downloads.sourceforge.net/aterm/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="ChangeLog ChangeLog.0.4 INSTALL README.configure" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------------| +aterm: aterm by Slack.Sarava +aterm: +aterm: aterm is designed to provide pleasing visual effects, while performing such +aterm: a mundane function as terminal emulation under X. It is largely based on +aterm: rxvt code. Several points set it apart from other similar applications: +aterm: * fast pseudo-transparency, that does not consume any additional +aterm: resources. +aterm: * optional off-focus fading of text +aterm: * NeXT-ish scrollbar +aterm: * integration with AfterStep window manager +aterm: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/x11/terms/eterm/Eterm.SlackBuild b/x11/terms/eterm/Eterm.SlackBuild new file mode 100755 index 00000000..4b8c4192 --- /dev/null +++ b/x11/terms/eterm/Eterm.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# Eterm.SlackBuild 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 any later version. +# +# Eterm.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for Eterm, by Alexandre Vieira de Souza +# requires: libast imlib2 +# tested: Eterm-0.9.5 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="Eterm" +PKG_NAME="Eterm" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=0.9.5} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.gz" +URL="http://www.eterm.org/download/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------------| +Eterm: Eterm by Slack.Sarava +Eterm: Eterm (An X11 VT102 emulator with Enlightenment features) +Eterm: +Eterm: Eterm is a vt102 terminal emulator intended as a replacement for +Eterm: xterm. It is designed with a Freedom of Choice philosophy, leaving as +Eterm: much power, flexibility, and freedom as possible in the hands of the +Eterm: user. It is designed to look good and work well, but takes a +Eterm: feature-rich approach rather than one of minimalism. Current features +Eterm: include color support, background images (all Imlib-supported formats), +Eterm: theme support, and pseudo-transparency. +Eterm: by avs +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/x11/terms/eterm/slack-required b/x11/terms/eterm/slack-required new file mode 100644 index 00000000..d1d666a5 --- /dev/null +++ b/x11/terms/eterm/slack-required @@ -0,0 +1,5 @@ +# Dependency list to Eterm +# +# dependency [condition] [version]] +libast >= 0.7 +imlib2 >= 1.4.1 diff --git a/x11/themes/gnome-themes/gnome-themes.SlackBuild b/x11/themes/gnome-themes/gnome-themes.SlackBuild new file mode 100644 index 00000000..59cdbd23 --- /dev/null +++ b/x11/themes/gnome-themes/gnome-themes.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gnome-themes.SlackBuild 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 any later version. +# +# gnome-themes.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gnome-themes, by Alexandre Vieira de Souza +# requires: gtk-engines +# tested: gnome-themes-2.22.2 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gnome-themes" +PKG_NAME="gnome-themes" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.22.2} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="ftp://ftp.gnome.org/pub/gnome/sources/gnome-themes/2.22/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-------------------------------------------------| +gnome-themes: gnome-themes by Slack.Sarava +gnome-themes: +gnome-themes: This package provides several GTK/GNOME 2 themes, including: Crux, Grand +gnome-themes: Canyon, High Contrast, High Contrast Large Print, High Contrast Large +gnome-themes: Print Inverse, Large Print, Low Contrast Large Print, Mist, Ocean Dream +gnome-themes: Sandwish, Simple, Smokey Blue, Smokey and Traditional. +gnome-themes: +gnome-themes: +gnome-themes: +gnome-themes: by avs +gnome-themes: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/x11/themes/gnome-themes/slack-required b/x11/themes/gnome-themes/slack-required new file mode 100644 index 00000000..278519cf --- /dev/null +++ b/x11/themes/gnome-themes/slack-required @@ -0,0 +1,4 @@ +# Dependency list to gnome-themes +# +# dependency [condition] [version]] +gtk-engines >= 2.14.2 diff --git a/x11/themes/gtk-engines/gtk-engines.SlackBuild b/x11/themes/gtk-engines/gtk-engines.SlackBuild new file mode 100644 index 00000000..49438fc6 --- /dev/null +++ b/x11/themes/gtk-engines/gtk-engines.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# gtk-engines.SlackBuild 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 any later version. +# +# gtk-engines.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for gtk-engines, by Alexandre Vieira de Souza +# requires: +# tested: gtk-engines-2.15.1 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="gtk-engines" +PKG_NAME="gtk-engines" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.15.1} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ftp.gnome.org/pub/GNOME/sources/gtk-engines/2.15/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------| +gtk-engines: gtk-engines by Slack.Sarava +gtk-engines: +gtk-engines: This package provides four sample theme engines for GTK+: +gtk-engines: Pixmap, Metal, Redmond95, Notif. +gtk-engines: +gtk-engines: +gtk-engines: +gtk-engines: +gtk-engines: +gtk-engines: by avs +gtk-engines: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/x11/wm/afterstep/AfterStep.SlackBuild b/x11/wm/afterstep/AfterStep.SlackBuild new file mode 100644 index 00000000..7f3f7dd5 --- /dev/null +++ b/x11/wm/afterstep/AfterStep.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# AfterStep.SlackBuild 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 any later version. +# +# AfterStep.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for AfterStep, by Rudson R. Alves +# requires: +# tested: AfterStep-2.2.8 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="AfterStep" +PKG_NAME="AfterStep" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.2.8} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1srv} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="ftp://ftp.afterstep.org/stable/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="COPYRIGHT COPYRIGHT.OLD ChangeLog ChangeLog.pre2.0 INSTALL NEW NEW.1.x README README.HPUX README.RedHat README.SOLARIS TEAM UPGRADE" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler----------------------------------------------------| +afterstep: afterstep by Slack.Sarava +afterstep: +afterstep: AfterStep is a window manager for the Unix X Window System. +afterstep: Originally based on the look and feel of the NeXTStep interface, it +afterstep: provides endusers with a consistent, clean, and elegant desktop. +afterstep: The goal of AfterStep development is to provide for flexibility of +afterstep: desktopconfiguration, improving aestetics, and efficient use of +afterstep: system resources. +afterstep: +afterstep: +afterstep: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi diff --git a/x11/wm/enlightenment/enlightenment.SlackBuild b/x11/wm/enlightenment/enlightenment.SlackBuild index ab6df565..a8f5af44 100755 --- a/x11/wm/enlightenment/enlightenment.SlackBuild +++ b/x11/wm/enlightenment/enlightenment.SlackBuild @@ -1,105 +1,142 @@ #!/bin/bash # -# enlightenment.SlackBuild 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 any later version. +# enlightenment.SlackBuild 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 any later version. # -# enlightenment.SlackBuild 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. +# enlightenment.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA # -# slackbuild script for enlightenment -# by rhatto at riseup.net +# slackbuild for enlightenment, by Silvio Rhatto +# requires: eet evas ecore embryo edje efreet imlib2 +# tested: enlightenment-svn_version # -if [ -s "slack-required" ]; then - echo Recomended and required packages for building enlightenment are: - cat slack-required | sed -e 's/^/\t/' - if [ "$INTERACT" != "no" ]; then - echo If you dont have those installed, press Ctrl-C. Otherwise, hit ENTER. - read crap -# else -# echo Sleeping 3 seconds... -# sleep 3 - fi -fi - -CWD="`pwd`" - +# Look for slackbuildrc if [ -f ~/.slackbuildrc ]; then source ~/.slackbuildrc elif [ -f /etc/slackbuildrc ]; then source /etc/slackbuildrc fi -# default settings -PACKAGE="enlightenment" +# Set variables +CWD="$(pwd)" +SRC_NAME="enlightenment" +PKG_NAME="enlightenment" ARCH=${ARCH:=i486} -VERSION="`date +%Y%m%d`" +SRC_VERSION=${VERSION:=svn_version} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} -SRC_DIR=${SRC:=$CWD} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} - -if [ "$ARCH" == "x86_64" ]; then - export LDFLAGS="-L/lib64 -L/usr/lib64" - LIBDIR=/usr/lib64 -else - LIBDIR=/usr/lib +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:="--sysconfdir=/etc"} +NUMJOBS=${NUMJOBS:=""} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" fi -# ------- error codes for createpkg -------------- +# Set error codes (used by createpkg) ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41 - -SRC_DIR="$SRC_DIR/e17" -mkdir -p $SRC_DIR - -if [ -d "$SRC_DIR/e17/apps/e" ]; then - cd $SRC_DIR/e17/apps/e - cvs update || exit $ERROR_VCS -else - cd $SRC_DIR - # echo "Please hit ENTER on passwd prompt..." - # cvs -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e login || exit $ERROR_VCS - cvs -z3 -d:pserver:anonymous@anoncvs.enlightenment.org:/var/cvs/e co e17/apps/e || exit $ERROR_VCS -fi - -TMP="$TMP/$PACKAGE" -rm -rf $TMP -mkdir -p $TMP -cd $TMP +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 -cd $SRC_DIR/e17/apps/e +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null -make clean &> /dev/null -./autogen.sh --prefix=/usr --sysconfdir=/etc --libdir=$LIBDIR || exit $ERROR_CONF -make || exit $ERROR_MAKE -make DESTDIR=$TMP/package-$PACKAGE install || exit $ERROR_INSTALL +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR -CWD="`pwd`" +# Get svn source code +cd "$SRC_DIR" +SND_DIR="`basename http://svn.enlightenment.org/svn/e/trunk/e`" -cd $TMP/package-$PACKAGE +if [ "`find "$SRC_DIR/" -name .svn`" != "" ] && [ -d "$SRC_DIR/$SND_DIR" ]; then + cd $SND_DIR + svn update || exit $ERROR_VCS +else + svn checkout http://svn.enlightenment.org/svn/e/trunk/e $SND_DIR || exit $ERROR_VCS + cd $SND_DIR +fi -find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +PKG_VERSION="`svn info | awk '/Last Changed Rev:/ { print $4 }'`_svn" + +# Copy svn source +cd "$PKG_WORK" +cp -a $SRC_DIR/* . +PKG_SRC="$PWD/$SND_DIR" +cd "$PKG_SRC" + +# Configure +./autogen.sh || exit $ERROR_CONF +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="AUTHORS COPYING ChangeLog NEWS README TODO BUGS" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done -mkdir install -cat << EOF > install/slack-desc +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line +# The "handy ruler" below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must +# on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. - |-----handy-ruler-----------------------------------------------------| + |-----handy-ruler------------------------------------------------| enlightenment: enlightenment enlightenment: enlightenment: enlightenment window manager, dev. release 17. @@ -111,22 +148,13 @@ enlightenment: enlightenment: enlightenment: enlightenment: -EOF - -# docs -mkdir -p usr/doc/$PACKAGE-$VERSION +EODESC -DOCS="AUTHORS COPYING ChangeLog CHANGELOG INSTALL NEWS README TODO" - -for file in $DOCS; do - if [ -f "$CWD/$file" ]; then - cp $CWD/$file usr/doc/$PACKAGE-$VERSION/ - fi -done - -makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz || exit $ERROR_MKPKG +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +# Delete source and build directories if requested if [ "$CLEANUP" == "yes" ]; then - rm -rf $TMP + rm -rf "$PKG_WORK" "$PKG" fi - diff --git a/x11/wm/enlightenment/slack-required b/x11/wm/enlightenment/slack-required index bdb9979d..ce89c63f 100644 --- a/x11/wm/enlightenment/slack-required +++ b/x11/wm/enlightenment/slack-required @@ -1,7 +1,10 @@ -eet -evas -ecore -embryo -edje -efreet -imlib2 +# Dependency list to enlightenment +# +# dependency [condition] [version]] +eet +evas +ecore +embryo +edje +efreet +imlib2 diff --git a/x11/wm/metacity/metacity.SlackBuild b/x11/wm/metacity/metacity.SlackBuild new file mode 100644 index 00000000..dc83ed19 --- /dev/null +++ b/x11/wm/metacity/metacity.SlackBuild @@ -0,0 +1,153 @@ +#!/bin/bash +# +# metacity.SlackBuild 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 any later version. +# +# metacity.SlackBuild 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 program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# +# slackbuild for metacity, by Alexandre Vieira de Souza +# requires: +# tested: metacity-2.22.0 +# + +# Look for slackbuildrc +if [ -f ~/.slackbuildrc ]; then + source ~/.slackbuildrc +elif [ -f /etc/slackbuildrc ]; then + source /etc/slackbuildrc +fi + +# Set variables +CWD="$(pwd)" +SRC_NAME="metacity" +PKG_NAME="metacity" +ARCH=${ARCH:=i486} +SRC_VERSION=${VERSION:=2.22.0} +PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" +BUILD=${BUILD:=1avs} +SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME +TMP=${TMP:=/tmp} +PKG=${PKG:=$TMP/package-$PKG_NAME} +REPOS=${REPOS:=$TMP} +PREFIX=${PREFIX:=/usr} +PKG_WORK="$TMP/$SRC_NAME" +CONF_OPTIONS=${CONF_OPTIONS:=""} +NUMJOBS=${NUMJOBS:="-j4"} + +# Set system libraries' path and optmization flags based on $ARCH +LIBDIR="$PREFIX/lib" + +if [ "$ARCH" = "i386" ]; then + SLKCFLAGS="-O2 -march=i386 -mcpu=i686" +elif [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mcpu=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIR="$PREFIX/lib64" + LDFLAGS="-L/lib64 -L/usr/lib64" +fi + +# Set error codes (used by createpkg) +ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 +ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 +ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 +ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 + +# Clean up any leftovers of previous builds +rm -rf "$PKG_WORK" 2> /dev/null +rm -rf "$PKG" 2> /dev/null + +# Create directories if necessary +mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR +mkdir -p "$PKG" || exit $ERROR_MKDIR +mkdir -p "$REPOS" || exit $ERROR_MKDIR +mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR + +# Dowload source if necessary +SRC="$SRC_NAME-$VERSION.tar.bz2" +URL="http://ftp.gnome.org/pub/gnome/sources/metacity/2.22/$SRC" + +if [ ! -s "$SRC_DIR/$SRC" ] || ! bunzip2 -t "$SRC_DIR/$SRC" 2> /dev/null; then + wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET +fi + +# Untar +cd "$PKG_WORK" +tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR +PKG_SRC="$PWD/`ls -l | awk '/^d/ { print $NF }'`" +cd "$PKG_SRC" + +# Configure +CFLAGS="$SLKCFLAGS" \ + CXXFLAGS="$SLKCFLAGS" \ + ./configure \ + --prefix="$PREFIX" --libdir="$LIBDIR" $CONF_OPTIONS || exit $ERROR_CONF + +# Compile +make $NUMJOBS || exit $ERROR_MAKE + +# Install +make install DESTDIR="$PKG" || exit $ERROR_INSTALL + +# Strip binaries +( cd "$PKG" + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null +) + +# Install documentation +DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" +mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR +for doc in $DOCS; do + if [ -f "$doc" ]; then + cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" + fi +done + +# Add package description (slack-desc) +mkdir -p "$PKG/install" || exit $ERROR_MKDIR +cat << EODESC > "$PKG/install/slack-desc" +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler-----------------------------------------------------| +metacity: metacity by Slack.Sarava +metacity: +metacity: Metacity is a low-frills Window Manager, and is the default +metacity: Window Manager of the GNOME 2 desktop. It provides most of +metacity: the features expected of a Window Manager, but leaves +metacity: everything it can up to other components of the GNOME +metacity: environment. +metacity: +metacity: +metacity: by avs +metacity: +EODESC + +# Build the package +cd "$PKG" +makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG + +# Delete source and build directories if requested +if [ "$CLEANUP" == "yes" ]; then + rm -rf "$PKG_WORK" "$PKG" +fi |