=====AlphaZ Repository===== AlphaZ system is now designed based on eclipse plug-in projects for better collaboration with CAIRN group in IRISA, France. We currently have two repositories hosting different parts of the system, based on where it was initially developed. Individual directories (with prefix like fr.irisa.cairn or edu.csu.melange) are individual projects in Eclipse, and it is designed to be checked out from Eclipse as projects. ====Structure==== ===CSU Repository=== ------trunk | |---mde // AlphaZ extensions based on MDE | | | |---edu.csu.melange.alphaz.mde // AlphaZ system with MDE | | | |---edu.csu.melange.alphaz.mde.tests // Test project for MDE part | | | |---edu.csu.melange.alphabets //Xtext parser for alphabets | |---edu.csu.melange.alphabets.ui //Xtext generated editor for alphabets | | | |---edu.csu.melange.alphabets.kermeta.visitor.gen // Project used for visitor code generation | | | |---edu.csu.melange.alphaz.commands // projects for scripting interface | |-.commands.edit // Tree editor for Command IF model for command description | |-.commands.editor | |-.commands.scripts.mde // Scripts that are generated completely automatically from commands project | | |----tools // Tools that are shared among projects | |----features // Eclipse features and update site projects for public release | | | |--- edu.csu.melange.alphabets.developer.feature // Group all the plugins needed for Development | |--- edu.csu.melange.alphabets.developer.updatesite // Used for updating the Dev Release Website | |--- edu.csu.melange.alphabets.users.feature // Group all the plugins needed for Public Release | |--- edu.csu.melange.alphabets.users.updatesite // Used for updating the Public Release Website ===INRIA gforge=== The gecos SVN has a large number of eclipse projects. The list below are for projects that are used by AlphaZ and PolyhedralIR, and is not exhaustive. Consult MANIFEST.MF in ''edu.csu.melange.alphaz.mde'' for complete list of required plug-ins. The PolyhedralIR chain. Following plug-ins are gecos/trunk | |---polytools-emf | | |---org.polymodel.scop // Project for representing/manipulation Static Control Loops (SCoPs) |---org.polymodel.scop.cgenerator // C code generation from Scop |---org.polymodel.scop.dtiler // D-Tiling algorithm implemented on Scop |---org.polymodel.algebra // Model for representing Integer (Linear) Algebra, used for library independent representation of polyhedra |---org.polymodel // Model for basic polyhedral objects (Domain/Function) and interface for external polyhedral libraries for manipulating them |---org.polymodel.isl // Implementation of polymodel using ISL | |---fr.irisa.cairn.jnimap.cloog // JNI binding for ClooG (cloog-isl) |---fr.irisa.cairn.jnimap.isl // JNI binding for ISL | // depends on plug-ins under cairn-public/tools/jnimapper for changing bindings to ISL (cairn-public is a separate SVN repository) |---org.polymodel.polyhedralIR // Common IR for Polyhedral programs. Closely follows AlphaZ AST |---org.polymodel.polyhedralIR.codegen // Code generation framework for PolyhedralIR and implemented code generators The following plug-ins are the minimal plug-ins required from Gecos for using CS editor (the scripting interface). Modifying these plug-ins are necessary for extending the scripting interface, but modification must be done with great care. gecos/trunk |---core | |---fr.irisa.r2d2.gecos.framework |---fr.irisa.r2d2.parser.runtime |---fr.irisa.r2d2.gecos.cseditor ====Location==== ===CSU=== Anoymous read only access is available through http. The repository is located at 'http://www.cs.colostate.edu/AlphaZsvn/Development'\\ \\ For developers in CSU, the following location should be used with your CS login\\ ''%%svn+ssh://svn.cs.colostate.edu/s/chopin/e/proj/AlphaZ/AlphaZ_SVNRepositories/Development/%%''\\ \\ ===INRIA=== Anonymous read only access is available for the gecos repository. Follow instructions at \\ https://gforge.inria.fr/scm/?group_id=510 for Gecos SVN and\\ https://gforge.inria.fr/scm/?group_id=2888 for CAIRN-public URLS are (for Anonymous and Developer access): \\ https://scm.gforge.inria.fr/svn/gecos/trunk \\ https://scm.gforge.inria.fr/svn/cairn-public/trunk For developers that seek to develop within ''PolyhedralIR'', write access may be needed.\\ To acquire write access to the gforge repositories: * Create a new account at https://gforge.inria.fr/ (upper right corner) * Once the account is created, log-in and access GeCoS website https://gforge.inria.fr/projects/gecos * Request to join the group from the link at the bottom of list of developers ====Common Problems==== You may have some error connecting to the repository through eclipse * When your connection gets lost while trying to connect: * Go to Preferences->Team->SVN and change the SVN interface to SVNKit(Pure Java) and try again. * The default SVN interface uses JNI bindings and it may not work depending on the machine. Pure Java version should. ====External Plug-ins==== For current version of AlphaZ following features from external providers are required: * Starting Point: Eclipse 3.7.1 with Modeling Tools installed * From Indigo Update Site (http://download.eclipse.org/releases/indigo), under Modeling category: * MWE 2 language SDK (2.0.1) * MWE 2 runtime SDK (2.0.1) * MWE runtime SDK (1.1.1) * Xpand SDK (2.0.1) * Xtext SDK (2.0.1) * From itemis Update Site (http://download.itemis.com/updates/milestones): * Xtext Antlr Runtime (2.0.0) * Xtext Antlr SDK (2.0.0) * From GeCoS update site, under Gecos core category (http://gecos.gforge.inria.fr/fullupdates/stable/): * Gecos Framework Feature (1.0.0) * Optionally, install SVN support for eclipse to access source codes in the repositories