abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 19:55 | IT novinky

    Americký výrobce čipů Intel propustí 15 procent zaměstnanců (en), do konce roku by jich v podniku mělo pracovat zhruba 75.000. Firma se potýká s výrobními problémy a opouští také miliardový plán na výstavbu továrny v Německu a Polsku.

    Ladislav Hagara | Komentářů: 6
    včera 17:33 | Komunita

    MDN (Wikipedie), dnes MDN Web Docs, původně Mozilla Developer Network, slaví 20 let. V říjnu 2004 byl ukončen provoz serveru Netscape DevEdge, který byl hlavním zdrojem dokumentace k webovým prohlížečům Netscape a k webovým technologiím obecně. Mozille se po jednáních s AOL povedlo dokumenty z Netscape DevEdge zachránit a 23. července 2005 byl spuštěn MDC (Mozilla Developer Center). Ten byl v roce 2010 přejmenován na MDN.

    Ladislav Hagara | Komentářů: 0
    včera 14:55 | Nová verze

    Wayback byl vydán ve verzi 0.1. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | Nová verze

    Byla vydána nová verze 6.18 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově se lze k síti Tor připojit pomocí mostu WebTunnel. Tor Browser byl povýšen na verzi 14.5.5. Thunderbird na verzi 128.12.0. Další změny v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    24.7. 14:33 | IT novinky

    Meta představila prototyp náramku, který snímá elektrickou aktivity svalů (povrchová elektromyografie, EMG) a umožňuje jemnými gesty ruky a prstů ovládat počítač nebo různá zařízení. Získané datové sady emg2qwerty a emg2pose jsou open source.

    Ladislav Hagara | Komentářů: 0
    24.7. 14:22 | Nová verze

    Byla vydána (𝕏) nová verze 25.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 25.7 je Visionary Viper. Přehled novinek v příspěvku na fóru.

    Ladislav Hagara | Komentářů: 0
    24.7. 13:33 | IT novinky

    Před 40 lety, 23. července 1985, společnost Commodore představila první počítač Amiga. Jednalo se o počítač "Amiga od Commodore", jenž byl později pojmenován Amiga 1000. Mělo se jednat o přímou konkurenci počítače Apple Macintosh uvedeného na trh v lednu 1984.

    Ladislav Hagara | Komentářů: 2
    24.7. 06:00 | IT novinky

    T‑Mobile USA ve spolupráci se Starlinkem spustil službu T-Satellite. Uživatelé služby mohou v odlehlých oblastech bez mobilního signálu aktuálně využívat satelitní síť s více než 650 satelity pro posílání a příjem zpráv, sdílení polohy, posílání zpráv na 911 a příjem upozornění, posílání obrázků a krátkých hlasových zpráv pomocí aplikace Zprávy Google. V plánu jsou také satelitní data.

    Ladislav Hagara | Komentářů: 9
    23.7. 21:55 | Komunita

    Společnost Proxmox Server Solutions stojící za virtualizační platformou Proxmox Virtual Environment věnovala 10 000 eur nadaci The Perl and Raku Foundation (TPRF).

    Ladislav Hagara | Komentářů: 2
    23.7. 21:22 | Bezpečnostní upozornění

    Byla vydána nová verze 2.4.65 svobodného multiplatformního webového serveru Apache (httpd). Řešena je bezpečnostní chyba CVE-2025-54090.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (29%)
     (25%)
     (5%)
     (5%)
     (5%)
     (2%)
     (2%)
     (27%)
    Celkem 131 hlasů
     Komentářů: 16, poslední včera 15:31
    Rozcestník

    wxDVDShrink

    13.8.2006 12:06 | Programy | Výběrový blog

    Tak pokud jste četli můj poslední blog. Tak víte, že se snažím naprogramovat utilitu na zálohovaní DVD9 na DVD5. Od doby co jsem psal minulý blog jsem pokročil, a tak bych se chtěl pochlupit a zjistit váš názor. První screenshot mého programu najdete na http://kozzi.php5.cz/wxdvdshrink.png

    první alfa verze by měla být hotová příští týden o víkendu.

           

    Hodnocení: 95 %

            špatnédobré        

    Anketa

    CO si myslíte? Má to smysl programovat?
     (34 %)
     (4 %)
     (0 %)
     (3 %)
     (0 %)
     (0 %)
     (59 %)
    Celkem 71 hlasů

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    13.8.2006 12:14 rnj3e | skóre: 9 | blog: Blog
    Rozbalit Rozbalit vše Re: wxDVDShrink
    No nevím, ale přijde mi to celkém podobné jako gDVDshrink (takže asi "nošení dříví do lesa")
    kozzi avatar 13.8.2006 13:07 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: wxDVDShrink
    No přiznám se že jeho vzhledem jsem se nechal inspirovat. Mám rád GNOME takže se držím hesl Just work. Mám rád jednoduchý vzhled žádny zbytečnosti, který se netýkají fce programu tam nepotřebuji. Ale jestli vydržím u vývoje a splním si své plány, tak budoucí verze budou místo checklistboxu používat asi něci trošku vyspělwjšího
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    kotyz avatar 13.8.2006 12:20 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: wxDVDShrink
    pekny, ale porad tomu par veci chybi, dvd shrink pouzivam a sem na nej zvyklej. ale je me jasny ze neni mozny mit tam hned milion funkci. ale bude se dalsi vyvoj ubirat smerem k vetsi podobnosti s dvd shrinkem z win? ja osobne bych to kvitoval s povdekem ... ;-)
    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!
    kotyz avatar 13.8.2006 12:24 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: wxDVDShrink
    jeste malickost - umi/bude umet ty dvd i dekryptovat? jakoze 2v1 (dvd shrink + dvd decrypter)? mozna se blbe ptam a funguje to tak normalne, ale zajima me to ...
    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!
    kozzi avatar 13.8.2006 12:26 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: wxDVDShrink
    jestli myslis jako jestli to bude nacitat jen z hardisku nebo primo z dvd tak to bude zvladat oboji. Pouzivajise dvdread a dvdcss
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    kozzi avatar 13.8.2006 12:24 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: wxDVDShrink
    no v budoucnu planuji aby to melo podobny fce jako dvdshrink. To znamená(menu, veber vice titlu, vyber kapitol, nahled pri prevadeni ....) Prvni verze bude umet zaklad nacist hlavni stopu vybrat si titulky a zvuk a previst to na velikost jedno dvd
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    kotyz avatar 13.8.2006 12:29 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: wxDVDShrink
    tak to je dobry. zatim dvdcka decryptuju a shrinkuju jen pod windows protoze tam na to sou sikovny a snadno ovladatelny programy. az budou takovy i v linuxu bude to velke vyznamne plus. sice win me tady na tom pc zustanou uz asi naporad, ale vsechno dulezity uz budu moct delat v tom lepsim OS ...
    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!
    kozzi avatar 13.8.2006 12:34 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: wxDVDShrink
    no pokud vim tak pro linux je asi zatim nejlepsi k9copy umi to fakt spoustu veci a celkem se to vyviji. Ja to nepreferuji kvuli pouzivani qt ale to je jen muj problem
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    kotyz avatar 13.8.2006 12:37 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: wxDVDShrink
    tak na to kouknu. uz sem myslim o tom programu slysel ale tim to skoncilo.
    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!
    14.8.2006 01:13 Ivanhoej | skóre: 26 | blog: ss2_Debian | Bratislava
    Rozbalit Rozbalit vše Re: wxDVDShrink
    K9copy pouzivam a uplne v pohode ma vsetko co dvdshrink pre okna. Akurat vytvori ISO, namiesto DVD struktury, ale to je uplne jedno bud sa to da rovno napalit, alebo namontovat, alebo prehrat.

    Pre Linux nic lepsie neexistuje co by nahradilo dvdshrink. Dokonca je tam aj vyber defaultnej zvukovej stopy a titulkov.
    Beetljuice avatar 14.8.2006 13:37 Beetljuice | skóre: 26 | blog: BeetljuiceBlog | Bílina
    Rozbalit Rozbalit vše Re: wxDVDShrink
    No jestli se nemýlím,tak DVD strukturu vytvoří a z ní pak dělá .iso.Dělá to v nastaveném výstupním adresáři.Několikrát jsem to použil.Vyber místo vytvoření .iso souboru výstup na vypalovačku,ale nedávej tam čisté DVD.Když dáš storno,tak ti v tom adresáři zbyde to DVD s DVD strukturou.
    Aj dont spík ÍÍngliš :-(
    kotyz avatar 14.8.2006 16:30 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: wxDVDShrink
    to me je sumafuk. ja to palim stejne z isa i pod win.
    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!
    Beetljuice avatar 16.8.2006 22:56 Beetljuice | skóre: 26 | blog: BeetljuiceBlog | Bílina
    Rozbalit Rozbalit vše Re: wxDVDShrink
    No coment !
    Aj dont spík ÍÍngliš :-(
    13.8.2006 13:24 jekub | skóre: 9 | blog: noblog
    Rozbalit Rozbalit vše Jen drobnost
    Nemám rád, když na mě programy "mluví" rozkazovacím způsobem. A ještě horší je, když na mě křičí! Takže mně by se víc líbilo "Vyčistit list" (nebo raději seznam?) a "Kopírovat DVD". Jako programátor si možná řekneš, že to nejsou až tak podstatné věci. Ber to tedy jen jako takový rýpanec a rozhodně pokračuj ;-)
    kotyz avatar 13.8.2006 14:03 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: Jen drobnost
    funkcnost je prednejsi. takovyhle drobnosti se budou ladit az bude program delat to co ma.

    nevim treba proc ty vyvojari jxp commanderu zacinaj od gui - program sice pekne vypada ale nedela vubec nic. je to otazka priorit asi ...

    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!
    13.8.2006 15:05 jekub | skóre: 9 | blog: noblog
    Rozbalit Rozbalit vše Re: Jen drobnost
    Z hlediskka této aplikace jsou to, pochopitelně, drobnosti. Myslel jsem to trochu obecněji, do budoucna. A že funkčnost je přednější, s tím souhlasím. Ale proč to ladit az bude program delat to co ma.? Ladit by se měl kód a gui by mělo být hotové a dokonalé, si myslím.
    Josef Kufner avatar 13.8.2006 15:20 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jen drobnost
    A taky pak nedodělané GUI neodvádí pozornost od ladění pracujícího kódu.
    Hello world ! Segmentation fault (core dumped)
    Jardík avatar 13.8.2006 15:33 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Jen drobnost
    JXP Commander dávno brouzdá, maže, kopíruje, přesouvá. Jenže od základu je to blbě navržené. Až dodělám Toolkit, předělám to. Stav toolkitu:
    • Window
    • Viewport
    • ScrolledWindow
    • VPaned
    • HPaned
    • VBox
    • HBox
    • Table
    • HSeparator
    • VSeparator
    • ProgressBar
    • Notebook
    • Label
    • Entry
    • Button
    • Frame
    • EventBox
    • Dialog
    • Alignment
    • InputBox
    • ---
    • AString,WString,UString
    • Array,ObjectArray,StringArray
    • File
    • Timer
    Teď ještě ListBox, ListView, TreeView a ještě pár dalších widgetů, pak ještě implementace archivů, ftp, http, ... a nakonec VFS.
    Teď se zeptám: Čím generuješ Makefile? Jestli ho píšeš růčo, můžu poskytnout configure skript k Toolkitu/JXP Commanderu. Mírně ho upravíš (název projektu, cestu ke zdrojákům, cestu k výstupu, default prefix,...). Po spuštění rekurzivně proskenuje složku se zdrojákama (hledá C a C++ soubory), proskenuje v nich include direktivy (pro vytvoření závislostí pro Makefile) a vygeneruje Makefile. Jako výstup může být sdílená knihovna nebo spustitelný soubor.
    Věřím v jednoho Boha.
    kozzi avatar 13.8.2006 16:01 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: Jen drobnost
    ten skript by se mi mohl hodit zatim si delam makefile rucne. Ale az bude projekt veci tak potez.
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    Jardík avatar 13.8.2006 16:49 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Jen drobnost
    #!/bin/sh
    #
    # configure script for YourApp
    # Copyright (c) Year YourName <YourEmail>
    #
    # YourApp is distributed under the terms of YourLicense license
    #
    
    #
    # Project name
    #
    
    PROJECT=
    
    #
    # Project type
    # Available options:
    #   lib
    #   exe
    #
    
    PROJECT_TYPE="exe"
    
    #
    # Only used when building library
    # LIB_NAME sets library name - will be prefixed by "lib" and suffixed by ".so"
    # LIB_VER  sets library version
    #
    
    LIB_NAME=
    LIB_VER=
    
    #
    # Only used when building executable
    # EXE_NAME sets name of output executable
    #
    
    EXE_NAME=
    
    #
    # Where are the sources located
    #
    
    SRC_DIR="./src"
    
    #
    # Default install path
    # Can be changed by --prefix option
    #
    
    DEFAULT_PREFIX="/usr/local"
    
    #
    # Where the output files are stored
    #
    
    DEST_DIR="./dest_dir"
    
    #
    # List of included directories
    #
    
    INCLUDES=
    
    #
    # List of flags for compiler
    # Only used for compilation
    #
    
    CFLAGS=
    
    #
    # List of libraries linked to output file
    # Only used for linking
    #
    
    LIBS=
    
    #
    # List of defines
    #
    
    DEFINES=
    
    #
    # Switch to verbose mode
    #
    
    VERBOSE="yes"
    
    #
    # This function is called before Makefile and other stuff is generated
    # You can use it for setting up some variables (eg. CFLAGS, LIBS etc.)
    # return 0 if script can continue otherwise it will exit
    #
    
    pre_create_makefile()
    {
    	return 0
    }
    
    #
    # This function is called after Makefile and other stuff is generated
    # You can use it to add some lines to "install.sh" and "uninstall.sh" script
    # return 0 if script can continue otherwise it will exit
    #
    
    post_create_makefile()
    {
    	return 0
    }
    
    #
    # Please don't modify next code
    #
    
    C_FILES=
    CPP_FILES=
    RET_VAL=
    
    show_help()
    {
    	echo -e "\nUsage: ${1} [options]"
    	echo "  --help          - show this help"
    	echo "  --prefix=prefix - set install path"
    	echo "                    default is ${DEFAULT_PREFIX}"
    }
    
    get_file_name()
    {
    	if [ -z "$1" ]
    	then
    		RET_VAL=""
    	else
    		RET_VAL="$1"
    		RET_VAL=${RET_VAL##*/}
    	fi
    }
    
    get_file_name_without_ext()
    {
    	if [ -z "$1" ]
    	then
    		RET_VAL=""
    	else
    		get_file_name $1
    		RET_VAL=${RET_VAL%.*}
    	fi
    }
    
    get_file_path()
    {
    	if [ -z "$1" ]
    	then
    		RET_VAL=""
    	else
    		RET_VAL="$1"
    		RET_VAL=${RET_VAL%/*}
    	fi
    }
    
    build_obj_name()
    {
    	if [ -z "$1" ]
    	then
    		RET_VAL=""
    	else
    		get_file_path $1
    		FILE_PATH="${RET_VAL}/obj/"
    		get_file_name_without_ext $1
    		RET_VAL="${FILE_PATH}${RET_VAL}.o"
    	fi
    }
    
    scan_files()
    {
    	C_FILES=`find ${SRC_DIR} -name *.c`
    	CPP_FILES=`find ${SRC_DIR} -name *.cpp`
    }
    
    echo "Running configure for ${PROJECT} ..."
    echo
    
    if [ "${VERBOSE}" = "yes" ]
    then
    	echo "Parsing command line arguments ..."
    else
    	echo -n "Parsing command line arguments ... "
    fi
    # parse cmd line arguments
    HELP="no"
    PREFIX=
    for I in $*
    do
    	case $I in
    		$0)
    			;;
    		--prefix*)
    			PREFIX=${I##*=}
    			[ "${VERBOSE}" = "yes" ] && echo -e "\tPREFIX set to ${PREFIX}."
    			;;
    		--help*)
    			HELP="yes"
    			[ "${VERBOSE}" = "yes" ] && echo -e "\tHelp argument detected."
    			;;
    		*)
    			[ "${VERBOSE}" = "yes" ] && echo -e "\tIgnoring unknown argument ${I}."
    			;;
    	esac
    done
    [ -z "${PREFIX}" ] && PREFIX=${DEFAULT_PREFIX}
    echo "done."
    
    if [ "$HELP" = "yes" ]
    then
    	show_help $1
    	exit 0
    fi
    
    pre_create_makefile
    [ $? -eq 0 ] || exit 1
    
    if [ "${VERBOSE}" = "yes" ]
    then
    	echo "Building file list and depecies..."
    else
    	echo -n "Building file list and depecies... "
    fi
    
    # scan for c++ source files
    scan_files
    
    if [ -z "$CPP_FILES" -a -z "$C_FILES" ]
    then
    	echo "fail."
    	echo "Error: No source files found."
    	exit 1
    fi
    
    # create list of object files & parse depencies
    OBJS=()
    DEPENCIES=()
    INDEX=0
    for I in $CPP_FILES $C_FILES
    do
    	[ "${VERBOSE}" = "yes" ] && echo -e "\t${I}"
    	build_obj_name $I
    	OBJS[$INDEX]="${RET_VAL}"
    	DEPS=()
    	UVOZOVKA="\""
    	INDEX2=0
    	for DEP in `cat ${I} | grep \#include`
    	do
    		DEP="${DEP}\""
    		DEP="`cut -d${UVOZOVKA} -f2 <<<${DEP}`"
    		if [ -n "$DEP" ]
    		then
    			get_file_path $I
    			DEP="${RET_VAL}/${DEP}"
    			[ "${VERBOSE}" = "yes" ] && echo -e "\t\t${DEP}"
    			DEPS[$INDEX2]="${DEP}"
    			let INDEX2=INDEX2+1
    		fi
    	done
    	DEPENCIES[$INDEX]="${DEPS[@]}"
    	let INDEX=INDEX+1
    done
    
    echo "done."
    
    if [ "${VERBOSE}" = "yes" ]
    then
    	echo "Creating destination dirs for object files ..."
    else
    	echo -n "Creating destination dirs for object files ... "
    fi
    
    # build directories for object files
    PREV_DIR=
    for I in ${OBJS[@]}
    do
    	get_file_path $I
    	if [ ! "${PREV_DIR}" = "${RET_VAL}" ]
    	then
    		if [ ! -d "${RET_VAL}" ]
    		then
    			[ "${VERBOSE}" = "yes" ] && echo -en "\t${RET_VAL} ... "
    			mkdir -p ${RET_VAL}
    			if [ ! -d "${RET_VAL}" ]
    			then
    				[ "${VERBOSE}" = "yes" ] && echo "fail."
    				echo "fail."
    				exit 1
    			else
    				[ "${VERBOSE}" = "yes" ] && echo "done."
    			fi
    		else
    			[ "${VERBOSE}" = "yes" ] && echo -e "\t${RET_VAL} ... already exists."
    		fi
    		PREV_DIR="${RET_VAL}"
    	fi
    done
    
    echo "done."
    
    
    # create destination directory (if doesn't exist)
    if [ "${VERBOSE}" = "yes" ]
    then
    	echo "Creating destination directory ..."
    else
    	echo -n "Creating destination directory ... "
    fi
    if [ ! -d "${DEST_DIR}" ]
    then
    	[ "${VERBOSE}" = "yes" ] && echo -ne "\t${DEST_DIR} ... "
    	mkdir -p ${DEST_DIR}
    	if [ ! -d "${DEST_DIR}" ]
    	then
    		[ "${VERBOSE}" = "yes" ] && echo "fail."
    		echo "fail."
    		exit 1
    	else
    		[ "${VERBOSE}" = "yes" ] && echo "done."
    	fi
    else
    	[ "${VERBOSE}" = "yes" ] && echo -e "\t${DEST_DIR} ... already exists."
    fi
    echo "done."
    
    echo -n "Generating Makefile ... "
    
    LINK_PROGRAM="gcc"
    [ -n "${CPP_FILES}" ] && LINK_PROGRAM="g++"
    OUTPUT_DIR="${DEST_DIR}/bin"
    [ "${PROJECT_TYPE}" = "lib" ] && OUTPUT_DIR="${DEST_DIR}/lib"
    [ -d "${OUTPUT_DIR}" ] || mkdir -p "${OUTPUT_DIR}"
    
    [ -f Makefile ] && rm -f Makefile
    touch Makefile
    
    if [ "${PROJECT_TYPE}" = "lib" ]
    then
    cat >>Makefile <<_EOF
    
    all: ${OUTPUT_DIR}/lib${LIB_NAME}.so.${LIB_VER}.0
    
    strip: ${OUTPUT_DIR}/lib${LIB_NAME}.so.${LIB_VER}.0
    	strip ${OUTPUT_DIR}/lib${LIB_NAME}.so.${LIB_VER}.0
    
    ${OUTPUT_DIR}/lib${LIB_NAME}.so.${LIB_VER}.0: ${OBJS[@]}
    	${LINK_PROGRAM} -g -shared -W1,-soname,lib${LIB_NAME}.so.${LIB_VER} ${DEFINES} ${LIBS} -o ${OUTPUT_DIR}/lib${LIB_NAME}.so.${LIB_VER}.0 ${OBJS[@]} -lc
    
    _EOF
    else
    cat >>Makefile <<_EOF
    
    all: ${OUTPUT_DIR}/${EXE_NAME}
    
    strip: ${OUTPUT_DIR}/${EXE_NAME}
    	strip ${OUTPUT_DIR}/${EXE_NAME}
    
    ${OUTPUT_DIR}/${EXE_NAME}: ${OBJS[@]}
    	${LINK_PROGRAM} -Wall ${DEFINES} ${LIBS} -o ${OUTPUT_DIR}/${EXE_NAME} ${OBJS[@]}
    
    _EOF
    fi
    
    INDEX=0
    for I in $CPP_FILES
    do
    
    if [ "${PROJECT_TYPE}" = "lib" ]
    then
    cat >>Makefile <<_EOF
    
    ${OBJS[$INDEX]}: ${I} ${DEPENCIES[$INDEX]}
    	g++ -fPIC -Wall ${DEFINES} ${INCLUDES} ${CFLAGS} -g -c ${I} -o ${OBJS[$INDEX]}
    
    _EOF
    else
    cat >>Makefile <<_EOF
    
    ${OBJS[$INDEX]}: ${I} ${DEPENCIES[$INDEX]}
    	g++ -Wall ${DEFINES} ${INCLUDES} ${CFLAGS} -g -c ${I} -o ${OBJS[$INDEX]}
    
    _EOF
    fi
    
    let INDEX=INDEX+1
    
    done #for I in $CPP_FILES
    
    for I in $C_FILES
    do
    
    if [ "${PROJECT_TYPE}" = "lib" ]
    then
    cat >>Makefile <<_EOF
    
    ${OBJS[$INDEX]}: ${I} ${DEPENCIES[$INDEX]}
    	gcc -fPIC -Wall ${DEFINES} ${INCLUDES} ${CFLAGS} -g -c ${I} -o ${OBJS[$INDEX]}
    
    _EOF
    else
    cat >>Makefile <<_EOF
    
    ${OBJS[$INDEX]}: ${I} ${DEPENCIES[$INDEX]}
    	gcc -Wall ${DEFINES} ${INCLUDES} ${CFLAGS} -g -c ${I} -o ${OBJS[$INDEX]}
    
    _EOF
    fi
    
    let INDEX=INDEX+1
    
    done #for I in $C_FILES
    
    # add clean, install and uninstall to Makefile
    if [ "${PROJECT_TYPE}" = "lib" ]
    then
    cat >>Makefile <<_EOF
    
    clean:
    	rm -f ${OBJS[@]}
    	rm -f ${OUTPUT_DIR}/lib${LIB_NAME}.so.${LIB_VER}.0
    
    install: ${OUTPUT_DIR}/lib${LIB_NAME}.so.${LIB_VER}.0
    	@./install.sh
    	
    uninstall:
    	@./uninstall.sh
    
    _EOF
    else
    cat >>Makefile <<_EOF
    
    clean:
    	rm -f ${OBJS[@]}
    	rm -f ${OUTPUT_DIR}/${EXE_NAME}
    
    install: ${OUTPUT_DIR}/${EXE_NAME}
    	@./install.sh
    	
    uninstall:
    	@./uninstall.sh
    
    _EOF
    fi
    
    # generate install and uninstall scripts
    [ -f install.sh ] && rm -f install.sh
    [ -f uninstall.sh ] && rm -f uninstall.sh
    touch install.sh
    touch uninstall.sh
    chmod a+x install.sh
    chmod a+x uninstall.sh
    
    if [ "${PROJECT_TYPE}" = "lib" ]
    then
    cat >>install.sh <<_EOF
    #!/bin/sh
    [ -f ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}.0 ] && rm -f ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}.0
    cp ${OUTPUT_DIR}/lib${LIB_NAME}.so.${LIB_VER}.0 ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}.0
    chmod a+r ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}.0
    [ -f ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER} ] && rm -f ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}
    [ -f ${PREFIX}/lib/lib${LIB_NAME}.so ] && rm -f ${PREFIX}/lib/lib${LIB_NAME}.so
    ln -s ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}.0 ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}
    ln -s ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}.0 ${PREFIX}/lib/lib${LIB_NAME}.so
    chmod a+r ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}
    chmod a+r ${PREFIX}/lib/lib${LIB_NAME}.so
    
    _EOF
    cat >>uninstall.sh <<_EOF
    #!/bin/sh
    rm -f ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}.0
    rm -f ${PREFIX}/lib/lib${LIB_NAME}.so.${LIB_VER}
    rm -f ${PREFIX}/lib/lib${LIB_NAME}.so
    
    _EOF
    else
    cat >>install.sh <<_EOF
    #!/bin/sh
    [ -f ${PREFIX}/bin/${EXE_NAME} ] && rm -f ${PREFIX}/bin/${EXE_NAME}
    cp ${OUTPUT_DIR}/${EXE_NAME} ${PREFIX}/bin/${EXE_NAME}
    
    _EOF
    cat >>uninstall.sh <<_EOF
    #!/bin/sh
    rm -f ${PREFIX}/bin/${EXE_NAME}
    
    _EOF
    fi
    
    echo "done."
    
    post_create_makefile
    [ $? -eq 0 ] || exit 1
    
    Pár věcí by šlo určitě vylepšit, ale mně to tak (zatím) vyhovuje. Akorát netuším, jak pobere RET_VAL=${RET_VAL##*/} apod. něco jiného než bash.
    Věřím v jednoho Boha.
    13.8.2006 17:26 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Jen drobnost
    Ještě že my ostatní máme autotools ;-)
    Jardík avatar 13.8.2006 21:08 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Jen drobnost
    <flame>Autotools je úplně naho*no. Vůbec nechápu, jak se něco tak tězce konfigurovatelného (asi sem to napsal blbě) mohlo tak rozšířit. A ještě to navíc vytváří dalších X souborů, které krásně zpřehlední adresář se zdrojovými kódy (i když pořád lepší než cmake se svýma skrytýma adresářema a ještě větším množstvím balastu</flame>
    Věřím v jednoho Boha.
    13.8.2006 21:30 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jen drobnost
    No, když si porovnám přehlednost a udržovatelnost toho, co jsem vám posílal, s tím, co jste tu teď prezentoval… Ale každý svého štěstí strůjcem.
    Luk avatar 13.8.2006 21:31 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Jen drobnost
    Autotools je příšerný moloch. Ale je to jedna z cest, jak zajistit maximální přenositelnost programu.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    13.8.2006 21:40 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jen drobnost
    Se samotným autoconf to není tak hrozné, samozřejmě až na ten stokilový configure u projektů, které mají dohromady 20 KB zdrojáků. :-) Ale automake už mne tak moc neoslovil, s tím už člověk opravdu trochu ztrácí přehled.
    Luk avatar 13.8.2006 21:54 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Jen drobnost
    Už jsme to tu řešili. Ale když se to člověku podaří zkrotit (a třeba napsat primitivní skript, který všechno potřebné obstará), není to zase tak zlé.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    14.8.2006 19:11 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Jen drobnost
    i když pořád lepší než cmake se svýma skrytýma adresářema a ještě větším množstvím balastu
    Možná jsem zkoušel jiný cmake, ale ten můj skryté adresáře netvořil a navíc uměl out-of-source build. Stačí si udělat adresář (třeba build), vejít do něj a pak napsat cmake ... Všechen "bordel" zůstane pouze v tom adresáři a neplete se mezi zdrojovými kódy.
    When your hammer is C++, everything begins to look like a thumb.
    13.8.2006 17:26 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jen drobnost
    Jsem zvědav, jak vás tahle řeholničina bude bavit, až projekt trochu naroste…
    13.8.2006 14:42 xxxxxxxx | skóre: 16 | blog: mrtvy blog | v nebi
    Rozbalit Rozbalit vše Re: Jen drobnost
    sak ty programy nemluvi na tebe, ty zmacknutim toho tlacitka kricis na program, ne obracene ;-):-D
    13.8.2006 15:07 jekub | skóre: 9 | blog: noblog
    Rozbalit Rozbalit vše Re: Jen drobnost
    Zmáčknutím tlačítka na něj zařvu, o tom žádná. Ale než ho zmáčknu, řve on na mě. :-D
    Jardík avatar 13.8.2006 15:39 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: wxDVDShrink
    Jak se nadává tomu tématu těch ikonek? Docela se mi líbí :-)
    Věřím v jednoho Boha.
    13.8.2006 15:44 D-Evil | skóre: 25 | Praha
    Rozbalit Rozbalit vše Re: wxDVDShrink
    Mě se to líbí celý :-) Ačkoliv Gnome rád nemám, v tomhle bych možná byl ochotnej i pracovat, je to přítulně střízlivý :-)
    kozzi avatar 13.8.2006 16:04 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: wxDVDShrink
    ovladaci prvky: Clear looks quicksilver okraj okna: Quiet enviroment ikony: Dropline Nuovo
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.